Repository navigation
Settings ownership P42: command readers (E2992 minimum v8) #2996
Description
Current selected candidate: P42 / minimum plan v8
Parent epic: #2992. Technical consensus is complete for the exact digest set below. Human plan approval and implementation authorization remain pending.
This existing OPEN child is explicitly reconciled from its earlier delivery unit (Settings ownership P04: readers commands (E2992)). The previous specification is preserved below as historical material; it does not authorize execution. The frozen phase identified here is the current specification.
Situation and intended behavior
Propagate fallible settings availability through command readers without changing public IPC.
- Class: patterned
- Owner: ac-dev-rust-v5
- Depends on: P41 / Settings ownership P41: owner recovery (E2992 minimum v8) #2994
- Planned branch, created only at phase start after dependency merges:
refactor/2996-settings-owner-p42-command-readers. - Design source:
c61cfbdeecb3bc20a1a9d7308fd6e67bb2df99d5. - Canonical master:
D:/0_repos/AgentsCommander_iac/.ac/plans/2992-settings-owner/plan-v8-settings-owner.md. - Plan-SHA256:
05C031F312B3AA730F4D6B9528A65E3EC4E7470903CC83E923B8204D6CE4E8D2. - Canonical phase, sole implementation specification:
D:/0_repos/AgentsCommander_iac/.ac/plans/2992-settings-owner/P42-v7-command-readers.md. - Phase-SHA256:
83FDAD31F8B3E834C99FB076B167D9C5ED54B208E95AF5C70406B6248A4128F7. - Execution mapping:
D:/0_repos/AgentsCommander_iac/.ac/plans/2992-settings-owner/phase-issues-v7.json(stable filename used by reused phase files; the selected digest set is v8). - Exact five-participant consensus:
D:/0_repos/AgentsCommander_iac/.ac/project-shared/2992-settings-owner/minimum-path-20261016/full-r3-consensus-approved-v1.json.
Files (MODIFIED only; no ADDED or REMOVED tracked files)
src-tauri/src/commands/co_managed.rssrc-tauri/src/commands/pty.rssrc-tauri/src/commands/repos.rssrc-tauri/src/commands/resource_monitor.rssrc-tauri/src/commands/role_templates.rssrc-tauri/src/commands/screenshot.rssrc-tauri/src/commands/session.rssrc-tauri/src/commands/spec_board.rssrc-tauri/src/commands/task.rssrc-tauri/src/commands/telegram.rs
Acceptance
Preserve existing Result paths and original guard lifetimes; unavailable state never supplies defaults that grant authorization.
Follow every phase-specific acceptance case, positive control, source/permission/durability invariant and staged boundary in the frozen phase. Keep every intermediate main green with landed phases only; exclusive ownership is activated in P50.
Verification commands and delivery gate
Run from D:/0_repos/AgentsCommander_iac/.ac/room-09-ac-dev-team-v5/repo-AgentsCommander, only after human approval and the phase handoff:
cargo +1.98.1 check --locked --all-targets
cargo +1.98.1 fmt --all -- --checkAlso run the exact focused test commands and structural guards in the canonical phase, requiring nonempty test execution and all triggered/required CI checks green on the exact PR head. Commands above are future checks, not executed results. Preserve the fixed toolchain and lockfiles. One phase branch/PR at a time; the phase PR closes this child only, not the epic.
Scope authority: normal CLI without elevation remains required. The user excluded High CLI with Medium owner; the cancelled UAC probe is not an acceptance prerequisite. Other included permission, protected-field, recovery, retention and QuitGate guarantees remain.
Historical pre-minimum specification (superseded; preserved verbatim)
Parent epic: #2992
This is the approved P04 delivery unit of the settings-owner plan.
Technical consensus is complete. Implementation awaits explicit user plan review and coordinator authorization; no branch or product change has started.
Situation and intended behavior
The epic centralizes settings operations for app and CLI/daemon while preserving source composition, authorization, failures and durability. This child implements only its approved phase below, after its dependencies have landed.
Replace productive direct state reads and physical loaders with fallible current_snapshot or the exact owner fresh-authority projection. ac_discovery:1721 and entity_creation:4390 also bypass State today. Every user operation propagates unavailable/invalid through its existing Result; void background hooks log the existing operational error and skip that action. Do not default missing owner to settings defaults. Keep ordinary try_state absence behavior when no state exists; a present Invalid owner is an error, not the absence branch. Keep filesystem identity/authorization checks at point of use. Settings data is obtained before unrelated locks. No new resource domain is adopted.
Only listed files may change. Preserve unrelated formatter debt and user data. Shared-file handoff is merged main, owned by the next authorized phase; never private scratch.
Main must compile/test using only landed code. Before P20 the new authority stays inactive with legacy transactional behavior; P20 removes staging and activates only the completely migrated set.
No intermediate cut publishes a second active memory authority or promises sole-writer memory freshness while legacy writers remain.
Approved identity and ownership
- Phase: P04
- Class: design-bearing
- Owner: ac-dev-rust-v5
- Depends on phase IDs: P03
- Files: 8
- Canonical phase:
D:/0_repos/AgentsCommander_iac/.ac/plans/2992-settings-owner/P04-v5-readers-commands.md - Phase-SHA256:
38E346C19E77675FB05DED8C818EEDE3728B75FC241B20E97749BDBE4E4F1650 - Master:
D:/0_repos/AgentsCommander_iac/.ac/plans/2992-settings-owner/plan-v5-settings-owner.md - Plan-SHA256:
C142BB7BF5EDC96C5E88AA70A5A217B54D37E41F2E0B04ABD4A4AD9D8A69B0A5 - Source reference:
f6e5d08882ba9b208b56afe1fec44efb04925205
The canonical phase file is the sole cold-start implementation specification. This issue is tracking and a review summary, not permission to make new design choices. Child/branch/execution identity belongs in the separate coordinator mapping; no certified Markdown is edited.
Planned modified files
D:/0_repos/AgentsCommander_iac/.ac/room-18-ac-dev-team-v5/repo-AgentsCommander/src-tauri/src/commands/ac_discovery.rsD:/0_repos/AgentsCommander_iac/.ac/room-18-ac-dev-team-v5/repo-AgentsCommander/src-tauri/src/commands/co_managed.rsD:/0_repos/AgentsCommander_iac/.ac/room-18-ac-dev-team-v5/repo-AgentsCommander/src-tauri/src/commands/entity_creation.rsD:/0_repos/AgentsCommander_iac/.ac/room-18-ac-dev-team-v5/repo-AgentsCommander/src-tauri/src/commands/pty.rsD:/0_repos/AgentsCommander_iac/.ac/room-18-ac-dev-team-v5/repo-AgentsCommander/src-tauri/src/commands/repos.rsD:/0_repos/AgentsCommander_iac/.ac/room-18-ac-dev-team-v5/repo-AgentsCommander/src-tauri/src/commands/resource_monitor.rsD:/0_repos/AgentsCommander_iac/.ac/room-18-ac-dev-team-v5/repo-AgentsCommander/src-tauri/src/commands/role_templates.rsD:/0_repos/AgentsCommander_iac/.ac/room-18-ac-dev-team-v5/repo-AgentsCommander/src-tauri/src/commands/screenshot.rs
No tracked source files are added or removed. The phase's explicit preserve sets, protected behavior and budgets remain binding; P01 alone has the approved constructor-only mechanical exception.
Acceptance and verification (future work)
All following cases are FUTURE, owner-executed tests using existing inline modules, tempdirs, saver fault seams, controlled clocks/barriers. Prefix new cases e2992_p04_ in each named module. No generic harness/dependency or runtime execution during planning. Execute focused commands only after the Cold start block has initialized R/EVIDENCE and captured the actual authorized phase base.
| Test location | Named suffix / stimulus and control | Required observable result |
|---|---|---|
| src-tauri/src/commands/ac_discovery.rs | fresh_or_invalid | Staged legacy disk change alone does not replace published RAM observation; a completed backend mutation publishes it; Active Invalid and absent State take distinct branches; Invalid performs no discovery effect/default load. |
| src-tauri/src/commands/ac_discovery.rs | ordinary_traffic | Hold external transaction lock; repeat migrated ordinary query 100 times: zero physical captures/lock attempts and no file-lock Busy/timeout. Positive final-authority control remains physical. |
| src-tauri/src/commands/entity_creation.rs | final_authority | Pause after snapshot then revoke/change physical target before final use: strict owner projection denies; valid control permits action. Source error is propagated through existing Result, not empty roots. |
| src-tauri/src/commands/pty.rs | reader_error | Inject unavailable before action: Result is error and zero PTY action; valid composed state preserves existing behavior. Other listed commands share this captured-before-other-lock rule; full regression guards their existing cases. |
From R/src-tauri after authorization:
cargo +1.98.1 test --locked --lib --bins e2992_p04_ -- --list > "$EVIDENCE/focused-list.txt"
rg "e2992_p04_" "$EVIDENCE/focused-list.txt"
cargo +1.98.1 test --locked --lib --bins e2992_p04_ -- --nocaptureEvery named case must appear in the list and execute; zero matches is failure, not PASS. Full applicable regression and integration guards below remain mandatory.
Preserve existing source/permission/error contracts. Failed, absent or timed-out evidence stops delivery and returns the exact discrepancy to architecture; no widening of the frozen file table.
Execute the phase's complete local verification, structural and exact-head CI gates from its canonical file only after authorization. Every dependency must be merged into main; one sequential phase/PR at a time. A phase PR closes only this child. The epic remains open through all phases and the requested final shipper build. No installation, release/version bump or other persistence-domain migration is authorized.
Activity
[-]Settings ownership P04: readers commands (E2992)[/-][+]Settings ownership P42: command readers (E2992 minimum v8)[/+]mblua commentedon Oct 18, 2026
P42 execution authorized on 2026-10-18T18:31:38.852Z. The user approved the full exact minimum v8 set ("ok, dale,"); the historical pending labels above are superseded by the immutable approval receipt. All five exact consensus reports, phase identity, OPEN native epic linkage, and landed P41 dependency PR3056 have been verified. Room-wide dry-run and real cold purge succeeded; master and all 11 phase hashes remained unchanged.
Sole specification: D:/0_repos/AgentsCommander_iac/.ac/plans/2992-settings-owner/P42-v7-command-readers.md
Phase-SHA256: 83FDAD31F8B3E834C99FB076B167D9C5ED54B208E95AF5C70406B6248A4128F7
Branch: refactor/2996-settings-owner-p42-command-readers
Base: 3b73455
Authority: D:/0_repos/AgentsCommander_iac/.ac/project-shared/2992-settings-owner/minimum-path-20261016/p42-cold-start-authority-v1.json
Only P42's ten existing command files are authorized. Preserve fallible availability, original guard lifetimes, public IPC, and staged behavior. Shipper owns compilation/tests; independent Rust, architecture and UI reviews plus exact-head applicable CI remain required before landing. Final requested build runs once after P50.
test(settings): prepare managed settings and physical fixture paths (#…
test(settings): resolve physical cwd in P42 acceptance fixture (#2996)
Merge pull request #3113 from mblua/refactor/2996-settings-owner-p42-…
mblua commentedon Oct 19, 2026
Delivered by PR #3113, merged as 84da650. Main is clean and synchronized; its tree is identical to the tested candidate d50e1a3.
Both P42 acceptance cases and the five P41 cases passed on Windows, Linux and macOS. All 14 required checks and all 24 reported contexts passed; regression run 39188013217 succeeded on attempt 1. Full frontend regression passed 274 files / 4,201 tests. Imported spawn inventory and web-route coverage passed in Windows; their execution is not claimed for the selected Linux/macOS filters.
Own changes remain ten modified command files. Independent source, local executable and platform proof reviews passed. Existing graph SCC membership and arc registry were preserved. Late cleanup and credential/resource non-use retain their source-only evidence limits. Historical failures remain recorded.
P42 is complete. Settings ownership remains staged; E2992 stays open for P43-P50 and the final requested build. No final no-bundle build, release, installation or version bump was performed.