Why: the adoption PR is reviewed and its candidate HEAD passed CI; the card closure is folded into the PR so no separate close PR is needed.
Evidence: CI GATE on 18f617d4e8cd63d172a5ab9519271831beb546db; independent Review REPLAY (cursor-agent-stable --mode ask 全新只读会话(fresh_session=true,session id not-observable;codex/pi 因 Token Plan 429 不可用)VERDICT: APPROVE,无阻塞项).
Impact: task card only (moved to .task/archive/).
Refs: https://git-home.u1680832.nyat.app:30319/weichen/Agent-System-Core/pulls/35
Why: Phase 6 requires one positive executor run and the negative cases (missing config, bad receipt, out-of-scope path, unknown side effect) before adoption becomes active.
Evidence: .task/evidence/governance-adoption/ (SELF): governance check, agent-exec validate and adoption cases; this commit passed the generated pre-commit hook (admit).
Impact: task card and evidence logs only.
Refs: .task/feature-governance-adoption.md
Why: Phase 6 requires one positive executor run and the negative cases (missing config, bad receipt, out-of-scope path, unknown side effect) before adoption becomes active.
Evidence: .task/evidence/governance-adoption/ (SELF): governance check all ok; agent-exec validate ok; adoption cases ALL PASS. The generated pre-commit hook refused this commit because scripts/dm resolves the DM checkout through the hook's GIT_DIR; fixed in Development-Manager before this repository re-pins.
Impact: task card and evidence logs only.
Refs: .task/feature-governance-adoption.md
Co-authored-by: Cursor <cursoragent@cursor.com>
Why: development-governance-v2 Phase 6 adopts the shared governance kit in every formal repository; the executor needs a valid AGENT-EXECUTION.md before any implementation unit can run.
Evidence: generated by dm-server governance init at Development-Manager 42e675fec8e0069646319fcd298e61d03d8cbfd5; dm-server agent-exec validate passes.
Impact: configuration and task card only; no code or CI change yet.
Refs: Agent-System-Dev docs/superpowers/plans/2026-10-16-development-governance-v2-master.md
Why: Reconcile interrupted dispatch without spending another model request.
Evidence: Core package tests pass locally; integration exercises acceptance and recovery.
Impact: Add one optional persisted run identifier.
Refs: feature/workbench-flow-completion
Why: Retain full results and exact answers across persistence and reload.
Evidence: go test ./... passed locally, including full-tail and legacy JSON coverage.
Impact: Add contract roundtrip tests and a guarded dispatching state.
Refs: feature/workbench-flow-completion
Why: Keep background results and optional decisions outside the foreground conversation lock.
Evidence: Core package tests and combination checks are recorded in the Dev task.
Impact: Add an optional backward-compatible work card payload without a database migration.
Refs: feature/workbench-flow-completion
Why: Generated mirrors gained unused named exports and tripped the frontend knip ratchet.
Evidence: Exact Dev combination failed at 53 unused exports over 52 baseline; Core Go tests passed after narrowing the TS export surface.
Impact: Preserve WorkFindingCandidate.evidence shape while avoiding unused exported helper names.
Refs: Dev task feature/fast-slow-u2-u3-plan; failed combo receipt 275bebe2
Why: U3 needs bounded, source-indexed premises before the host can judge numeric and membership claims.
Evidence: TestWorkCheckpointEvidenceModesAndBounds failed on missing types, then go test ./... -count=1 and git diff --check passed.
Impact: Extend only the candidate wire contract; persisted task snapshots and display kinds stay unchanged.
Refs: Dev task feature/fast-slow-u2-u3-plan; r0.3 evidence implementation plan Task 1
Why: Older clients must see the same coverage limits as structured task cards.
Evidence: Core suite and composition checks follow this projection update.
Impact: Projects optional limitations into existing list nodes.
Refs: fast-slow-u2-u3 Task 6
Why: A completed run can still lack readable or fully provided source material.
Evidence: Composition validation follows the backend and UI consumers.
Impact: Adds optional host-owned limitations without changing candidate authority.
Refs: fast-slow-u2-u3 Tasks 4 through 6
Why: preserve scoped work findings and truthful activity across reloads.
Evidence: task JSON loss and validation/state regressions RED to GREEN; complete Core suite.
Impact: optional card/document wire fields and bounded candidate validation; old Body remains supported.
Refs: fast-slow U2/U3 Task1, R03 R05 R09 R17
Why: Freeze L1 skeleton KV keys and honest no-findings placeholder
so Backend can stop stuffing raw task text into progress cards.
Evidence: go test ./... -count=1
Impact: New TaskSummaryView helpers; findings[] still deferred to U2/U3.
Refs: fast-slow-channel-display-u1-plan W1
Co-authored-by: Cursor <cursoragent@cursor.com>
Why: U4 frontend store switches on the event type; the TS union mirrors
the Go EvSurfaceUpdated constant (Core #25) and must include it or the
frontend typecheck rejects the case.
Evidence: go test unchanged (TS-only); frontend tsc in the Dev
workspace after mirror sync.
Impact: Type-only additive.
Refs: Core PR #25; Dev task feature/generative-ui-u4
Why: U4 needs the frontend to render saved surfaces; the Go contract
(Core #25) gains its TypeScript mirror in the single authority so make
contracts regenerates the frontend and UI copies.
Evidence: Mirror regeneration and combined make test in the Dev
workspace after re-pinning.
Impact: Type-only additive change.
Refs: Core PR #25; Dev task feature/generative-ui-u4
Why: PR #25 added the fields to the Go UINode; ts/types.ts is the
single authority that make contracts mirrors into the frontend and UI
repos, so the fields must originate here or the sync reverts manual
mirror edits (CI build caught exactly that).
Evidence: Regenerated mirrors and combined make test run in the Dev
workspace after re-pinning.
Impact: Type-only additive change.
Refs: Core PR #25; Dev task feature/generative-ui-u2
Why: The Generative UI proposal U2 needs a versioned, host-validated
envelope for agent-authored pages before any backend surface exists:
identity/compat/version envelopes, stable per-node ids with source
annotations, catalog-driven spec validation, and the surface.updated
projection event.
Evidence: go vet + go test in this repo (table tests cover a realistic
valid spec from the U1 trial shape, violations, limits, and old-payload
backward compatibility).
Impact: Additive only - UINode gains optional id/source (omitempty),
old card/form paths unaffected; no existing symbol changes.
Refs: Documents proposal 2026-10-10-generative-ui-plugin.md (r2, U2/U1
sections); Dev task feature/generative-ui-u2
Why: frontend and ui contracts.ts are generated from this file by
make contracts; editing the generated copies directly gets reverted by
the next codegen run (the Dev CI build step proves it regenerates).
Evidence: GOWORK=off go test green; the shape matches the Go Usage
fields added earlier.
Impact: additive to the contract mirror.
Refs: Agent-System-Core#2, Agent-System-Frontend#48
Why: the loop now emits Last* and cache token usage; the product run
record needs the same fields for display and accounting (additive JSON,
old records deserialize as zero values).
Evidence: GOWORK=off go build + go test green.
Impact: additive only.
Refs: Agent-Native#35, N3 plan WP6
Why: project facts pointed to a nonexistent Makefile and retained obsolete skeleton status.
Evidence: SELF go test ./... and git diff --check completed in this component worktree.
Impact: documentation only; does not advance the Dev Core gitlink or change public contracts.
Refs: Agent-System-Dev feature/governance-reliability audit remediation
Why: A separately exported ContextSection is unused inside the UI package and pushes the knip ratchet over its baseline.
Evidence: UI knip reported 56 unused exports against baseline 55. The section shape stays on ContextObservation.sections.
Impact: Generated frontend and UI contracts drop the extra export. JSON field names are unchanged.
Refs: .task/feature-sillytavern-review.md
Co-authored-by: Cursor <cursoragent@cursor.com>
Why: Labeled secrets, excluded turns, and candidate replies need fields on the shared message contract, and context snapshots need a section breakdown plus a stable prefix hash.
Evidence: go test ./... in agent-system-core. New fields use omitempty, so existing golden JSON stays the same.
Impact: Clients that ignore unknown fields keep working. Assemblers can now mark a message excluded or as one candidate in a group.
Refs: docs/records/2026-10-04-sillytavern-review.md
Why: a fallback chain can answer with a different model than the one that was requested, and usage has to name the model that actually served.
Evidence: go test .
Impact: the field is omitted when empty, so existing usage JSON stays the same.
Refs: feature/durable-rewind
Co-authored-by: Cursor <cursoragent@cursor.com>