From f3874e90706692094f0f22fca465923143e23c7e Mon Sep 17 00:00:00 2001 From: brother7 <7brother7@gmail.com> Date: Tue, 1 Sep 2026 01:15:05 +0800 Subject: [PATCH] docs(web-search): record MLW-01 integration --- ...-web-search-client-integration-7d2f5b94.md | 12 +- ...901-web-search-mlw01-admission-b7d5f3a2.md | 113 ------------------ 2 files changed, 10 insertions(+), 115 deletions(-) delete mode 100644 .project-docs/30-worklog/tasks/20260901-web-search-mlw01-admission-b7d5f3a2.md diff --git a/.project-docs/30-worklog/tasks/20260831-web-search-client-integration-7d2f5b94.md b/.project-docs/30-worklog/tasks/20260831-web-search-client-integration-7d2f5b94.md index e9e1e0f..dcc0a04 100644 --- a/.project-docs/30-worklog/tasks/20260831-web-search-client-integration-7d2f5b94.md +++ b/.project-docs/30-worklog/tasks/20260831-web-search-client-integration-7d2f5b94.md @@ -27,16 +27,24 @@ ## Outcome -- Coordinator gate and MLW-00 adoption complete. Current frontier is exact `0a86ec825a5803bf7e037d3b23c39be23238c43d`; MLW-01 is correctly blocked on WSW-03 DTO freeze. +- 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. ## 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. ## Follow-ups -- Start MLW-01 only after the Server coordinator returns the WSW-03 exact DTO/fault handoff. +- Start MLW-02 from the clean post-MLW-01 coordinator frontier. Keep MLW-03 composition, Renderer, Pi worker, and package-proof ownership closed until MLW-02 is integrated. - Keep the live OpenAI XWS-01 group and production activation closed pending explicit external inputs and user authorization. ## Promotion Candidates diff --git a/.project-docs/30-worklog/tasks/20260901-web-search-mlw01-admission-b7d5f3a2.md b/.project-docs/30-worklog/tasks/20260901-web-search-mlw01-admission-b7d5f3a2.md deleted file mode 100644 index cf1f226..0000000 --- a/.project-docs/30-worklog/tasks/20260901-web-search-mlw01-admission-b7d5f3a2.md +++ /dev/null @@ -1,113 +0,0 @@ -# Task: Implement MLW-01 shared hosted admission resolver - -## Identity - -- Task ID: 20260901-web-search-mlw01-admission-b7d5f3a2 -- Mode: Feature -- Branch: codex/20260901-web-search-mlw01-admission-b7d5f3a2-web-search-mlw01-admission -- Worktree: D:\Datas\OthersProjects\makelore-web-search-mlw01-admission-b7d5f3a2 -- Base commit: c4db68767fcd1916e4441ab0e2c2504210f75e83 -- Owner: web-search-mlw01-implementer -- Status: Ready for Integration - -## Scope - -- Implement MLW-01 shared hosted admission resolution from the exact client - frontier `c4db68767fcd1916e4441ab0e2c2504210f75e83`. -- Add `electron/coding-plugins/hosted-admission.ts` as the single shared, - provider-neutral resolver. It validates a trusted worker snapshot against - the Package Store, MakeLore version, Marketplace channel resolution and the - current account admission, returning only exact `releaseId` and - `releaseAdmissionId` or a typed failure. -- Refactor only the admission portion of - `electron/coding-plugins/adapters/game-resource.ts` to consume the helper; - preserve its existing provider, payload, confirmation, replay, and result - behavior. -- Add seam tests in `tests/unit/hosted-admission.test.ts` and the relevant - admission regression coverage in - `tests/unit/game-resource-plugin-adapter.test.ts`. -- Do not implement Web Search client/adapter, composition, Renderer, Pi - worker, Package Store/effective resolver, Server, or MLW-02/MLW-03 work. - -## Intent And Constraints - -- Project Context Loaded: client AGENTS.md, the complete - `maintain-project-docs` skill, TDD and implement-spec instructions, required - project-memory entry points, the MLW-01 implementation ticket, and the - reviewed Web Search design/implementation sections were read before coding. -- Concurrent Task Gate: Passed. Task-context owner, isolated worktree, branch, - owner, mode, and exact base match; the client coordinator and user root - worktrees remain untouched. -- Planning Gate: Passed. The prior broad Web Search feature/coordinator - records were inspected read-only. Their old `0a86ec8...` base and broad - coordination scope overlap by topic, but the current coordinator explicitly - owns this isolated MLW-01 ticket from the frozen DTO frontier; no unresolved - semantic conflict remains. -- The helper accepts only code-owned plugin identity, trusted worker snapshot, - Package Store, Marketplace client, and MakeLore version. It does not accept - provider/config, payload, billing, or HTTP-route inputs and sends no business - request of its own. -- Use TDD red -> green vertical slices and public seams. Every source change - stays within the five product/test paths above plus this task record. One - source commit with this task record included, clean worktree, and - `READY_FOR_INTEGRATION` handoff are required. No push, PR, deploy, publish, - or real Provider call. -- Project Context Loaded: - - Task ID: `20260901-web-search-mlw01-admission-b7d5f3a2` - - Mode: Feature - - Branch: `codex/20260901-web-search-mlw01-admission-b7d5f3a2-web-search-mlw01-admission` - - Worktree: `D:\Datas\OthersProjects\makelore-web-search-mlw01-admission-b7d5f3a2` - - Base commit: `c4db68767fcd1916e4441ab0e2c2504210f75e83` - - Other active local tasks: old Web Search feature/coordinator records and - unrelated historical review records; no other task owns the files in this - ticket. - - Overlap assessment: topic overlap with the old Web Search coordinator is - resolved by current ticket ownership and exact-base isolation; no code-path - or semantic overlap is left within this ticket's owned files. -- Planned slices: (1) resolver contract and mismatch tests; (2) minimal - resolver implementation; (3) Game Resource seam migration and regression; - (4) focused/adjacent/typecheck/lint/doc gates; (5) one source commit and - clean handoff. - -## Outcome - -- Implemented the provider-neutral `MarketplaceHostedAdmissionResolver` and - migrated Game Resource's admission seam to use it. A worker must carry a - frozen release; the resolver reads that exact installed release, resolves the - current account admission through the selected channel, and returns only the - exact release/admission IDs. Release, channel, action, digest, size, request, - and account mismatches fail with typed bounded errors. No current-release - fallback, provider/config, payload, billing, HTTP, Web Search, or renderer - behavior was added. -- The Game Resource adapter preserves its existing client and tool behavior, - while missing or stale hosted admission now fails closed through the shared - resolver. The only product/test paths changed are the five paths listed in - Scope; this task record is the sole project-doc change. - -## Verification - -- TDD red: the new resolver suite initially collected zero tests because the - new module was absent (expected module-not-found); no product module existed - before the red checkpoint. -- TDD green: hosted-admission and Game Resource admission suites passed 12/12. -- `pnpm run typecheck` passed. -- Adjacent coding-plugin/Game Resource suite passed 74/74 across 6 files. -- Full `pnpm test` passed: 212 files, 1,728 tests, 2 skipped; pressure suite - passed 1/1. `pnpm run lint:check` passed with 0 errors and 5 pre-existing - warnings outside this task (`Home` hook dependency and `Makelore` fast-refresh - exports). Owned-file ESLint and compile checks passed. -- Worktree diff/doc gates are being finalized before the single source commit; - no real provider call, publish, deployment, or production activation was - attempted. - -## Follow-ups - -- Coordinator must cherry-pick the single source commit from this exact base, - then run its repository-local integration and fixed-range review gates. -- Real PostgreSQL, live OpenAI, official signing-key, provider-secret, and - production-activation gates remain outside this client ticket and HOLD as - specified by the parent Web Search rollout. - -## Promotion Candidates - -- None recorded.