Skip to content

ci: add complete ownership disk cycle gates and summary #3169

Open

Description

@mblua

P03 — Add complete container ownership, disk and cycle ratchets with summary

Parent: #3166. Stable phase ID: P03. Class: design-bearing. Owner: ac-dev-rust-v5.
Repository: D:/0_repos/AgentsCommander_iac/.ac/room-18-ac-dev-team-v5/repo-AgentsCommander.

Situation and need

Complete symptoms 03, 04 and 07 with the certified full registry and aggregate all nine gates while preserving the existing validators.

Specification identity

Canonical phase: D:/0_repos/AgentsCommander_iac/.ac/plans/3166-sanitizing-ci-gates/P03-v4-ownership-and-summary.md
Phase-SHA256: FEE1F4E088DDA3C295C1907EE00549DE9EB102F2048382900314EC19F1797AD4
Parent plan: plan-v6-sanitizing-ci-gates.md, Plan-SHA256 436C4A0F9006F76E1B1E22896B0D3868A889243E42D7E66F4579E212458B79F6.
Dependencies: P02 must be merged to main (P01 is a transitive dependency); verify merge ancestry before branching.
The immutable phase is the implementation specification. Follow its exact associated input hashes and the coordinator's verified phase-to-issue mapping. A branch is created from current main only when this phase starts.

Files

  • scripts/containers.json
  • scripts/sanitizing_container_owner.mjs
  • scripts/sanitizing_disk_access.mjs
  • scripts/sanitizing_cycles.mjs
  • scripts/sanitizing_all.mjs
  • scripts/check-module-cycles.mjs
  • scripts/sanitizing_tests.mjs
  • package.json
  • .github/workflows/pr-regression-gates.yml

Acceptance

  • Copy and validate the exact certified 332-entry registry and preserve all documented families, owners and policy boundaries.
  • Apply the full runtime provenance table and six bounded dispositions; none creates global store permissions.
  • New unclassified runtime candidates fail; existing policy changes cannot silently hide debt.
  • Run existing cycle/arc validators once, preserve shrink/removal handling and reject internal-arc or SCC growth against the PR base.
  • The aggregate reaches all nine gates, reports PASS/FAIL/ERROR, and never treats errors as success.
  • Run the specified positive/negative controls and final integrated validation.
  • Preserve unrelated work and existing Rust, runtime behavior, lockfiles and versions.
  • Follow independent code review, exact-head required CI and protected PR landing; close only this child issue, never the parent epic.

Verification

Run from the repository directory, with the scratch/environment requirements in the phase:

npm run check:cycles:self
npm run check:arcs:self
npm run sanitizing:self
npm run sanitizing:all
npm run version:check
git diff --check

The starting measurements were recorded on 72aa89f after PR #3165. Classify subsequent target drift and refresh only affected evidence; do not reset accepted cycle baselines or replace dynamic merge-base ratchets with stored debt thresholds.

Current identity/approval: D:/0_repos/AgentsCommander_iac/.ac/plans/3166-sanitizing-ci-gates/phase-issues-v6.json and approval-v6-identity-receipt.json. Earlier identities are historical. P01 continuation uses the authenticated checkpoint; later phases still start from current main after dependency landing. Self retains native node:test exits and any failure blocks CI.

Activity

  1. mblua commented on Oct 22, 2026

    @mblua
    OwnerAuthor

    E3166 / I3169 — Remaining technical delta after AC-3169-001

    2026-10-22 UTC. Original task score34/100 remains historical. This score covers unresolved inventory/04/07/all/workflow and integration of the valid03checkpoint; excludes already delivered phases and3174. It is not a score of review ceremony.
    Evidence: P03-author-inventory-gap-diagnosis-20261022.md; P03-dev-gap-feasibility-20261022.md; P03-focused245-triage-20261022.json; authenticated checkpoint50c7097726effba7f74b36e23f771f3ca5fa9e1e and coordinator integrity receipt.

    Category Score1–20 Matched anchor and evidence
    Scope footprint 8 Several coherent Node/JSON/workflow files moving together; nine-path phase,03 partial already implemented. Below module anchor10.
    Diagnosis difficulty 12 Plausible complete1325replay concealed missing candidates; focal matrix has81unproven/5provenance/9traces to resolve. Above unfamiliar-reading anchor10.
    Domain knowledge 12 Rust lexical production/alias rules, exact-site provenance and bounded policy grammar; naive classification can silently widen permission. Above parser anchor10.
    Solution-space ambiguity 10 Multiple bounded representations for symbolic runtime roots, author proposal feasible conditionally; exact policy not yet decided. Matches viable-alternatives anchor10.
    Blast radius and reversibility 5 CI gate can reject PRs or miss debt; reversible scripts/data, no app runtime or destructive writes. Below shared-runtime anchor10.
    Dependency and integration load 4 Node builtins and existing scanners/wrappers; P01/P02 already landed. No new external library/contract.
    Verification difficulty 15 Passing and a detector missing candidates look alike; independent coverage and real negative mutations necessary. Between new-harness-test10 and difficult-proof20.
    State/data/compatibility 8 Serialized policy registry/BASE-vs-HEAD ratchet, symbolic tuple change; no live app migration. Below persisted-shape anchor10.
    Concurrency/timing 1 Inapplicable beyond existing sequential wrapper execution; no new shared runtime state.
    Environment/tooling 8 Windows path/CRLF and bounded subprocess evidence, Node26local vs22CI; existing workflow tier retained. Below platform/toolchain anchor10.

    Raw sum93. Final=round((93-10)/190*99)+1=44/100.
    Path remains Full v5: architecture/data decisions, same four exact participants. Verification>=8 requires proof review; Environment>=8 written dev risk. New score neither waives cold gate nor reopens landed phases.
    Excluded ceremony: issue/branch/push/PR, waitingCI, review rounds, delegation/messages, changelog/version, merge/cleanup.
    Scope remains original inventory of ALL existing containers/candidates;332 is observed certified inventory, not an omission budget. No new owners/exemptions/runtime/Rust/deps/locks/version/GUI/build/release authorized by this score. Author decides shape. Re-score is based on current concrete remaining delta; no product edits here.

  2. mblua commented on Oct 25, 2026

    @mblua
    OwnerAuthor

    I3169 — Remaining technical delta after MAIN reconciliation

    2026-10-25 UTC. Original34/100 and previous44/100 remain historical. This score uses MAINb99664b708636973f05617188b4c6108cb45b2e8, authenticated checkpoint50c70977, architect direction-decisionsv2/0BB64ACE30FBB1ED09B4611AE7A743C649C74284829C459F853080A2021DDCF0, dev ledgerf727742ac56ed18c84dba66d969c058cc14ffb38befe30f50f6a1ef780477fbd and current feasibility/direction reviews. No code changes or new gate runs are claimed.

    Category Score1–20 Anchor and verified reason
    Scope footprint 9 Near coherent-module anchor10: nine proposed JS/JSON/workflow paths plus preserved wrapper comment must be reconciled in impact inventory. No Rust/runtime changes.
    Diagnosis difficulty 15 Above unfamiliar-code anchor10: old inventory integrity looked valid while coverage was incomplete; current drift/schema overlap and receiver/provenance correspondence require independent evidence.
    Domain knowledge 13 Above parser/build-system anchor10: Rust lexical scopes/aliases/production, exact-site provenance, registry obligations and Git BASE/HEAD semantics.
    Solution-space ambiguity 9 Below alternatives anchor10: author has selected one migration/evaluator/gate direction; remaining data adjudication is diagnosis, not inflated into architecture ambiguity.
    Blast radius/reversibility 7 Below shared-runtime anchor10: shared CI admission and registry migration may reject/miss regressions; reversible, no app persistence or destructive writes.
    Dependency/integration 6 Existing scanner/support/seven gates/allowlist/workflow contracts must coexist; Node builtins and Git, no new external library or cross-team deployment.
    Verification difficulty 16 Between new-test10 and difficult-proof20: false PASS can look identical to a missing detector; coverage, migration anti-evasion and real negative controls are necessary.
    State/data/compatibility 11 Above serialized-shape anchor10: registryv1→v2 must preserve old protected literals and BASE obligations; no live app-data migration.
    Concurrency/timing 1 Inapplicable beyond existing sequential gates/bounded wrapper runner; no new shared state or scheduling.
    Environment/tooling 10 Matches platform/toolchain anchor10: Git merge-base, working-tree equivalence/allowlist, Windows/CRLF/subprocess budgets and Node26local vs22CI.
    Raw=97; final=round((97-10)/190*99)+1=46/100.
    Full v5 remains required because architecture/data/verification criteria apply. Same four participants; Verification16 includes proof review, Environment10 requires written dev risk, State11 retains architect contract. No reduction of scope or gates.
    Excluded ceremony: issue/branch/push/PR, waitingCI, review rounds, delegation/messages, changelog/version, merge/cleanup.
    The provisional nine-path list is not a permission to discard the checkpoint wrapper comment; final impact must describe the actual integrated diff. Author owns solution shape. Newly necessary exemptions remain subject to explicit user authorization, not this score.
  3. mblua commented on Oct 25, 2026

    @mblua
    OwnerAuthor

    P03 remains WIP in inventory/contract authoring, not waiting for CI. The user resumed work after a temporary pause; no scope exceptions were approved by that resumption.

    • Branch: ci/3169-sanitizing-ownership-summary; local checkpoint 50c7097726effba7f74b36e23f771f3ca5fa9e1e, clean worktree/index. No PR has been published for this branch.
    • P01/ci: establish sanitizing snapshots and Rust text gates #3167, P02/ci: add Rust layout boundary globals and environment gates #3168 and the separate composition follow-up refactor: compose shared sanitizing gate logic #3174 are delivered. P03 still lacks its complete accepted inventory and final implementation.
    • Latest observed ledger-v9: 243/555 candidate operations have linked author evidence; 312 remain unlinked. Counts and remaining keys were checked. This is evidence bookkeeping, not accepted policy or a project completion percentage. Ledger SHA256: 89bf92a8d55d886220890dabf93169a39c03b10b4fc0cfda100c250d7ccfc001.
    • The bounded dev config/PAIR investigation is complete: 101 references and 29 source files verified. The architect is actively integrating classifications, root/endpoint obligations and finite bindings against the pinned research snapshot b99664b708636973f05617188b4c6108cb45b2e8.
    • Next owner: architect, to finish the integrated candidate and consolidate necessary user scope decisions. Independent author work has no external blocker. Then apply the required exact-set reviews/authority before implementation, applicable tests and native CI. No local application build was requested.

    No Rust/runtime change, new exemption, policy widening, final readiness or inherited approval is authorized by this status update. New main changes will be triaged for affected facts before implementation/publication.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions