Skip to content

chore(orc): upgrade orc-standards to v8.0.1 - #329

Merged
deffenda merged 1 commit into
mainfrom
chore/orc-standards-v801
Aug 8, 2026
Merged

chore(orc): upgrade orc-standards to v8.0.1#329
deffenda merged 1 commit into
mainfrom
chore/orc-standards-v801

Conversation

@deffenda

@deffenda deffenda commented Aug 8, 2026

Copy link
Copy Markdown
Collaborator

Re-renders the ORC-managed adapter from orc-standards v8.0.1 (was v8.0.0).

Release notes: https://github.com/ABD-Enterprises/orc/releases/tag/v8.0.1

Generated by orc adopt --force --with-workflows. Only ORC-managed files change.

Why this one matters

v8.0.0 silently disabled the merge-override audit in this repo. It set the audit's GH_TOKEN to ORC_GUARDS_TOKEN — a secret documented as read access to the private orc repo and nothing else. GH_TOKEN outranks GITHUB_TOKEN for gh, so every adopter-repo call ran with a credential that cannot see this repo. GitHub answers 404 for a hidden resource (not 403), and the Not Found branch classified that as "branch not protected" and exited clean.

A real merge override produced no evidence note, on a green check.

The fix

  • Its own adopter-scoped secret, ORC_PROTECTION_TOKEN, falling back to github.token. The guards workflow keeps ORC_GUARDS_TOKEN — a scope split, not a rename.
  • A 404 counts as "not protected" only when the token demonstrably holds admin on this repo. GET /repos/{repo} needs only Metadata read while the protection endpoint needs Administration read, so probing visibility alone would have left the default github.token path — i.e. this repo, without the secret — fail-open.
  • The three unprovable states (repo invisible / visible but no admin / 403) now report distinctly.

What you'll notice after merging

If this repo has no ORC_PROTECTION_TOKEN, the audit will start emitting "merge-override audit did NOT run" where v8.0.0 quietly reported clean. That is the honest state, not a new failure — the audit was never running. Provision ORC_PROTECTION_TOKEN scoped to this repo with repository-administration read to get a real one.

Found by codex reviewing the v8.0.0 rollout, and again on the first cut of the fix.

Re-rendered by `orc adopt`; committing the managed adapter so the render
propagates through git instead of stranding as an uncommitted working-tree
change (the structural cause of fleet adapter drift, #1838).

Co-Authored-By: ORC (macbookprom5) <orc@orc.local>
Signed-off-by: orc <orc@orc.local>
Copilot AI lite review requested due to automatic review settings August 8, 2026 12:34
@deffenda deffenda added the chore:trivial ORC policy essential 3 bypass: PR is trivially scoped; closes no specific ticket label Aug 8, 2026
@cursor

cursor Bot commented Aug 8, 2026

Copy link
Copy Markdown

Bugbot is not enabled for your account, so this pull request was not reviewed.

Enable Bugbot in the Cursor dashboard to get automatic reviews on future PRs.

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Copilot was unable to review this pull request because the user who requested the review has reached their quota limit.

@deffenda
deffenda merged commit 53e28bc into main Aug 8, 2026
12 of 14 checks passed
@deffenda
deffenda deleted the chore/orc-standards-v801 branch August 8, 2026 12:36

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 4f494fe8a0

ℹ️ 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".

# cannot see the adopter, GitHub answered 404 (its response for a hidden resource, not 403),
# and the 404 branch called that "not protected" and exited clean. Following the
# documentation silently disabled the audit. Its own secret now, or the repo's own token.
GH_TOKEN: ${{ secrets.ORC_PROTECTION_TOKEN || github.token }}

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

P1 Badge Grant the protection token every permission the audit uses

When an adopter follows the new instruction and creates a repo-scoped fine-grained token with only Administration read, branch-protection lookup can succeed but the audit then uses that same token for check-runs, commit statuses, PR/issue reads, and posting the evidence comment, which respectively require additional Checks, Commit statuses, Pull requests, and Issues permissions. gh help environment confirms that GH_TOKEN takes precedence over GITHUB_TOKEN, so the workflow's declared checks/issues permissions do not supplement this token; a private-repo audit will fail at lines 151/156, or fail to post the note at line 224. Document and provision all required token permissions, or use the elevated token only for the protection lookup.

Useful? React with 👍 / 👎.

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

Labels

chore:trivial ORC policy essential 3 bypass: PR is trivially scoped; closes no specific ticket

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants