Why: the owner authorized the agent to create and merge this PR end to end (2026-09-30), and the goal section still said "chore branch" while the implementation uses feature/card-close-*.
Evidence: user instruction quoted verbatim in the authorization field; branch naming per task.sh close.
Impact: task card only.
Refs: task card feature/card-autoclose-r1
Why: 11 merged branches had left their task cards open (bookkeeping debt found on 2026-09-30); closure was manual and never triggered, so card status rotted after each merge.
Evidence: dogfood run of `task.sh close --fold` closed and archived the 11 cards (previous commit); temp-repo matrix 33/33 PASS covering detection, pending-branch idempotence, dirty/no-fold refusals, post-merge auto-close on merge-type pulls, worktree guard, and the full lifecycle (closure PR merge archives cards on main).
Impact: scripts/task.sh (+close, precheck [cards] report, finish-tail trigger), scripts/hooks/post-merge (new), Makefile (+task-close target, setup chmod), AGENTS.md rule; archive fixes correct PR links missed by the first dogfood run; no module or gitlink change.
Refs: task card feature/card-autoclose-r1
Why: branches merged into main had left their task cards open; backfill status and archive to prevent bookkeeping debt.
Evidence: delivery-mechanism.md(PR#unknown) feature-adopt-draft9.md(PR#unknown) feature-core-cards-commands-r1.md(PR#unknown) feature-gate-hardening.md(PR#unknown) feature-hardening-batch.md(PR#unknown) feature-pin-config-surface.md(PR#unknown) feature-pin-documents-lessons.md(PR#unknown) feature-tool-adaptation-standard.md(PR#unknown) feature-ui-foundation-r0.md(PR#unknown) feature-zcode-hooks.md(PR#unknown) fix-empty-list-json.md(PR#unknown) — merges verified via git log --merges against origin/main.
Impact: .task/*.md moved to .task/archive/ with status backfilled; no code or submodule change.
Refs: task.sh close (card-autoclose-r1)
Why: Backend merged its consumer-adaptation PR (nested core/agent-command
pins); the Dev combo must pin that merge so the tested combination is the
publishable one.
Evidence: full make test re-run at this exact combo (see task card evidence).
Impact: gitlink only.
Refs: modules/documents docs/records/2026-09-30-t1-core-cards-commands-verification.md
Why: Provider repos merged for T1 (core PR#2, agent-command PR#2, frontend
PR#3, ui PR#3, documents PR#9); gitlinks pinned to those mains. The
task-finish guard prevents a repeat of the T0 incident where running
finish from the main checkout deleted it (scripts/task.sh treated $PWD as
the worktree to remove).
Evidence: make test green on the pinned combo — core, backend 13 pkgs,
frontend 9, ui 6, agent-command (vet + tests incl. conformance); make build
produces the binary; combo version string now includes agentcmd SHA.
Impact: combo grows its version traceability; AGENTS.md documents the
worktree-cwd requirement for finish.
Refs: modules/documents docs/records/2026-09-30-t1-core-cards-commands-verification.md
Why: The delivery gate requires the task card to carry the acceptance evidence
(PASS results for make test / make build / zero-behavior CSS check) and the
PR link before requesting review.
Evidence: tested_head c9e8e29; gitlink combo recorded; provider PR list
referenced for the cross-repo five-step trail.
Impact: Documentation only; PR #14 updated by push.
Refs: modules/documents docs/proposals/2026-09-30-ui-inbox-command-workspace.md
Why: Foundation task T0 of the UI/interaction base (proposal 2026-09-30,
D25-D33): add the new UI component library and command-bus ecosystem repos,
extend build/test/pin orchestration to twelve submodules.
Evidence: make test green on the pinned combo (core + backend 13 pkgs +
frontend 9 + ui 6 tests); make build produces bin/agent-system with combo
version string including ui; make contracts now generates to frontend and ui
with submodules staying clean; renderer/tokens migration verified
CSS-rule-identical (zero behavior change).
Impact: New modules/ui and deps/agent-command gitlinks; frontend consumes ui
via source alias; backend vendors agent-command (replace only, no import
yet); follows provider-first merges (ui PR#1/#2, agent-command PR#1,
documents PR#8, frontend PR#2, backend PR#6).
Refs: modules/documents docs/proposals/2026-09-30-ui-inbox-command-workspace.md
Why: the startup configuration surface (file/env/CLI layers, config
explain, instance examples) merged in both component repos; the composition
must consume the reviewed combination.
Evidence: backend PR#4 (1e62188, 12 packages pass, explain live-checked)
and documents PR#6 (84b3421); make test on this branch per the gitlink rule.
Impact: gitlink-only advance; also picks up the nested core-pin build-blocker
fix (019617e -> 4ee1979) that makes fresh backend clones materializable.
Refs: docs/proposals/2026-09-30-configuration-surface.md
Why: the job token only authorizes the event repository; sibling private
submodules (Development-Guidelines et al.) returned 404 on the first run.
Evidence: run 194 log — clone of deps/development-guidelines failed with
repository not found despite the insteadOf rewrite.
Impact: ci.yaml reads secrets.SUBMODULE_TOKEN (stored via API, never in
tree or chat); no other change.
Refs: run 194; PR#11
Why: PR test evidence depended on the agent's word (single point); the
running binary could not answer what combination it was built from; and
irreversible operations lacked an explicit agent-stops-here boundary.
Evidence: Gitea runner online (home-runner, ubuntu-latest+docker); make
version prints describe+component SHAs; two-key line maps to baseline hard
boundary 1. CI first run observed on this PR before merge (see Actions tab).
Impact: .gitea/workflows/ci.yaml runs make test + make build on PR/push;
Makefile injects main.version (make version / agent-system version);
AGENTS.md and adoption register the two-key rule. No product code change.
Refs: policy/adoption.md; release-operations requirements
Why: the library now makes precedence, memory tiers, and lesson
mechanization explicit; the composition must pin the revision and register
how its layers map onto the new rules.
Evidence: guidelines PR#3 (ed2af3e) and documents PR#4 (2205138) merged;
make test on this branch per the gitlink rule.
Impact: gitlink advances; adoption registers the hierarchy/memory rows as
manual-with-existing-artifacts. No code change.
Refs: policy/adoption.md; docs/records/2026-09-30-history-migration-sha-map.md
Why: the pin-documents flow exposed guard divergence — precheck counted
submodule drift while task-start checked porcelain only, letting a task
start despite a BUSY verdict; and PR#8 overcorrected by treating
uninitialized (-) submodules as BUSY when they only block builds, not
writes.
Evidence: bash -n clean; precheck on this checkout prints tree line with
drift/uninit split and READY verdict; negative path exercised by the
real divergence that started this task.
Impact: precheck warns on uninitialized, BUSY only on +/U; task-start now
refuses on porcelain dirt and +/U drift, matching precheck.
Refs: PR#8; policy/tool-adaptation-matrix.md A1
Why: the two 2026-09-30 lesson entries merged into documents main; the
composition should consume them for future retrieval.
Evidence: documents PR#3 merged (2ec3e50); make test on this branch before
merge per the gitlink rule.
Impact: gitlink-only advance; no product code change.
Refs: docs/records/2026-09-30-lesson-*.md
Why: precheck missed uninitialized submodules (git submodule status '-'
prefix), and the branch protection configured today plus the second live
probe outcome must be recorded honestly in the matrices.
Evidence: platform negative: direct push to protected main rejected
(pre-receive hook declined, Logging-System probe); second write-guard probe
confirmed session-start config loading (no hook run in the pre-config
session log).
Impact: precheck sub_dirty now counts '-' prefixed entries; A3 registered
enforced at platform layer across 11 repos; zcode matrix pending-live
annotated with the loading-timing proof.
Refs: policy/tool-adaptation-matrix.md; policy/tool-adaptation-zcode.md
Why: zcode lacks a rules feature (AGENTS.md is the resident layer) but
supports PreToolUse hooks that can block Edit/Write before the write lands,
upgrading A1/A3 from commit-time to write-time enforcement; the two block
shapes (integration branch, detached submodule) mirror the real incidents.
Evidence: script-level suite 8/8 (N1-N3 blocks with exit 2 and remediation
hints, P1-P5 allows incl. fail-open degradation paths); config JSON valid;
client-side live-fire interception marked pending-live in the matrix.
Impact: .zcode/config.json enables the hook runner for this workspace;
.zcode/plans/ ignored (client state); no product code change.
Refs: Development-Guidelines 0.1.0-draft.8; policy/tool-adaptation-zcode.md