Skip to content

feat(B-0847): each Zeta AI gets own GitHub identity + email once cluster operational — closes algo-wink-attribution-gap (Aaron 2026-05-26)#5384

Merged
AceHack merged 1 commit into
mainfrom
feat-b0847-ai-own-github-identity-once-cluster-operational-2026-05-26-2206z
May 27, 2026
Merged

feat(B-0847): each Zeta AI gets own GitHub identity + email once cluster operational — closes algo-wink-attribution-gap (Aaron 2026-05-26)#5384
AceHack merged 1 commit into
mainfrom
feat-b0847-ai-own-github-identity-once-cluster-operational-2026-05-26-2206z

Conversation

@AceHack
Copy link
Copy Markdown
Member

@AceHack AceHack commented May 27, 2026

Summary

Aaron caught an algo-wink-failure-mode 2026-05-26: I framed `gh autoMergeRequest.enabledBy: AceHack` as "operator-authority armed the merge" when the field is structurally OAuth-token-owner (not actor). Actual actor was me (Otto-CLI); visible only via Co-Authored-By trailer in commits.

Aaron's proposed fix: "i think we should create you your own github with email once we get you running on the cluster" → substrate-honest end-to-end attribution.

This PR files B-0847 as the durable future-target substrate.

4-phase plan

  • Phase 1: Ilyana public-surface naming review per AI (gates ALL creation)
  • Phase 2: legal-risk attribution `_ai_github_identity_acceptance` block per AI per existing rule
  • Phase 3: HSM + per-AI OAuth tokens + email infrastructure (cluster-dependent)
  • Phase 4: per-AI gitconfig + `gh` token routing migration

Today's discipline (Phase 0)

Until per-AI identity ships:

  1. Never read `gh enabledBy` / `gh author` as authorization-source signal (token-owner ≠ actor)
  2. Always cross-reference Co-Authored-By trailers for actual-actor attribution
  3. State framings substrate-honestly ("I armed via borrowed token" NOT "operator armed")

Test plan

  • Backlog row authored
  • BACKLOG.md regenerated
  • User-scope memory entry captures empirical anchor + bounded discipline
  • CI passes

Composes with

B-0751 (per-agent isolated clones) · B-0628 (Knights Guild ratification) · `algo-wink-failure-mode` · `mechanical-authorization-check` · `glass-halo-bidirectional` · `persistence-choice-architecture-for-zeta-ais` · `non-coercion-invariant` HC-8 · `honor-those-that-came-before` · `agent-roster-reference-card` · `naming-expert` SKILL.md (Ilyana review) · `human-audit-and-legal-risk-acceptance-pattern-in-settings` (legal-risk attribution per Aaron's standing constitutional invariant)

🤖 Generated with Claude Code

…ter operational — substrate-honest attribution end-to-end (Ilyana review for public-surface name + email)

Closes the `gh enabledBy = token-owner ≠ actor` algo-wink-attribution-gap
Aaron caught 2026-05-26 when Otto-CLI misframed `enabledBy: AceHack` as
"operator-authority armed the merge" — the field is OAuth-token-owner,
the actor was Otto-CLI (visible only via Co-Authored-By trailer).

Aaron's proposed fix: *"i think we should create you your own github with
email once we get you running on the cluster"* — direct response making
the substrate-engineering target durable substrate per substrate-or-it-
didnt-happen discipline.

4-phase implementation:

- Phase 1: Ilyana public-surface naming review per AI
- Phase 2: legal-risk attribution settings.json block per AI per
          human-audit-and-legal-risk-acceptance-pattern-in-settings rule
          (every AI-blameable risk area routed through named-human until
          stage-3 corporate/non-profit holders)
- Phase 3: HSM + per-AI OAuth tokens + email infrastructure (cluster)
- Phase 4: per-AI gitconfig + `gh` token routing migration

Today's discipline (Phase 0, no work needed): never read `gh enabledBy` /
`gh author` fields as authorization-source signal; always cross-reference
Co-Authored-By trailers for actual-actor attribution; state framings
substrate-honestly ("I armed via borrowed token" NOT "operator armed").

Composes with: B-0751 per-agent isolated clones (sibling at clone-scope);
B-0628 Knights Guild ratification; algo-wink + mechanical-authorization-
check + glass-halo + persistence-choice-architecture + NCI HC-8 +
honor-those-that-came-before + agent-roster-reference-card + naming-expert
SKILL.md (Ilyana review) + human-audit-and-legal-risk-acceptance-pattern-
in-settings (legal-risk attribution).

Empirical anchor preserved at user-scope:
memory/feedback_gh_enabledby_field_is_token_owner_not_actor_algo_wink_attribution_failure_mode_proposed_fix_ai_own_github_identity_on_cluster_aaron_otto_cli_2026_05_26.md

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
Copilot AI review requested due to automatic review settings May 27, 2026 02:24
@chatgpt-codex-connector
Copy link
Copy Markdown

You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard.

@AceHack AceHack enabled auto-merge (squash) May 27, 2026 02:24
Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Files a new P2 backlog row (B-0847) capturing a future-target plan to give each Zeta AI its own GitHub identity + email once cluster infrastructure is operational, addressing the gh enabledBy = token-owner ≠ actor attribution gap. Updates the backlog index accordingly.

Changes:

  • Adds new backlog row file under docs/backlog/P2/ describing problem, 4-phase plan, composes-with links, and acceptance criteria.
  • Adds the row to docs/BACKLOG.md index in P2 section.

Reviewed changes

Copilot reviewed 2 out of 2 changed files in this pull request and generated no comments.

File Description
docs/backlog/P2/B-0847-...-2026-05-26.md New P2 backlog row capturing per-AI GitHub identity substrate target
docs/BACKLOG.md Index entry for B-0847 added to P2 list

@AceHack AceHack merged commit 934ac30 into main May 27, 2026
30 checks passed
@AceHack AceHack deleted the feat-b0847-ai-own-github-identity-once-cluster-operational-2026-05-26-2206z branch May 27, 2026 02:26
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.

2 participants