78 lines
11 KiB
Markdown
78 lines
11 KiB
Markdown
# Task: Coordinate MakeLore native Web Search client integration
|
|
|
|
## Identity
|
|
|
|
- Task ID: 20260831-web-search-client-integration-7d2f5b94
|
|
- Mode: Integration
|
|
- Branch: codex/20260831-web-search-client-integration-7d2f5b94-web-search-client-integration
|
|
- Worktree: D:\Datas\OthersProjects\makelore-web-search-client-integration-7d2f5b94
|
|
- Base commit: 0a86ec825a5803bf7e037d3b23c39be23238c43d
|
|
- Owner: web-search-client-integrator
|
|
- Status: In Progress
|
|
|
|
## Scope
|
|
|
|
- Serialize repository-local integration of MLW-01 through MLW-03 after the Server WSW-03 typed DTO freezes.
|
|
- Validate each isolated source ticket's exact parent, exclusive ownership, single source commit, clean state, and verification before cherry-picking only its final commit.
|
|
- Maintain the client integration ledger, fixed review range, review/remediation frontier, package proof, and fake-provider XWS-01 evidence without changing the user root worktree.
|
|
|
|
## Intent And Constraints
|
|
|
|
- Project Context Loaded: client `AGENTS.md`, complete `maintain-project-docs` skill, project-memory entry points/relevant architecture-domain-evidence records, complete reviewed Web Search design/spec, MLW-00 bootstrap record, and relevant Marketplace/Game Resource task history were read before planning.
|
|
- Concurrent Task Gate: Passed. Task-context owner fields exactly match this Integration task/worktree/branch/base and this task holds the repository integration lock. The MLW-00 feature bootstrap remains read-only at its isolated checkpoint; no active client owner has an evidenced overlapping Web Search scope.
|
|
- Planning Gate: Passed. Exact integration base is clean `0a86ec825a5803bf7e037d3b23c39be23238c43d`; MLW-00 focused baseline passed `7 files / 84 tests` across Marketplace client, effective resolver, Game Resource client/adapter, capability registry, Pi resource loader, and artifact proof.
|
|
- Reuse the existing signed Package Store, effective parent snapshot, hosted admission, Game Resource client/adapter, capability registry, Pi envelope/lifecycle, conversation timeline, and artifact proof; do not create a parallel hosted runtime.
|
|
- MLW-01 -> MLW-02 -> MLW-03, but MLW-01 remains blocked until WSW-03 freezes the Server DTO. Renderer owns no account/auth/provider/URL/credential/admission/trust authority.
|
|
- Preserve `submission_unknown` as result-less/non-retryable, result-bearing `pending_review`, and Main-only `receipt_unavailable`; no Web Search-specific settings page, `pi-web-search`, arbitrary Pi extension, generic invoke, push, PR, deploy, publish, or real paid OpenAI call.
|
|
|
|
## Outcome
|
|
|
|
- Coordinator gate and MLW-00 adoption complete. The coordinator ledger checkpoint advanced the implementation frontier from base `0a86ec825a5803bf7e037d3b23c39be23238c43d` to `c4db68767fcd1916e4441ab0e2c2504210f75e83` without product changes.
|
|
- MLW-01 source task `20260901-web-search-mlw01-admission-b7d5f3a2` was integrated from exact frontier `c4db68767fcd1916e4441ab0e2c2504210f75e83` after the Server DTO/fault freeze at `a49c696ebc4213e3d62ece780961efbe17576f8e`.
|
|
- Source commit: `fbeaa8ee8b0a19f240469a289449253034ee3ec3` (sole parent `c4db68767fcd1916e4441ab0e2c2504210f75e83`).
|
|
- Product commit: `1edd75e2465ae8bfbba87d8e077365daee144920`; source and product trees are exact-equal at `b17a16ff1c46706980bd162af3678176b3a93e70` before the repository-local Integration Documentation Gate removes the duplicate foreign task record.
|
|
- Delivered the provider-neutral `MarketplaceHostedAdmissionResolver` and an admission-only Game Resource refactor. The helper resolves exact installed release/admission identity from the trusted frozen worker snapshot, Package Store, selected channel, Marketplace resolve, current account, and MakeLore version; it owns no Provider, payload, billing, route, Web Search client, composition, Renderer, or Pi behavior.
|
|
- The clean source branch retains its complete task record. This coordinator checkpoint removes only the duplicate cherry-picked copy and records integration evidence here.
|
|
- MLW-02 source task `20260901-web-search-mlw02-client-c8e4a2d1` was integrated from exact frontier `f3874e90706692094f0f22fca465923143e23c7e`.
|
|
- Source commit: `94f98e03b9e4e59eb2de07aa9d0e68ec0c74de8e` (sole parent `f3874e90706692094f0f22fca465923143e23c7e`).
|
|
- Product commit: `fc68cf295131d8f73556bef59fdeae61239a649e`; source and product trees are exact-equal at `5c14e92224e8441d18a983dd7099cd6d76f83e85` before this Integration Documentation Gate removes the duplicate foreign task record.
|
|
- Delivered the Main-only closed Web Search client, bounded same-operation reconciliation, code-owned adapter, and the minimal generic billing/conversation/Registry support for `not_started` and Main-only `receipt_unavailable`. The adapter uses the MLW-01 admission helper and trusted project/request identity; no composition, Renderer, Pi, Package Store/effective resolver, Provider authority, or server path changed.
|
|
- Final source review aligned source title/URL bounds with the frozen Server DTO and preserved both MLW-01 typed admission failures. The clean source branch retains its complete task record; integration evidence is consolidated here.
|
|
- MLW-03 source task `20260901-web-search-mlw03-composition-d9f5b3e2` was integrated from exact frontier `68cb2e73beb17d5041198d020aaa7b2884124950`.
|
|
- Source commit: `52f6a0b148403c822a09880467f81416a181b259` (sole parent `68cb2e73beb17d5041198d020aaa7b2884124950`).
|
|
- Product commit: `60e6a8eeb35431b0f1fb569af4d1502683f16317`; source and product trees are exact-equal at `d570c40f2ad315c8a314f831fb4337300ae28fc2` before this Integration Documentation Gate removes the duplicate foreign task record.
|
|
- Delivered production composition registration, the dynamic Web Search parent/child/current-authority proof, a generic closed billing-status timeline projection, package-main-reachable route/receipt proof with Provider-authority exclusion, and current README documentation. No Web Search payload-specific Renderer or static tool allowlist was added.
|
|
- The clean source branch retains its complete task record. This coordinator checkpoint removes only the duplicate cherry-picked copy and records the accepted facts in canonical project memory.
|
|
- REV-01 fixed-range review over `0a86ec825a5803bf7e037d3b23c39be23238c43d...4a1e5d31213191a0102eab9278dd9887ba8738f4` completed with Standards PASS and four actionable Spec findings confined to the `WebSearchClient` response boundary.
|
|
- Standards task `20260901-web-search-rev01-client-standards-c3e9a6f4` reported zero documented-standard or Fowler-smell findings.
|
|
- Spec task `20260901-web-search-rev01-client-spec-d4f1b7a5` identified status-first 429 handling, streamed response bounding, closed response-state/billing invariants, and absolute HTTP(S) no-userinfo source URL validation.
|
|
- The sole client remediation task `20260901-web-search-rev01-client-remediation-e4a7c9b2` was integrated from exact frontier `4a1e5d31213191a0102eab9278dd9887ba8738f4`.
|
|
- Source commit: `7dcfc9b0a951fd96c3d283c9cb0f2118f922c41a` (sole parent `4a1e5d31213191a0102eab9278dd9887ba8738f4`).
|
|
- Product commit: `49de82c4860fd0b377070279b6411237dc6b9564`; source and product trees are exact-equal at `d40e90619406b822485ef2729e373fc4587a42d1` before this Integration Documentation Gate removes the duplicate foreign task record.
|
|
- The remediation is limited to `electron/services/web-search-client.ts` and its focused tests. It makes HTTP 429 non-retryable from status before bounded body parsing, enforces a true streamed 1 MiB bound, closes result/billing/error combinations, and accepts only bounded absolute HTTP(S) source URLs without userinfo.
|
|
- The clean source branch retains its complete task record. This coordinator checkpoint removes only its cherry-picked duplicate and advances the frontier for fresh fixed-range review.
|
|
|
|
## Verification
|
|
|
|
- Task-context status: exact task, Integration mode, owner, worktree, branch, base, and integration lock matched.
|
|
- Adopted MLW-00 baseline: `7 files / 84 tests passed` after reusing same-clean-HEAD dependencies through an ignored worktree-local junction; lockfile and source were unchanged.
|
|
- MLW-01 focused admission/Game Resource suites passed `12/12`; adjacent six-file coding-plugin/Game Resource regression passed `74/74`.
|
|
- MLW-01 full unit suite passed `212 files / 1728 tests`, with two staged-runtime skips; the pressure suite passed `1/1`. Typecheck passed. Full lint passed with zero errors and the five pre-existing Home/Makelore warnings; owned-file lint/compile, diff, project-docs, and document-drift gates passed.
|
|
- The coordinator's optional duplicate focused run stopped before collection because this isolated worktree has no executable `vitest`; no test or product failure occurred and no dependency/source file changed. The Integration Gate instead adopts the clean source's exact-tree test evidence above rather than performing an unrelated dependency installation.
|
|
- MLW-02 final focused suite passed `3 files / 35 tests`; adjacent hosted admission, Game Resource, Registry, conversation, Marketplace-client, and timeline regression passed `11 files / 114 tests`.
|
|
- MLW-02 full unit suite passed `214 files / 1748 tests`, with two staged-runtime skips; pressure passed `1/1`. Typecheck, owned lint, full lint (zero errors and the same five existing warnings), and Vite Renderer/Main/Preload/utility builds passed.
|
|
- MLW-02 diff, project-docs, document-drift, sole-parent, clean-worktree, and `READY_FOR_INTEGRATION` gates passed. No live Provider call or production activation occurred.
|
|
- MLW-03 TDD started with four exact focused failures and finished with 4 files / 40 tests passed; the adjacent Web Search/admission/composition/lifecycle/Pi/timeline/artifact suite passed 10 files / 82 tests.
|
|
- MLW-03 full unit suite passed 214 files / 1,751 tests with two staged-runtime skips; pressure passed 1/1. Typecheck, scoped lint, full lint (zero errors and the unchanged five warnings), Vite builds, Electron Windows 6/6, and target Marketplace/Project Plugins/Skill E2E 4/4 passed.
|
|
- Clean source HEAD Windows packaging and verification passed. `verify:artifact:win` embedded exact commit `52f6a0b148403c822a09880467f81416a181b259`; installer size was 208,252,221 bytes with SHA-256 `2D027DB5BE00336F1EB45D882519F971EB791014A1930C5FBED93FE6B15B6303`. `verify:artifact:pi` passed the real app.asar Web Search route/receipt/provider-authority proof; inherited Pi cross-platform/real-provider waivers remain unchanged.
|
|
- Client remediation TDD recorded eight exact red cases and finished with `16/16` focused tests; adjacent response/admission tests passed `27/27`. The full unit suite passed `1,759` tests with two staged-runtime skips and pressure passed `1/1`; typecheck passed and lint reported zero errors plus the unchanged five warnings. Source diff, documentation, sole-parent, clean-worktree, and `READY_FOR_INTEGRATION` gates passed.
|
|
|
|
## Follow-ups
|
|
|
|
- Run fresh fixed-range Standards and Spec review from client base `0a86ec825a5803bf7e037d3b23c39be23238c43d` through the clean post-remediation documentation frontier. XWS-01 remains closed until both fresh axes and both repositories pass.
|
|
- Keep real PostgreSQL, the live paid OpenAI XWS-01 group, and production activation closed pending their explicit external inputs and user authorization.
|
|
|
|
## Promotion Candidates
|
|
|
|
- None recorded.
|