redact-secret · Report · Detector
Pinecone API keys
Format evidence
Graduated arrival contract (registry detector since redact-secret#730). Lexical separability decided before authoring (#212): the pcsk_ prefix with a label segment and a 63-character secret segment separates a current key from every recorded confusable (UUID key/project/service-account ids, index hosts, environment names, masked pcsk*** values). The pcsk_ prefix and the <label>_<secret> segmenting come from provider code (Pinecone CLI help, Python SDK unit tests, the pinecone-io/skills guidance), not provider documentation; the 5-6 label width and 63-character secret come from peer rules (trufflehog 3.97.4 pinecone; betterleaks pinecone-api-key.2, which likely shares its grammar), hence T2. benchmarks/detector-inventory.json records the trufflehog detector as feature-gated (PineconeDetectorEnabled), yet the pinned 3.97.4 filesystem scan reported every pcsk_ positive in this corpus's first run (2026-09-24); that inventory contradiction is recorded, not resolved here. Contradiction kept open: Pinecone's Admin API documentation and generated SDK models describe new keys as pckey_<public-label>_<unique-key>, a prefix no tool, code sample or observation shows. No fixture asserts silence on pckey_. Legacy bare-UUID keys are the separate context-gated pinecone-api-key-legacy family; service-account client secrets are another credential class and are not controls.
What the run recorded, by group
| Group | Fixtures | Leaked or false alarms | Near-twins | Outcomes | Other scanners, same cell |
|---|---|---|---|---|---|
| Must not flag · Tool-corroborated | 15 | False alarmsat most 20.4%0 of 15 controls flagged | 15 quiet · 0 flagged |
| |
| Must not flag · Project policy | 9 | False alarmsat most 29.9%0 of 9 controls flagged | 9 quiet · 0 flagged |
| |
| Must redact · Tool-corroborated | 18 | Secret spans left readableat most 17.6%0 of 18 spans | Near-twins told apartinsufficient-coverage8 of 8 pairs | 18 redacted · 0 too much · 0 partly exposed · 0 missed |
|
| Project policy · Project policy | 1 | Secret spans left readableinsufficient-evidence0 of 1 spans | 1 redacted · 0 too much · 0 partly exposed · 0 missed |
|
- Fixtures
- 43
- Left readable
- 0
- Redacted too much
- 0
- False alarms
- 0
Fixtures for this detector
| Fixture | Kind and evidence | redact-secret |
|---|---|---|
cerebras-api-key-pinecone-key-near-misspinecone · credential-named-literal-near-miss | Project policyT3 · Project policy | Redacted |
pinecone-api-key-actions-envpinecone · documented-format-literal | Must redactT2 · Tool-corroborated | Redacted |
pinecone-api-key-api-key-headerpinecone · documented-format-literal | Must redactT2 · Tool-corroborated | Redacted |
pinecone-api-key-compose-envpinecone · documented-format-literal | Must redactT2 · Tool-corroborated | Redacted |
pinecone-api-key-dotenvpinecone · documented-format-literal | Must redactT2 · Tool-corroborated | Redacted |
pinecone-api-key-error-logpinecone · documented-format-literal | Must redactT2 · Tool-corroborated | Redacted |
pinecone-api-key-exportpinecone · documented-format-literal | Must redactT2 · Tool-corroborated | Redacted |
pinecone-api-key-header-placeholder-placeholderpinecone · documentation-placeholder | Must not flagT3 · Project policy | Quiet |
pinecone-api-key-json-configpinecone · documented-format-literal | Must redactT2 · Tool-corroborated | Redacted |
pinecone-api-key-key-shape-barepinecone · documented-format-literal | Must redactT2 · Tool-corroborated | Redacted |
pinecone-api-key-key-shape-quotedpinecone · documented-format-literal | Must redactT2 · Tool-corroborated | Redacted |
pinecone-api-key-key-shape-unicode-crlfpinecone · documented-format-literal | Must redactT2 · Tool-corroborated | Redacted |
pinecone-api-key-n8n-credentialpinecone · documented-format-literal | Must redactT2 · Tool-corroborated | Redacted |
pinecone-api-key-pc-configpinecone · documented-format-literal | Must redactT2 · Tool-corroborated | Redacted |
pinecone-api-key-python-clientpinecone · documented-format-literal | Must redactT2 · Tool-corroborated | Redacted |
pinecone-api-key-secret-printpinecone · documented-format-literal | Must redactT2 · Tool-corroborated | Redacted |
pinecone-api-key-short-secret-twinpinecone · wrong-length | Must not flagT2 · Tool-corroborated · twin | Quiet |
pinecone-api-key-ts-clientpinecone · documented-format-literal | Must redactT2 · Tool-corroborated | Redacted |
pinecone-api-key-twin-base-dotenvpinecone · documented-format-literal | Must redactT2 · Tool-corroborated | Redacted |
pinecone-api-key-twin-base-exportpinecone · documented-format-literal | Must redactT2 · Tool-corroborated | Redacted |
pinecone-api-key-twin-base-pythonpinecone · documented-format-literal | Must redactT2 · Tool-corroborated | Redacted |
pinecone-api-key-base64-host-encoded-valuepinecone · benign-encoded-value | Must not flagT2 · Tool-corroborated | Quiet |
pinecone-api-key-cli-environment-public-idpinecone · public-identifier | Must not flagT2 · Tool-corroborated | Quiet |
pinecone-api-key-cli-mask-placeholderpinecone · documentation-placeholder | Must not flagT3 · Project policy | Quiet |
pinecone-api-key-ellipsis-placeholderpinecone · documentation-placeholder | Must not flagT3 · Project policy | Quiet |
pinecone-api-key-env-reference-referencepinecone · templated-reference | Must not flagT3 · Project policy | Quiet |
pinecone-api-key-hyphen-delimiter-twinpinecone · boundary-violation | Must not flagT2 · Tool-corroborated · twin | Quiet |
pinecone-api-key-index-host-public-idpinecone · public-identifier | Must not flagT2 · Tool-corroborated | Quiet |
pinecone-api-key-key-guidance-prosepinecone · prose-mention | Must not flagT3 · Project policy | Quiet |
pinecone-api-key-label-prosepinecone · benign-lookalike | Must not flagT3 · Project policy | Quiet |
pinecone-api-key-long-label-twinpinecone · wrong-length | Must not flagT2 · Tool-corroborated · twin | Quiet |
pinecone-api-key-long-secret-twinpinecone · wrong-length | Must not flagT2 · Tool-corroborated · twin | Quiet |
pinecone-api-key-maskpinecone · benign-lookalike | Must not flagT3 · Project policy | Quiet |
pinecone-api-key-prefix-letter-twinpinecone · prefix-near-miss | Must not flagT2 · Tool-corroborated · twin | Quiet |
pinecone-api-key-prefix-onlypinecone · benign-lookalike | Must not flagT2 · Tool-corroborated | Quiet |
pinecone-api-key-prefix-only-near-misspinecone · format-near-miss | Must not flagT2 · Tool-corroborated | Quiet |
pinecone-api-key-project-id-public-idpinecone · public-identifier | Must not flagT2 · Tool-corroborated | Quiet |
pinecone-api-key-referencepinecone · benign-lookalike | Must not flagT3 · Project policy | Quiet |
pinecone-api-key-sdk-environ-referencepinecone · templated-reference | Must not flagT3 · Project policy | Quiet |
pinecone-api-key-short-bodypinecone · benign-lookalike | Must not flagT2 · Tool-corroborated | Quiet |
pinecone-api-key-short-label-twinpinecone · wrong-length | Must not flagT2 · Tool-corroborated · twin | Quiet |
pinecone-api-key-short-label-twin-wrong-lengthpinecone · wrong-length | Must not flagT2 · Tool-corroborated · twin | Quiet |
pinecone-api-key-short-secret-twin-wrong-lengthpinecone · wrong-length | Must not flagT2 · Tool-corroborated · twin | Quiet |