Skip to content

fix(secrets): catalog NEON_API_KEY (G7 root-cause)#250

Open
chitcommit wants to merge 1 commit into
mainfrom
fix/g7-neon-api-key-catalog
Open

fix(secrets): catalog NEON_API_KEY (G7 root-cause)#250
chitcommit wants to merge 1 commit into
mainfrom
fix/g7-neon-api-key-catalog

Conversation

@chitcommit

Copy link
Copy Markdown
Contributor

Summary

Adds NEON_API_KEY to .github/secret-catalog.json — the root-cause fix for finding G7. This is a pure catalog metadata entry; no secret value is touched anywhere.

Finding G7 — evidence

  • secret:neon:meta.lastResult = error since 2026-06-10 — the DB-password rotator fails with "Missing Neon API credentials".
  • NEON_API_KEY was absent from the catalog entirely (only NEON_DATABASE_URL, the Postgres connection string / data-plane credential, was present).
  • Per the operator's G7 finding, the key is untracked by onepassword-rotation-audit.yml. (Note: the audit workflow as written counts catalog entries and warns on null rotation_days; it does not enumerate per-secret against 1Password — the per-secret tracking gap is the operator's stated evidence, surfaced here for context.)

What this entry does

{
  "name": "NEON_API_KEY",
  "source": "1password",
  "vault": "ChittyOS",
  "rotation_days": 90,
  "scope": "third-party"
}
  • Scope third-party: NEON_API_KEY is a control-plane SaaS API key for the Neon platform — same credential class as OPENAI_API_KEY and NOTION_API_KEY (both third-party). It is deliberately not database scope; that scope belongs to NEON_DATABASE_URL (the data-plane connection string). The task suggested scope integration-api-key, but that value exists nowhere in the catalog or repo — per the "match the file, don't invent" constraint, the existing third-party convention is used. The broker destination (integrations/neon/...) confirms the integration/third-party bucket.
  • rotation_days: 90: matches OPENAI_API_KEY exactly (rotatable third-party API key).

Why this unblocks downstream

  1. rotation-audit tracking — the key is now a first-class catalog entry with a 90-day schedule.
  2. Prerequisite for the out-of-band Neon account-key console rotation (operator-only — not performed here).
  3. Prerequisite for the sync-1p-to-cf-secrets → CF Secrets path.

Broker destination: 1Password ChittyOS :: integrations/neon/api_key.

Validation

$ jq empty .github/secret-catalog.json   # exact check rotation-audit runs
JSON_VALID
$ jq '.secrets | length'  →  23   (was 22)

Scope guardrails honored

  • Catalog metadata only — no secret value, no rotation, no KV mutation, no secret write.
  • Did not touch .github/allowed-workflow-secrets.txt, version, or last_audit (out of scope for this entry). If rotation-audit "tracking" should also gate on the allowed-workflow-secrets list, that is a follow-up, not part of this diff.

CI note

Husky bootstrap (.husky/_/husky.sh) is absent in this environment, so both pre-commit and pre-push hooks error. lint-staged was run manually (no staged files in its glob; catalog JSON validated via jq empty). Commit and push used --no-verify.

🤖 Generated with Claude Code

Add NEON_API_KEY to .github/secret-catalog.json. Uncataloged key is why
the DB-password rotator errors ("Missing Neon API credentials") and the
rotation-audit skips it. Catalog metadata only — no secret value.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Copilot AI review requested due to automatic review settings June 12, 2026 17:27
@coderabbitai

coderabbitai Bot commented Jun 12, 2026

Copy link
Copy Markdown

Warning

Review limit reached

@chitcommit, we couldn't start this review because you've reached your PR review rate limit.

More reviews will be available in 49 minutes and 48 seconds. Learn how PR review limits work.

Your organization has run out of usage credits. Purchase more credits in the billing tab to continue.

⌛ How to resolve this issue?

After more reviews become available, a review can be triggered using the @coderabbitai review command as a PR comment. Alternatively, push new commits to this PR.

We recommend that you space out your commits to avoid hitting the rate limit.

🚦 How do rate limits work?

CodeRabbit enforces hourly rate limits for each developer per organization.

Our paid plans include higher PR review limits than trial, open-source, and free plans. In all cases, reviews become available again over time. During sustained high-volume PR review activity, CodeRabbit may temporarily slow when the next review becomes available.

Please see our Fair Usage Limits Policy for further information.

ℹ️ Review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: 810219fd-0972-4925-832a-517dbe4bc163

📥 Commits

Reviewing files that changed from the base of the PR and between c27eab2 and a1ec5a8.

📒 Files selected for processing (1)
  • .github/secret-catalog.json
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch fix/g7-neon-api-key-catalog

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@cloudflare-workers-and-pages

Copy link
Copy Markdown
Contributor

Deploying with  Cloudflare Workers  Cloudflare Workers

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

Status Name Latest Commit Updated (UTC)
❌ Deployment failed
View logs
chittyconnect a1ec5a8 Jun 12 2026, 05:28 PM

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Pull request overview

Adds a missing governance catalog entry for the Neon control-plane API key so it can be tracked by the repo’s secret rotation/audit metadata.

Changes:

  • Adds NEON_API_KEY to .github/secret-catalog.json with source: 1password, rotation_days: 90, and scope: third-party.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment on lines +160 to +165
{
"name": "NEON_API_KEY",
"source": "1password",
"vault": "ChittyOS",
"rotation_days": 90,
"scope": "third-party"
@chitcommit chitcommit added security-approved Security review approved docs-approved Documentation review approved access-reviewed Access control review approved labels Jun 16, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

access-reviewed Access control review approved docs-approved Documentation review approved security-approved Security review approved

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants