Skip to content

fix(github-app): harden public surface publishing - #412

Merged
JSONbored merged 1 commit into
mainfrom
codex/github-app-public-surface-hardening
Jun 5, 2026
Merged

fix(github-app): harden public surface publishing#412
JSONbored merged 1 commit into
mainfrom
codex/github-app-public-surface-hardening

Conversation

@JSONbored

@JSONbored JSONbored commented Jun 5, 2026

Copy link
Copy Markdown
Owner

Summary

  • Keep PR public-surface outputs independent so a sticky-comment failure does not block the advisory context check or other outputs.
  • Preserve installation account, permission, and event metadata when GitHub sends partial installation repository events.
  • Require Pull requests: write in installation health for PR public comments/labels, matching live installed-app behavior.
  • Add audit records for per-output public-surface failures so production smoke tests do not depend on Worker tail logs.

What changed

  • Publishes Gittensory Context before comment/label outputs and records output-level failures.
  • Records pr_public_surface_published when at least one configured output succeeds, including published and failed output metadata.
  • Preserves existing installation metadata on partial install lifecycle payloads and reuses the preserved actor for product-usage redaction.
  • Updates settings/command preview warnings and unit/integration coverage for the stricter PR-write permission model.

Why

Live installed-app smoke testing showed Gittensory Gate worked, but a GitHub comment-write 403 aborted the rest of the public-surface path. The app should keep advisory checks and audit visibility working even when comments or labels need permission repair.

Validation

  • npm run test:unit -- test/unit/queue.test.ts
  • npx vitest run test/integration/api.test.ts
  • npm run test:coverage
  • npm run typecheck
  • npm run test:smoke:production

Notes

  • Deployed the fix branch to production for installed-app smoke testing.
  • Current production install health now correctly reports pull_requests as the remaining missing permission.
  • Sticky comments and labels still require approving/updating the GitHub App to Pull requests: write.

Fixes #413

@cloudflare-workers-and-pages

cloudflare-workers-and-pages Bot commented Jun 5, 2026

Copy link
Copy Markdown

Deploying with  Cloudflare Workers  Cloudflare Workers

The latest updates on your project. Learn more about integrating Git with Workers.

Status Name Latest Commit Preview URL Updated (UTC)
✅ Deployment successful!
View logs
gittensory-ui 3e661d8 Commit Preview URL

Branch Preview URL
Jun 05 2026, 09:57 AM

@JSONbored
JSONbored force-pushed the codex/github-app-public-surface-hardening branch from 52397ff to 3810b2a Compare June 5, 2026 09:41
@JSONbored
JSONbored force-pushed the codex/github-app-public-surface-hardening branch from 3810b2a to 3e661d8 Compare June 5, 2026 09:55
@JSONbored
JSONbored merged commit cb49050 into main Jun 5, 2026
11 checks passed
@JSONbored
JSONbored deleted the codex/github-app-public-surface-hardening branch June 5, 2026 10:00
@github-project-automation github-project-automation Bot moved this from Todo to Done in gittensory - v1 roadmap Jun 5, 2026
@JSONbored JSONbored added the gittensor:bug Gittensor-scored bug fix — scores a 0.05x multiplier. label Jun 10, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

gittensor:bug Gittensor-scored bug fix — scores a 0.05x multiplier.

Projects

No open projects
Status: Done

Development

Successfully merging this pull request may close these issues.

GitHub App public surface output failures block context checks

1 participant