Skip to content

feat: I3097 P01 inert Rust debug slots #3098

Closed

Description

@mblua

Parent feature epic: #3097. Phase P01, class mechanical, owner ac-dev-rust-v5, no dependencies.

Situation and intended result

The approved feature needs a typed optional debug collection. Existing Rust struct literals require a consistent inert storage slot before schema/derivation can activate it. Prepare only skipped None-valued fields; preserve all existing serialized and runtime behavior.

Approved specification and scope

Canonical D:/0_repos/AgentsCommander_iac/.ac/plans/3097-id-hash-debug/p01-v2-inert-slots.md.
Phase SHA256 ACAE64D6AE85CF2D626873246234B3737FE3BBD6431FD8CD3847352EE73543AE.
Parent plan-v3 SHA256 B86F5DC6F3813AF551FD1055953829DC0493936AD82EAE1BAF05DA8D1520351E.
Exact-set consensus recorded in adjacent consensus-round3-v3.json. Execution still requires mapped child/branch and coordinator cold gate.

One mechanical rule: add serde-skipped Option<Vec> id_hash_debug adjacent to id_hash in AgentConfig/ProfileCellConfig and initialize None in every explicit constructor, including custom Deserialize results. No wire, decoder, test, hash, API or runtime behavior change. No Default refactor.

19 allowed files under repo-AgentsCommander:

src-tauri/src/config/settings.rs
src-tauri/src/commands/config.rs
src-tauri/src/cli/coding_agent.rs
src-tauri/src/config/coding_agent_mutations.rs
src-tauri/src/agent_update.rs
src-tauri/src/cli/create_agent.rs
src-tauri/src/cli/self_switch.rs
src-tauri/src/commands/ac_discovery.rs
src-tauri/src/commands/entity_creation.rs
src-tauri/src/commands/session.rs
src-tauri/src/config/agent_command.rs
src-tauri/src/config/agent_config.rs
src-tauri/src/config/coding_agent_profiles.rs
src-tauri/src/lib.rs
src-tauri/src/loops/delivery.rs
src-tauri/src/phone/mailbox.rs
src-tauri/src/pty/menu_guard/mod.rs
src-tauri/src/web/commands.rs
src-tauri/tests/pty_powershell_managed_native.rs

Acceptance and verification

Only the inert rule appears in the full diff; all explicit constructors compile; no observable serialization or behavior changes. Shipper alone runs cargo check --locked --manifest-path src-tauri/Cargo.toml --all-targets from the authorized repo, with the phase's root/toolchain/structural gates. Local evidence and every applicable exact-head CI check must pass before PR merge. Child-only closure; do not close #3097. No packaged build, install, release or version bump.

Activity

  1. added a commit that references this issue on Oct 18, 2026
  2. mblua commented on Oct 18, 2026

    @mblua
    OwnerAuthor

    Delivered via #3105, merged as 01456f1. I3098 is CLOSED; epic3097 remains OPEN.

    P01 adds the two serde-skipped optional id_hash_debug slots and initializes every explicit constructor to None. Serialized settings, hash outputs and runtime behavior remain unchanged; later phases activate the requested metadata.

    Validation: locked all-target Cargo check, read-only formatting, nine existing layering tests (zero failed/ignored/filtered), clean actual-base PRE versus exact tested-head POST with identical complete SCC sets/counts and1211unique arcs, byte-identical96449-byte records, and independent CODE_AND_PROOF_REVIEW_PASS. All56raw artifacts verified. PR regression gates https://github.com/mblua/AgentsCommander/actions/runs/39092559336 completed successfully on 5b07f07; ci-tier run3411 selected full=false, explaining all seven skipped job groups. All executed checks succeeded and all14configured required contexts were mapped to actual results or explicit tier conditions. Source and CI receipts are under room-19-ac-dev-team-v5/room-shared/e2432-id-hash/id-hash-debug/execution/P01.

    The incoming main delta1892e47 was independently classified UNRELATED_NO_UPDATE and recorded on the PR. Complete merged-tree verification checked1200entries: all19P01 paths equal the tested feature blobs, every other path equals incoming main. Local main equals origin/main at01456f15, checkout clean; local/remote phase branch and stale tracking ref are absent.

    No distributable build was requested. P02(#3099), P03(#3100) and P04(#3101) remain pending; P04 will refresh the incoming IPC baseline when it starts.

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

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions