Skip to content

fix(profiles): derive identity hashes per agent profile pair (refs #3051) - #3067

Merged
mblua merged 10 commits into
mainfrom
fix/3051-profile-pair-id-hash
Oct 17, 2026
Merged

mblua merged 10 commits into
mainfrom
fix/3051-profile-pair-id-hash

Conversation

@mblua

@mblua mblua commented Oct 17, 2026 •

Copy link
Copy Markdown
Owner

Derive cid1: metadata for every existing coding-agent/profile pair from its final base command/environment and that profile's arguments/environment. Preserve stable agent IDs, references, sessions/HOME and the legacy base hash.

Keep physical hashes tied to physical ownership, restore protected legacy groups without normalizing their raw configuration, and retain the existing identityByAgent save behavior. Refresh final CLI/GUI views after adoption/repair and exclude only derived cell metadata from the existing profile-event comparison. Tests retain protected and editable cases, strict physical absence, independent hash expectations and the frozen historical control.

Validation on integrated head 8c9dd14b8d95fe06cc730a3dea493187dbb42c89:

  • Format check, workspace/all-target Clippy JSON capture and cognitive gate passed on Windows. No threshold, baseline or workflow changes.
  • Pair, activation, identity, orphan and cell-identity filters: 7 / 20 / 111 / 35 / 2 passed; four structural targets: 25 / 5 / 1 / 3 passed, with zero failures or ignored tests in these focused checks.
  • Integrated main 08bb43a71dc4f3e0903ce18e2072e97904aa6120 without conflicts. Both authored files are identical to the previously reviewed candidate; every other file matches the integrated main tree. Fresh PRE/POST SCC member sets and all 1,211 module arcs match the committed record; arc/cycle guards passed.
  • Independent merge/preservation and runtime-evidence review passed on this exact head. The earlier successful full Windows suite (6,348 passed / 0 failed / 26 ignored) and Linux Clippy CI belong to a8878e3 only; exact-head CI, including the full test command, remains required before merge. No full local suite was repeated for this integration.
  • Local Rust/Cargo 1.98.1; Node 26/npm 11.19 differs from CI Node 22/npm 11.6.2.

Closes #3051. Part of #3047; the client metadata mirror remains in #3052.

@mblua

mblua commented Oct 17, 2026

Copy link
Copy Markdown
Owner Author

Stale-base triage: 85ed7f5bcc1d12de4e32f06244e8178f6654b868..1a11c4c16aaed89a8e688f357c2e8f7fe854f521 changes only CHANGELOG.md (+17 lines), from release-notes PR #3079. The complete diff contains release descriptions; no application code, dependency/build inputs, lockfiles or CI configuration changed.

This documentation delta is unrelated to #3051. Keep PR head a8878e35e081bf7c131b8e7e5c3f7c500187b9ee unchanged and reuse successful checks for that exact head when available, without updating solely for these notes. CI is still pending; this disposition does not waive any required check or authorize a merge before applicable checks pass.

@sonarqubecloud

Copy link
Copy Markdown

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

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

I3047 P02: Derive and persist each coding-agent/profile id_hash

1 participant