Skip to content

Stop the vault fixtures looking like real secrets - #23

Merged
ralyodio merged 1 commit into
masterfrom
opencreds-fixture-placeholders
Aug 29, 2026
Merged

Stop the vault fixtures looking like real secrets#23
ralyodio merged 1 commit into
masterfrom
opencreds-fixture-placeholders

Conversation

@ralyodio

Copy link
Copy Markdown
Contributor

Follow-up to #22, which was merged before this commit landed on the branch.

The OpenCreds test fixtures used an sk_live_ prefixed token and PEM private-key headers. All placeholders, none real, and the scanners here happened not to fire on them — but the reference implementation's ThreatCrush run flagged the equivalent strings in profullstack/logicsrc#140, and it was right to.

A fixture only has to exercise the field. A real-looking live-key prefix or private-key header sitting in the tree trains both the scanner and the people reading its output to shrug at exactly the shape that matters.

Two test files, six strings. No behaviour change.

Verification

149 vault tests pass, interop against @logicsrc/opencreds included:

cd packages/vault
OPENCREDS_REF=<logicsrc>/packages/opencreds/dist/index.js pnpm test

🤖 Generated with Claude Code

https://claude.ai/code/session_01QRQrfuwuYKKV5UB9kLHuX5

The OpenCreds test fixtures used an `sk_live_` prefixed token and PEM
private-key headers. All placeholders, none real, and the scanners here
happened not to fire on them -- but the reference implementation's
ThreatCrush run did flag the equivalent strings, and it was right to.

A fixture only has to exercise the field. A real-looking live-key prefix
or private-key header sitting in the tree trains both the scanner and
the people reading its output to shrug at exactly the shape that
matters.

149 vault tests still pass, interop included.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01QRQrfuwuYKKV5UB9kLHuX5
@github-actions

Copy link
Copy Markdown

ThreatCrush Security Scan

12 finding(s)

MEDIUM: 8 | LOW: 4

Severity Rule Location
MEDIUM js-open-redirect apps/extension/src/blocked/main.js:84
MEDIUM sql-template-interpolation apps/web/app/api/account/delete/route.js:104
MEDIUM js-credential-logged apps/web/app/api/health/route.js:27
MEDIUM js-open-redirect apps/web/app/dashboard/sync-sources-client.jsx:88
MEDIUM js-unescaped-html-sink apps/web/app/layout.jsx:86
MEDIUM js-unescaped-html-sink apps/web/app/layout.jsx:110
MEDIUM js-open-redirect apps/web/app/pricing/page.jsx:178
MEDIUM manifest-install-lifecycle-script package.json:17
LOW secret-generic-credential apps/web/__tests__/auth-api.test.js:541
LOW redos-nested-quantifier packages/sources/__tests__/dropbox-oauth.test.ts:72
LOW secret-generic-credential packages/vault/__tests__/items.test.js:201
LOW secret-generic-credential packages/vault/__tests__/items.test.js:216

Snippets are redacted; ThreatCrush never prints matched credential material.

@ralyodio
ralyodio merged commit b8cd092 into master Aug 29, 2026
9 checks passed
@ralyodio
ralyodio deleted the opencreds-fixture-placeholders branch August 29, 2026 11:21
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.

1 participant