fix: role-ref P0 + fileURLToPath parity + synthetic SHA replacement#1708
fix: role-ref P0 + fileURLToPath parity + synthetic SHA replacement#1708
Conversation
…2026-05-05" on CLAUDE.md current-state surface (P0 from copilot-pull-request-reviewer on PR #1702) Scope: lines 275, 1138-1141 (the 4 bullets added by this branch + the peer-call infrastructure pointer). These lines used direct persona-name attribution ("Aaron 2026-05-05") on CLAUDE.md, which is a current-state surface per the role-ref discipline. Fixes applied: - Leading attributions "(Aaron 2026-05-05;" → "(the human maintainer 2026-05-05;" - Body-prose "Aaron 2026-05-05" → "the human maintainer 2026-05-05" (non-quote contexts) - "Codex 1M context, Grok critique, Gemini propose, Amara sharpen, Ani brat-voice" → role-refs per four-ferry consensus - Verbatim quotes (*"..."*) preserved verbatim per verbatim-preservation discipline NOT fixed (follow-up): - Otto-NNN rule-IDs (Otto-357, Otto-364, Otto-329) remain — these are rule-IDs, not contributor-identifiers; softer violation; follow-up owed - SKILL.md body prose has no persona-name violations (only memory-file paths which are identity-preserving pointers) - Pre-existing "Aaron" references outside this PR's diff (lines 1-1137) are not in scope Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
…riven findRepoRoot (Codex P2 + Copilot P1 on PR #1702) amara.ts:315, ani.ts:283, riven.ts:285 used `new URL(import.meta.url).pathname` which produces percent-encoded paths and incorrect Windows `/C:/` forms. Replaced with `fileURLToPath(import.meta.url)` + added the `node:url` import. Same fix already applied in codex.ts:380 and append-identity-receipt.ts:89. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
…mit 1011258a in identity-substrate-receipts.jsonl (Copilot P1 on PR #1702) Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: ce36224957
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
There was a problem hiding this comment.
Pull request overview
This PR tightens a few “substrate correctness” details: it updates CLAUDE.md to use role-refs in a specific spot, fixes cross-platform repo-root resolution in peer-call TypeScript tools by using fileURLToPath, and replaces a synthetic placeholder SHA in the identity-substrate receipts log.
Changes:
- Switched
findRepoRoot()intools/peer-call/{amara,ani,riven}.tsfromnew URL(import.meta.url).pathnametofileURLToPath(import.meta.url). - Replaced one CLAUDE.md “Aaron 2026-05-05” attribution with “the human maintainer 2026-05-05”.
- Replaced
SYNTHETIC_TEST_SHA_NOT_A_REAL_COMMITwith1011258ainmemory/identity-substrate-receipts.jsonl.
Reviewed changes
Copilot reviewed 5 out of 5 changed files in this pull request and generated 3 comments.
Show a summary per file
| File | Description |
|---|---|
| tools/peer-call/riven.ts | Uses fileURLToPath(import.meta.url) for portable repo-root discovery. |
| tools/peer-call/ani.ts | Same fileURLToPath portability fix for repo-root discovery. |
| tools/peer-call/amara.ts | Same fileURLToPath portability fix for repo-root discovery. |
| memory/identity-substrate-receipts.jsonl | Replaces synthetic placeholder SHA with a real commit id. |
| CLAUDE.md | Updates a specific named attribution to a role-ref and reflows related bullets. |
Summary
Cherry-picked from the original claim branch onto clean main to fix DIRTY merge state.
Test plan
grep "Aaron 2026-05-05" CLAUDE.mdreturns 0grep "new URL(import.meta.url).pathname" tools/peer-call/{amara,ani,riven}.tsreturns emptygrep SYNTHETIC memory/identity-substrate-receipts.jsonlreturns empty🤖 Generated with Claude Code