docs(plugins): integrate web search assignment fix

This commit is contained in:
2026-09-01 20:35:46 +08:00
parent adc28db785
commit 697c68974d
3 changed files with 83 additions and 84 deletions

View File

@@ -4,6 +4,19 @@ This file is the integrated default-branch snapshot. Feature tasks record progre
## Integrated Through
- Web Search Agent-assignment catalog fix source
`612794463de1b14fd748202a00115c6f93c7346b` from task
`20260901-web-search-tool-routing-fix-6f9d3b82` is integrated onto local `main`
through product commit `adc28db7855f8b1770f1c1d46af77b7cc88cfa1a` by task
`20260901-web-search-tool-routing-integration-7a4e1c93`. The unscoped partner
Skill picker now lists every project-enabled Plugin Skill before first assignment
and does not invoke runtime Admission resolution; Agent-scoped/runtime projections
still use only the resolver-approved effective subset. This closes the confirmed
circular state where an enabled Web Search Skill was hidden until already assigned,
leaving the actual Pi worker with only `agent_browser`. Focused 45-test, full
1,785-test plus pressure, typecheck, and scoped-lint verification passed. Existing
workers remain frozen; the affected local Agent assignment was corrected separately
and takes effect on a new Conversation.
- Official bundled Plugin client cutover is integrated on local `main` through product
commit `1530ac774091c7083dbff19e0fbd69e929ac8718` by task
`20260901-official-bundled-plugins-client-integration-b8d5f3a2`. Game Resource and

View File

@@ -1,84 +0,0 @@
# Task: Diagnose and fix Web Search tool routing from current main
## Identity
- Task ID: 20260901-web-search-tool-routing-fix-6f9d3b82
- Mode: Feature
- Branch: codex/20260901-web-search-tool-routing-fix-6f9d3b82-web-search-tool-routing-fix
- Worktree: D:\Datas\OthersProjects\makelore-web-search-tool-routing-fix-6f9d3b82
- Base commit: 08099ea1c2ea24efc10c20f878fc25a557ea9d90
- Owner: codex-root
- Status: Ready for Integration
## Scope
- Reproduce the reported installed-client behavior where an explicit request to use
Web Search invokes `agent_browser` instead of `makelore_web_search`.
- Trace the exact current package version, project Plugin selection, Agent Skill
assignment, backend admission, effective frozen worker snapshot, and Pi CLI tool
catalog without changing server policy or production data.
- If a client defect is confirmed, add a regression at the narrow owning seam,
implement the smallest fix, and verify the affected packaged/runtime path.
## Intent And Constraints
- Concurrent Task Gate: Passed in the isolated worktree from exact local
`main` base `08099ea1c2ea24efc10c20f878fc25a557ea9d90`. The two unrelated
untracked packaging records in the user root remain untouched.
- Planning Gate: Passed after loading the project memory entry points, current
architecture/data-flow/domain rules, ADR-006, evidence/commitments, the prior
Web Search coordinator scope, and the two local 1.2.2/1.2.3 package records.
- Confirmed product contract: official Web Search is bundled but optional; Account
acquisition, project enablement, Agent assignment, current Admission, and the
frozen parent worker snapshot are separate gates. Child workers receive no hosted
tool.
- Diagnosis must begin with a deterministic loop that observes the actual worker
tool catalog. A prompt-only change is not acceptable unless the tool is proven
present and the routing failure remains.
- Preserve the current project, conversations, user data, credentials, unrelated
task records, and production server state. No push, deploy, publication, paid
Provider call, or destructive cleanup is in scope.
## Outcome
- Confirmed the installed client is MakeLore 1.2.3 and the affected project has
`makelore.web-search` enabled, but Agent `cc` is assigned only `agent-browser`.
The latest persisted Pi session consequently exposes only `agent_browser`; this
is not a model-choice conflict between two available tools.
- Reproduced the client bootstrap defect at the Product Host seam: the unscoped
Agent assignment catalog called the effective resolver with an empty assignment,
then treated `effectiveSkillIds=[]` as the plugin availability set. An enabled
Web Search Skill therefore disappeared until it had already been assigned.
- Changed the unscoped catalog to use project-enabled plugin IDs directly and to
avoid runtime/admission resolution. Agent-scoped projections still use the
resolver-approved effective subset, so the fix does not materialize Web Search
into a worker before explicit Agent assignment.
- Added a regression proving an enabled/unassigned Web Search Skill is available
in the assignment catalog, while the same Skill remains unavailable in Agent
`builder`'s scoped projection until assigned.
- Applied the requested operational correction to the affected project only:
Agent `cc` now has `agent-browser` and `makelore-web-search`; the existing
`makelore.web-search` project enablement remains unchanged.
## Verification
- TDD RED: `pnpm exec vitest run tests/unit/coding-product-services.test.ts` =
1 failed / 10 passed; the enabled Web Search Skill was absent.
- Focused GREEN: Product Host, effective resolver, capability registry, Pi resource
loader, and composition = 5 files / 45 tests passed.
- Full client suite on the final implementation = 215 files / 1785 passed / 2
skipped, plus pressure 1/1 passed.
- `pnpm run typecheck` passed. Scoped ESLint passed with zero findings.
- The affected project JSON parses successfully and reports Agent `cc` Skills
`agent-browser,makelore-web-search` with Web Search project enablement `true`.
## Follow-ups
- The currently running 1.2.3 process does not contain the assignment-catalog UI
fix. The affected Agent assignment is already corrected on disk; start a new
conversation so a new frozen parent worker reads it and includes
`makelore_web_search`. Existing workers intentionally remain frozen.
## Promotion Candidates
- None recorded.

View File

@@ -0,0 +1,70 @@
# Task: Integrate Web Search Agent assignment catalog fix
## Identity
- Task ID: 20260901-web-search-tool-routing-integration-7a4e1c93
- Mode: Integration
- Branch: codex/20260901-web-search-tool-routing-integration-7a4e1c93
- Worktree: D:\Datas\OthersProjects\makelore-web-search-tool-routing-integration-7a4e1c93
- Base commit: 08099ea1c2ea24efc10c20f878fc25a557ea9d90
- Owner: codex-root
- Status: Ready for Integration
## Scope
- Integrate sole source commit `612794463de1b14fd748202a00115c6f93c7346b`
from completed feature task `20260901-web-search-tool-routing-fix-6f9d3b82`
onto exact local `main` base `08099ea1c2ea24efc10c20f878fc25a557ea9d90`.
- Preserve the source task record as read-only evidence, update only this integration
task record and the canonical integrated-state ledger, and fast-forward local
`main` after verification.
## Intent And Constraints
- Concurrent Task Gate: Passed in a dedicated integration worktree/branch from the
exact current `main`; the repository integration lock is held by this task.
- Planning Gate: Passed after loading the required memory entry points, current
state, decision index, architecture/data flow/domain rules, evidence, reflection,
commitments and stale items, plus the completed source task record.
- Semantic comparison found no conflict: the fix preserves the accepted separation
between project enablement, Agent assignment, and effective frozen worker state.
It only restores enabled plugin Skills to the unscoped assignment catalog.
- Source product/test/task files are integrated as one exact commit. No server,
policy, billing, Provider, package version, deployment, publication, or current
worker hot-swap is in scope. The two unrelated untracked packaging records in the
user root must remain untouched.
## Outcome
- Cherry-picked the sole completed source commit as product commit
`adc28db7855f8b1770f1c1d46af77b7cc88cfa1a`; its product/test files are
unchanged. The duplicate foreign source task record is retained on the source
branch and omitted from this integration checkpoint as required by the
project-document ownership boundary.
- Integrated the assignment-catalog correction without changing the accepted
project-enable → Agent-assignment → effective-worker gates. Unscoped Skill
discovery now uses project-enabled Plugin IDs and avoids Admission resolution;
Agent-scoped discovery remains resolver-authoritative.
- Updated the canonical current-state ledger with the source/product commits,
verified behavior, and existing-worker freeze boundary. No promotion candidate,
semantic conflict, or ADR/architecture change was required.
## Verification
- Adopted the exact-tree source evidence: focused 5 files / 45 tests, full 215 files /
1,785 passed / 2 skipped plus pressure 1/1, TypeScript, and scoped ESLint passed.
- Re-ran the integrated tree's focused 5 files / 45 tests and `pnpm run typecheck`;
both passed.
- Exact product/test diff equality, exact parent base, `git diff --check`, task-aware
project-doc drift, clean-worktree, and local `main` fast-forward are final gates.
## Follow-ups
- The running installed 1.2.3 binary predates the assignment-picker source fix.
The reported project's exact Agent assignment has been corrected separately;
a new Conversation is required because existing Pi workers intentionally freeze
their Skill/tool snapshot.
## Promotion Candidates
- None recorded.