docs: record project-wide scaffold activation
This commit is contained in:
@@ -4,6 +4,19 @@ This file is the integrated default-branch snapshot. Feature tasks record progre
|
||||
|
||||
## Integrated Through
|
||||
|
||||
- Project Scaffold project-wide activation source
|
||||
`300ac89a81409440aac84ff45b1d9ca2fa186629` from task
|
||||
`20260905-project-plugin-scope-7c4e9a21` is integrated onto local `main` as
|
||||
`6710527e8f7150a6c4997d566a380454e33f455e`. The code-owned
|
||||
`makelore.project-scaffold` remains Account-acquired and project-enabled, but no longer
|
||||
has an Agent-assignment gate or partner-assignment action. Main now materializes its
|
||||
complete Skill set for every parent Agent in the enabled project; child Agents remain
|
||||
empty, active generations keep their existing freeze boundary, and all other Plugins
|
||||
retain their assignment semantics. Source verification passed 45 focused and 87
|
||||
adjacent tests, typecheck, lint with 0 errors/5 unchanged warnings, pressure, and all
|
||||
Vite targets. One unrelated two-second Pi real-process timing assertion failed in the
|
||||
ordinary full run and passed 6/6 in isolation. A rebuilt/installed-client smoke remains
|
||||
pending; local source integration does not replace an already installed binary.
|
||||
- Unified Plugin workspace bundled-delivery fix source
|
||||
`6bd9287c879dca93da11e17533f84e3535fc656a` from task
|
||||
`20260905-plugin-download-action-6c8e4a21` is integrated onto local `main` as
|
||||
@@ -36,8 +49,10 @@ This file is the integrated default-branch snapshot. Feature tasks record progre
|
||||
install, build, upload, submit, or approve. Its `.mjs` uses the non-overridable
|
||||
application Node exposed as `MAKELORE_NODE_EXECUTABLE` and is executable only because
|
||||
it ships in the fixed signed-client resource root. Downloadable Marketplace artifacts
|
||||
remain text/image-only and reject `.mjs`; acquisition, project enablement, Agent
|
||||
assignment, and immutable bundled Release/Admission remain distinct. Main and Works
|
||||
remain text/image-only and reject `.mjs`; acquisition, project enablement, and
|
||||
immutable bundled Release/Admission remain distinct. Project Scaffold is project-wide
|
||||
after enablement and has no Agent-assignment state; other Plugins retain assignment.
|
||||
Main and Works
|
||||
Square retain build, preflight, artifact,
|
||||
upload, immutable Release, and review authority. Exact integration verification passed
|
||||
the 12-test scaffold suite, 123 focused Vitest tests, typecheck, scoped ESLint, and the
|
||||
@@ -786,4 +801,4 @@ Robot 绑定设备默认先显示“引导配网 / 已有激活码”路径选
|
||||
|
||||
## Last Updated
|
||||
|
||||
2026-09-04
|
||||
2026-09-05
|
||||
|
||||
@@ -1,116 +0,0 @@
|
||||
# Task: Make project-scoped Plugins active without partner assignment
|
||||
|
||||
## Identity
|
||||
|
||||
- Task ID: 20260905-project-plugin-scope-7c4e9a21
|
||||
- Mode: Feature
|
||||
- Branch: codex/20260905-project-plugin-scope-7c4e9a21-project-plugin-scope
|
||||
- Worktree: D:\Datas\OthersProjects\.codex-worktrees\makelore\20260905-project-plugin-scope-7c4e9a21
|
||||
- Base commit: d642d7607c26dee01ef65b4e70dd756465dea16a
|
||||
- Owner: codex-root
|
||||
- Status: Ready for Integration
|
||||
|
||||
## Scope
|
||||
|
||||
- Reproduce whether the code-owned bundled `makelore.project-scaffold` Skill is
|
||||
currently excluded from a parent Agent when the Plugin is acquired and enabled for
|
||||
the project but not explicitly assigned to that Agent.
|
||||
- Change only Project Scaffold activation semantics so project enablement is sufficient
|
||||
for parent-Agent materialization; preserve Account Library acquisition, child-worker
|
||||
emptiness, frozen worker generations, and every other Plugin's assignment behavior.
|
||||
- Remove Project Scaffold's partner-assignment action/status from the unified Plugins
|
||||
workspace and add focused runtime plus Renderer regressions.
|
||||
- Record the accepted user decision as an Integration promotion candidate; this Feature
|
||||
task does not edit canonical architecture, domain, or ADR files.
|
||||
|
||||
## Intent And Constraints
|
||||
|
||||
- Concurrent Task Gate: Passed. The exact owner/worktree/branch/base identity was
|
||||
verified through `task_context.py status --json`; related Plugin download/status
|
||||
tasks are Ready for Integration and have no active writer overlapping this scope.
|
||||
- Planning Gate: Passed after loading the project entry docs, current state, decision
|
||||
index, ADR-008, architecture/data flow/module map, business rules, success criteria,
|
||||
glossary, evidence, reflection, commitments, stale items, and relevant peer records.
|
||||
- Project Context Loaded:
|
||||
- Positioning: MakeLore Code is a Main-owned Pi runtime whose Plugin state is projected
|
||||
through existing Marketplace/project/Agent authorities rather than Renderer-owned
|
||||
lifecycle state.
|
||||
- Current focus: official bundled Project Scaffold delivery and unified `/plugins`
|
||||
presentation are already integrated; the remaining question is activation scope.
|
||||
- Applicable decision: ADR-008 previously required acquisition, project enablement,
|
||||
and Agent assignment. The user's explicit 2026-09-05 decision supersedes only the
|
||||
assignment requirement for Project Scaffold.
|
||||
- Architecture boundaries: effective resolution remains Main-owned; Renderer only
|
||||
projects actions. Parent workers may receive the Skill, child workers remain empty,
|
||||
and active workers keep frozen resources until replacement/settlement.
|
||||
- Current state: `makelore.project-scaffold` ships in the signed client and has no
|
||||
device download path; Account acquisition and project enablement remain distinct.
|
||||
- Known risk: hiding the UI assignment action without changing the effective resolver
|
||||
would leave the Skill unusable; broadening all Plugin Skills would silently alter
|
||||
unrelated assignment semantics.
|
||||
- Relevant commitment: final packaged Project Scaffold activation still requires a
|
||||
rebuilt client and installed-client smoke; workspace tests do not prove that step.
|
||||
- Relevant peers: the bundled-status integration and device-action-gap tasks only
|
||||
correct delivery presentation/package evidence; neither changes activation scope.
|
||||
- TDD boundary: first assert the public effective-resolver and Plugins-page behavior at
|
||||
acquired + project-enabled + unassigned state, then implement the narrowest shared
|
||||
activation-scope rule that makes those assertions pass.
|
||||
- Do not modify the occupied client root, Server, Marketplace contracts, Package Store,
|
||||
billing, hosted execution, local Device Packages, or unrelated Plugin assignments.
|
||||
|
||||
## Outcome
|
||||
|
||||
- Confirmed the defect at the Main-owned effective-resolver seam: an acquired,
|
||||
project-enabled Project Scaffold Plugin with no Agent assignment was rejected as
|
||||
`skill_unassigned`, so removing only the Renderer action would not have activated it.
|
||||
- Added one narrow code-owned project-wide activation invariant for
|
||||
`makelore.project-scaffold`. Its full Skill set now materializes for every parent Agent
|
||||
after Account acquisition and project enablement; disabled projects remain blocked and
|
||||
child Agents remain empty.
|
||||
- Updated the unified Plugins workspace so Project Scaffold no longer offers partner
|
||||
assignment. Cards and details now describe its scope as `随项目启用` / `生效范围`.
|
||||
- Preserved existing assignment behavior for Game Resource, Data Service, Marketplace,
|
||||
and local Plugins. No manifest schema, server contract, Package Store, billing, or
|
||||
worker-lifecycle authority was added.
|
||||
|
||||
## Verification
|
||||
|
||||
- TDD RED: the focused resolver/model/page slice produced 3 expected failures and 42
|
||||
passes: Project Scaffold returned `skill_unassigned`, the assignment command remained,
|
||||
and the project-wide scope copy was absent.
|
||||
- Focused GREEN: 3 files / 45 tests passed.
|
||||
- Adjacent Plugin/runtime regression: 12 files / 87 tests passed, including effective
|
||||
resolution, composition, lifecycle, manifest/routes, Pi resource/worker opening,
|
||||
Project Scaffold, and unified Plugins projection/controller/query/page behavior.
|
||||
- `corepack pnpm run typecheck`: passed.
|
||||
- Scoped ESLint: passed. Full `corepack pnpm run lint:check`: 0 errors and 5 unchanged
|
||||
warnings in untouched Home/Makelore files.
|
||||
- Full regular unit suite: 225 files passed and 1 unrelated real-process timing test
|
||||
failed (`pi-agent-server-process-real`, 2630 ms against a 2000 ms threshold); 1888 tests
|
||||
passed and 2 skipped. The exact failed file then passed in isolation, 6/6.
|
||||
- Isolated pressure suite: 1/1 passed.
|
||||
- `corepack pnpm run build:vite`: Renderer, Main, Preload, and utility builds passed with
|
||||
existing Browserslist/import/chunk warnings.
|
||||
- `git diff --check`: passed.
|
||||
|
||||
## Follow-ups
|
||||
|
||||
- The Integration task must promote the Project Scaffold activation rule into ADR-008,
|
||||
module map, data flow, and business rules, then rebuild/install the client and smoke-test
|
||||
an acquired + project-enabled + unassigned parent Agent. Workspace tests do not prove
|
||||
the installed-client generation was replaced.
|
||||
|
||||
## Promotion Candidates
|
||||
|
||||
- Update ADR-008, module map, data flow, and business rules during Integration so
|
||||
`makelore.project-scaffold` is documented as account-acquired + project-enabled and
|
||||
automatically available to parent Agents, with no partner-assignment state.
|
||||
- Evidence: focused resolver RED reproduced `skill_unassigned`; the corrected focused
|
||||
and adjacent suites pass while Game Resource retains `open_agent_assignment`.
|
||||
- Future impact: Plugin activation-scope changes must update the code-owned scope
|
||||
predicate and both Main/Renderer regressions; Project Scaffold assignments already
|
||||
stored in project data become inert but may remain preserved.
|
||||
- Semantic conflict: supersedes only ADR-008's assignment requirement for Project
|
||||
Scaffold, not the general assignment model for other Plugins.
|
||||
- Human confirmation required: No; the user explicitly chose project-level activation
|
||||
on 2026-09-05.
|
||||
@@ -0,0 +1,105 @@
|
||||
# Task: Integrate project-wide Project Scaffold activation
|
||||
|
||||
## Identity
|
||||
|
||||
- Task ID: 20260905-project-plugin-scope-integration-4d8a2c71
|
||||
- Mode: Integration
|
||||
- Branch: main
|
||||
- Worktree: D:\Datas\OthersProjects\makelore
|
||||
- Base commit: d642d7607c26dee01ef65b4e70dd756465dea16a
|
||||
- Owner: codex-root
|
||||
- Status: Ready for Integration
|
||||
|
||||
## Scope
|
||||
|
||||
- Integrate reviewed source commit `300ac89a81409440aac84ff45b1d9ca2fa186629`
|
||||
onto local client `main` from exact base
|
||||
`d642d7607c26dee01ef65b4e70dd756465dea16a`.
|
||||
- Promote the accepted Project Scaffold activation exception into canonical project
|
||||
memory: Account acquisition and project enablement remain required, but explicit
|
||||
partner assignment is not; all parent Agents in the enabled project receive the
|
||||
Skill and child Agents remain empty.
|
||||
- Preserve every other Plugin's assignment behavior and the three pre-existing
|
||||
untracked task records in the root worktree byte-for-byte.
|
||||
|
||||
## Intent And Constraints
|
||||
|
||||
- Concurrent Task Gate: Passed. The completed prior Integration owner was released
|
||||
only after confirming the root had no tracked changes and exactly the three
|
||||
previously adopted untracked task records. This task then acquired `main` from the
|
||||
exact base using `--adopt-existing`; no active task owns the same product paths or
|
||||
semantics.
|
||||
- Planning Gate: Passed after loading the entry memory, current state, decision index,
|
||||
ADR-008, architecture overview/module map/data flow, business rules, success
|
||||
criteria, glossary, evidence, reflection, commitments, stale items, the source task
|
||||
record, and the prior Integration record.
|
||||
- Project Context Loaded:
|
||||
- Positioning: MakeLore Code uses Electron Main as the Plugin/runtime authority;
|
||||
Renderer pages project state and issue existing commands rather than owning a
|
||||
second lifecycle model.
|
||||
- Current state: Project Scaffold is a code-owned bundled Skill delivered with the
|
||||
client, but the prior effective resolver still required Agent assignment after
|
||||
Account acquisition and project enablement.
|
||||
- Applicable decision: the user's explicit 2026-09-05 decision amends only
|
||||
`makelore.project-scaffold` to be project-wide. It does not remove assignment from
|
||||
Game Resource, Data Service, local packages, or other Marketplace Plugins.
|
||||
- Architecture boundary: parent workers receive the Scaffold Skill from the
|
||||
Main-owned effective resolver; child workers remain empty and running generations
|
||||
stay frozen until their normal replacement/settlement boundary.
|
||||
- Known risk: updating only the UI would leave runtime materialization blocked;
|
||||
generalizing the exception would silently change unrelated Plugin authorization.
|
||||
- Relevant commitment: source/build verification does not prove that an already
|
||||
installed client has been rebuilt and replaced; that remains a release smoke step.
|
||||
- Apply the source with `git cherry-pick --no-commit`, adopt its exact task record before
|
||||
committing, and verify the source/product trees. This follows the recorded
|
||||
Integration reflection and avoids committing an unowned source record.
|
||||
- Do not push, publish, package, deploy, reset, stash, clean, or modify the three
|
||||
pre-existing untracked task records.
|
||||
|
||||
## Outcome
|
||||
|
||||
- Applied reviewed source `300ac89a81409440aac84ff45b1d9ca2fa186629`
|
||||
from its exact parent with `git cherry-pick --no-commit`, adopted the unchanged
|
||||
source task record, and committed the product change on local `main` as
|
||||
`6710527e8f7150a6c4997d566a380454e33f455e`.
|
||||
- Confirmed the source and product commit trees are identical at
|
||||
`7391af053cfc30bd4100cc24590c6560297affdd`; the integration introduced no conflict
|
||||
resolution or behavioral delta.
|
||||
- Promoted the accepted project-wide activation rule into ADR-008, the decision index,
|
||||
system overview, module map, data flow, business rules, current state, evidence, and
|
||||
release commitment. General Plugin assignment remains intact; only Project Scaffold
|
||||
has no assignment gate.
|
||||
- Removed the duplicate source task record only from the `main` documentation
|
||||
checkpoint. The source branch and its task record remain unchanged and auditable.
|
||||
- Preserved the three pre-existing untracked task records byte-for-byte and did not
|
||||
stage, commit, delete, move, or otherwise modify them.
|
||||
|
||||
## Verification
|
||||
|
||||
- Integration-specific checks:
|
||||
- source parent equals integration base `d642d7607c26dee01ef65b4e70dd756465dea16a`;
|
||||
- staged source task record hash matched the source commit before product commit;
|
||||
- source/product Git tree equality passed at
|
||||
`7391af053cfc30bd4100cc24590c6560297affdd`;
|
||||
- `git diff --check` passed for both the product patch and documentation checkpoint;
|
||||
- `check_project_docs.py` passed.
|
||||
- Adopted reviewed source evidence because the root checkout has no installed
|
||||
`node_modules`: TDD RED produced 3 expected failures/42 passes; focused GREEN passed
|
||||
45 tests; adjacent Plugin/runtime regression passed 87 tests; typecheck passed; full
|
||||
lint had 0 errors/5 unchanged warnings; pressure passed 1/1; all Vite targets passed.
|
||||
- Source full regular unit run passed 1,888 tests with 2 skips and one unrelated
|
||||
two-second Pi real-process timing miss; that exact file passed 6/6 in isolation.
|
||||
- Task-aware documentation drift and task-context completion are required after the
|
||||
documentation checkpoint commit and are recorded by the final Integration gate.
|
||||
|
||||
## Follow-ups
|
||||
|
||||
- Rebuild and install a client from this `main`, then smoke-test an Account-acquired,
|
||||
project-enabled, unassigned Project Scaffold with two parent Agents and one child:
|
||||
both parents must see the Skill and the child must remain empty. This is a release
|
||||
acceptance step, not a blocker for the local source merge.
|
||||
|
||||
## Promotion Candidates
|
||||
|
||||
- None. The feature task's confirmed semantic promotion is incorporated in this
|
||||
Integration checkpoint.
|
||||
Reference in New Issue
Block a user