redact-secret · Report
Write-only key (pk-helicone-)
pk-helicone- with optional -eu and -rl, then four 7-byte [a-z0-9] groups; a write credential, not a public identifier.
Research record
3 events in the review history: 2 observed, 1 reviewed. Latest: observed on 2026-09-28 by automation, project maintainer. Project-maintained review is not independent validation. The family record at this release.
Format
What it looks like
- Descriptive pattern
^pk-helicone-(?:eu-)?(?:rl-)?[a-z0-9]{7}(?:-[a-z0-9]{7}){3}$
Parts are shown as recorded. Evidence classes belong to the facts below; no class is assigned to a part.
Format facts
Provider documented ·
provider-source· current · observed 2026-09-28worker apiKeyRegex.ts pk- alternatives (re-checked 2026-09-28): provider validator regexes (ruling R1): pk-helicone- with optional -eu and -rl, then four 7-byte [a-z0-9] groups; the docs name pk- as a write-only key
- Helicone/helicone @ 067d9290acb4f1fc9320e902fc67b4b399b50363: worker/src/lib/util/apiKeyRegex.tsprovider-documentation · last read 2026-09-28 · latest outcome read · supports provider validator regexes (ruling R1): pk-helicone- with optional -eu and -rl, then four 7-byte [a-z0-9] groups; the docs name pk- as a write-only key
Provider documented ·
field-role-prefix· current · observed 2026-09-28role-prefix: pk- (write-only)
- docs.helicone.ai/helicone-headers/helicone-authprovider-documentation · last read 2026-09-28 · latest outcome read · supports role-prefix: pk- (write-only)
- Helicone/helicone @ 067d9290acb4f1fc9320e902fc67b4b399b50363: worker/src/lib/util/apiKeyRegex.tsprovider-documentation · last read 2026-09-28 · latest outcome read · supports role-prefix: pk- (write-only)
Provider documented ·
field-provider-segment· current · observed 2026-09-28provider-segment: -helicone
- Helicone/helicone @ 067d9290acb4f1fc9320e902fc67b4b399b50363: worker/src/lib/util/apiKeyRegex.tsprovider-documentation · last read 2026-09-28 · latest outcome read · supports provider-segment: -helicone
- Helicone/helicone @ 067d9290acb4f1fc9320e902fc67b4b399b50363: web/utils/generateAPIKeyHelper.tsprovider-sdk-source · last read 2026-09-28 · latest outcome read · supports provider-segment: -helicone
Provider documented ·
field-optional-segments· current · observed 2026-09-28optional-segments: -eu then -rl, each optional, in that order
- docs.helicone.ai/helicone-headers/helicone-authprovider-documentation · last read 2026-09-28 · latest outcome read · supports eu role
- Helicone/helicone @ 067d9290acb4f1fc9320e902fc67b4b399b50363: worker/src/lib/util/apiKeyRegex.tsprovider-documentation · last read 2026-09-28 · latest outcome read · supports -rl added 2025-04-29; re-checked 2026-09-28
Provider documented ·
field-groups· current · observed 2026-09-28groups: - + four groups of exactly 7 [a-z0-9], joined by -
- Helicone/helicone @ 067d9290acb4f1fc9320e902fc67b4b399b50363: worker/src/lib/util/apiKeyRegex.tsprovider-documentation · last read 2026-09-28 · latest outcome read · supports groups: - + four groups of exactly 7 [a-z0-9], joined by -
- Helicone/helicone @ 067d9290acb4f1fc9320e902fc67b4b399b50363: web/utils/generateAPIKeyHelper.tsprovider-sdk-source · last read 2026-09-28 · latest outcome read · supports base32, lowercased
- github.com/redact-secret/redact-secret/issues/860issue-or-discussion · last read 2026-09-29 · latest outcome read · supports R1 · #issuecomment-5852413851
Unresolved ·
field-alphabet-narrowing· current · observed 2026-09-28alphabet-narrowing: the generator library emits RFC 4648 base32 ([a-z2-7], last byte of each group in {a,i,q,y}) (Not enforced and not asserted by any twin: positives stay inside base32 as a generator hint only.)
- github.com/redact-secret/redact-secret/issues/860issue-or-discussion · last read 2026-09-29 · latest outcome read · supports R8: no alphabet narrowing from a third-party library · #issuecomment-5871306275
Unresolved ·
field-boundary· current · observed 2026-09-28boundary: a key glued to an identifier on either side ([A-Za-z0-9_-]) is not claimed, so a fifth group or glued suffix is rejected; / delimits the gateway URL-path form
- redact-secret/redact-secret @ 270faf84dc12f6a4a4cf61fe3ffab7aadc4f7262: docs/audits/evidence/860/helicone.mdprovider-documentation · last read 2026-09-28 · latest outcome read · supports implementation notes, URL path
Unresolved ·
field-exact-width-placeholder· current · observed 2026-09-28exact-width-placeholder: pk-helicone-xxxxxxx-xxxxxxx-xxxxxxx-xxxxxxx has the exact shape and is claimed (the #867 placeholder precedent) (An accepted false positive: authored neither as a positive nor as a benign control.)
- redact-secret/redact-secret @ 270faf84dc12f6a4a4cf61fe3ffab7aadc4f7262: docs/audits/evidence/860/helicone.mdprovider-documentation · last read 2026-09-28 · latest outcome read · supports benign list: accepted behavior, not benign
Provider documented ·
field-unattributable-shapes· current · observed 2026-09-28unattributable-shapes: the legacy bare sk- + 4x7, customer-portal -cp- keys and -gov combinations carry no helicone token or are unresolved (Helicone credentials outside the contract: authored as twins, never as benign controls. -gov is not authored.)
- Helicone/helicone @ 067d9290acb4f1fc9320e902fc67b4b399b50363: worker/src/lib/util/apiKeyRegex.tsprovider-documentation · last read 2026-09-28 · latest outcome read · supports unattributable-shapes: the legacy bare sk- + 4x7, customer-portal -cp- keys and -gov combinations carry no helicone token or are unresolved
- Helicone/helicone @ 067d9290acb4f1fc9320e902fc67b4b399b50363: web/utils/generateAPIKeyHelper.tsprovider-sdk-source · last read 2026-09-28 · latest outcome read · supports -gov produced but matched by no worker regex
Tool corroborated ·
field-peer-lag· current · observed 2026-09-28peer-lag: no rule in trufflehog 3.97.4 or gitleaks 8.30.1
- gitleaks/gitleaks @ v8.30.1: config/gitleaks.tomlscanner-rule-source · last read 2026-10-04 · latest outcome read · supports no helicone rule
- trufflesecurity/trufflehog @ v3.97.4: pkg/detectorsscanner-rule-source · last read 2026-09-29 · latest outcome read · supports no helicone detector directory
Provider documented ·
field-pk-policy· current · observed 2026-09-28pk-policy: pk- is a credential with write permission, not a public identifier; placing it in a URL path is a transport convenience
- docs.helicone.ai/helicone-headers/helicone-authprovider-documentation · last read 2026-09-28 · latest outcome read · supports pk-policy: pk- is a credential with write permission, not a public identifier; placing it in a URL path is a transport convenience
- redact-secret/redact-secret @ 270faf84dc12f6a4a4cf61fe3ffab7aadc4f7262: docs/audits/evidence/860/helicone.mdprovider-documentation · last read 2026-09-28 · latest outcome read · supports decision: pk- policy
Unresolved ·
listed-references· current · observed 2026-09-28The legacy contract lists 12 references without stating which property each supports.
- docs.helicone.ai/helicone-headers/helicone-authprovider-documentation · last read 2026-09-28 · latest outcome read · supports Listed as a reference by the legacy contract
- Helicone/helicone @ 067d9290acb4f1fc9320e902fc67b4b399b50363: valhalla/jawn/src/managers/apiKeys/KeyManager.tsprovider-sdk-source · last read 2026-09-28 · latest outcome read · supports Listed as a reference by the legacy contract
- Helicone/helicone @ 067d9290acb4f1fc9320e902fc67b4b399b50363other · last read 2026-09-28 · latest outcome read · supports Listed as a reference by the legacy contract
- Helicone/helicone @ 067d9290acb4f1fc9320e902fc67b4b399b50363: worker/src/lib/util/apiKeyRegex.tsprovider-documentation · last read 2026-09-28 · latest outcome read · supports Listed as a reference by the legacy contract
- Helicone/helicone @ 067d9290acb4f1fc9320e902fc67b4b399b50363: web/utils/generateAPIKeyHelper.tsprovider-sdk-source · last read 2026-09-28 · latest outcome read · supports Listed as a reference by the legacy contract
- redact-secret/redact-secret @ 270faf84dc12f6a4a4cf61fe3ffab7aadc4f7262: docs/audits/evidence/860/README.mdproject-research-note · last read 2026-09-28 · latest outcome read · supports Listed as a reference by the legacy contract
- github.com/redact-secret/redact-secret/issues/907issue-or-discussion · last read 2026-09-28 · latest outcome read · supports Listed as a reference by the legacy contract
- github.com/redact-secret/redact-secret/issues/860issue-or-discussion · last read 2026-09-29 · latest outcome read · supports Listed as a reference by the legacy contract · #issuecomment-5852413851
- github.com/redact-secret/redact-secret/issues/860issue-or-discussion · last read 2026-09-29 · latest outcome read · supports Listed as a reference by the legacy contract · #issuecomment-5871306275
- github.com/redact-secret/redact-secret/issues/860issue-or-discussion · last read 2026-09-29 · latest outcome read · supports Listed as a reference by the legacy contract
- github.com/redact-secret/redact-secret-benchmarks/issues/434issue-or-discussion · last read 2026-09-28 · latest outcome read · supports Listed as a reference by the legacy contract
- redact-secret/redact-secret @ 270faf84dc12f6a4a4cf61fe3ffab7aadc4f7262: docs/audits/evidence/860/helicone.mdprovider-documentation · last read 2026-09-28 · latest outcome read · supports Listed as a reference by the legacy contract
Provider documented ·
dossier-research· current · observed 2026-09-28Legacy dossier research (verdict ready, tier T1) cited 2 sources; the dossier does not attribute sources to individual properties.
- Helicone/helicone @ 067d9290acb4f1fc9320e902fc67b4b399b50363other · last read 2026-09-28 · latest outcome read · supports Cited by the legacy dossier research for this family
- redact-secret/redact-secret @ 8b6a5fde52ecb4dfce13f09c7a947062d21483c7: docs/audits/evidence/860/helicone.mdproject-research-note · last read 2026-09-28 · latest outcome read · supports Final research evidence recorded by the legacy dossier
Provider documented ·
taxonomy-sources· current · observed 2026-09-28The legacy taxonomy lists 2 sources for this family. The taxonomy records no date; the dossier researchedAt is used as the observed-at date.
- docs.helicone.ai/helicone-headers/helicone-authprovider-documentation · last read 2026-09-28 · latest outcome read · supports Listed as a source for this family in the legacy taxonomy
- redact-secret/redact-secret @ 270faf84dc12f6a4a4cf61fe3ffab7aadc4f7262: docs/audits/evidence/860/helicone.mdprovider-documentation · last read 2026-09-28 · latest outcome read · supports Listed as a source for this family in the legacy taxonomy
Open questions
No open question is recorded for this revision.
Benchmark dossier notes
- Shape
- the shared grammar with role
pk. - Basis
- T1, same validator and generators. The handoff treats
pk-as a credential: Helicone documents it as an API key with write permission and no provider source calls it public (unlike PostHogphc_). The docs allow placing it in a URL path, a transport convenience that does not make it public. - Contract in core
- detector-families.md.
In this benchmark
- Fixtures
- 36
- Left readable
- 0
- Redacted too much
- 0
- False alarms
- 0
36 fixtures: 12 expect a redaction, 24 must stay quiet. See every row
| Evidence level | Fixtures | Left readable | Too much | False alarms |
|---|---|---|---|---|
| T1Provider-documented | 12 | 0 | 0 | 0 |
| T2Tool-corroborated | 19 | 0 | 0 | 0 |
| T3Project policy | 5 | 0 | 0 | 0 |
Every scanner on the same fixtures
In run order. Counts are what each scanner recorded on this family's fixtures, whichever rules it has; a scanner with no rule for the family has nothing to report on it.
| Scanner | Fixtures | Left readable | Too much | False alarms |
|---|---|---|---|---|
| flare-redactRuntime library · 1.6.1 · Published npm package · secrets-only (pii, generic_assignment disabled) · JavaScript engineNo rule maps to it | 36 | 9 | 3 | 0 |
| gitleaksRepository scanner · 8.30.1 · Directory scan · default rulesNo rule maps to it | 36 | 12 | 0 | 1 |
| redact-secretProduct measured here · 0.1.0-beta.14 · Published npm package · default detectors1 detector mapped | 36 | 0 | 0 | 0 |
| trufflehogRepository scanner · 3.97.4 · Filesystem scan · verification disabledNo rule maps to it | 36 | 12 | 0 | 0 |
Looks like it, but isn't
- Collisions
- none beyond the legacy bare and portal shapes above.
Scanner rules for this family
No peer rule maps to this family
None of the reviewed peer scanners has a rule that can match a credential of this family.
None mapped
Fixtures in this family
| Fixture | Kind and evidence | redact-secret |
|---|---|---|
helicone-write-api-key-bare-prosehelicone · documented-format-literal | Must redactT1 · Provider-documented | Redacted |
helicone-write-api-key-bearer-headerhelicone · documented-format-literal | Must redactT1 · Provider-documented | Redacted |
helicone-write-api-key-chat-pastehelicone · documented-format-literal | Must redactT1 · Provider-documented | Redacted |
helicone-write-api-key-digest-encoded-valuehelicone · benign-encoded-value | Must not flagT2 · Tool-corroborated | Quiet |
helicone-write-api-key-dotenvhelicone · documented-format-literal | Must redactT1 · Provider-documented | Redacted |
helicone-write-api-key-exporthelicone · documented-format-literal | Must redactT1 · Provider-documented | Redacted |
helicone-write-api-key-gateway-url-pathhelicone · documented-format-literal | Must redactT1 · Provider-documented | Redacted |
helicone-write-api-key-helicone-authhelicone · documented-format-literal | Must redactT1 · Provider-documented | Redacted |
helicone-write-api-key-json-api-keyhelicone · documented-format-literal | Must redactT1 · Provider-documented | Redacted |
helicone-write-api-key-json-tokenhelicone · documented-format-literal | Must redactT1 · Provider-documented | Redacted |
helicone-write-api-key-openai-default-headershelicone · documented-format-literal | Must redactT1 · Provider-documented | Redacted |
helicone-write-api-key-sdk-kwarghelicone · documented-format-literal | Must redactT1 · Provider-documented | Redacted |
helicone-write-api-key-x-api-key-headerhelicone · documented-format-literal | Must redactT1 · Provider-documented | Redacted |
helicone-write-api-key-angle-placeholderhelicone · documentation-placeholder | Must not flagT3 · Project policy | Quiet |
helicone-write-api-key-customer-portal-twinhelicone · prefix-near-miss | Must not flagT2 · Tool-corroborated · twin | Quiet |
helicone-write-api-key-dot-in-group-twinhelicone · wrong-alphabet | Must not flagT2 · Tool-corroborated · twin | Quiet |
helicone-write-api-key-ellipsis-placeholderhelicone · documentation-placeholder | Must not flagT3 · Project policy | Quiet |
helicone-write-api-key-env-reference-referencehelicone · templated-reference | Must not flagT3 · Project policy | Quiet |
helicone-write-api-key-five-groups-twinhelicone · boundary-violation | Must not flagT2 · Tool-corroborated · twin | Quiet |
helicone-write-api-key-group-of-6-twinhelicone · wrong-length | Must not flagT2 · Tool-corroborated · twin | Quiet |
helicone-write-api-key-group-of-8-twinhelicone · wrong-length | Must not flagT2 · Tool-corroborated · twin | Quiet |
helicone-write-api-key-leading-glue-twinhelicone · boundary-violation | Must not flagT2 · Tool-corroborated · twin | Quiet |
helicone-write-api-key-legacy-bare-twinhelicone · prefix-near-miss | Must not flagT2 · Tool-corroborated · twin | Quiet |
helicone-write-api-key-provider-segment-glued-twinhelicone · prefix-near-miss | Must not flagT2 · Tool-corroborated · twin | Quiet |
helicone-write-api-key-python-environ-referencehelicone · templated-reference | Must not flagT3 · Project policy | Quiet |
helicone-write-api-key-request-id-public-idhelicone · public-identifier | Must not flagT2 · Tool-corroborated | Quiet |
helicone-write-api-key-role-guidance-prosehelicone · prose-mention | Must not flagT3 · Project policy | Quiet |
helicone-write-api-key-segment-order-twinhelicone · prefix-near-miss | Must not flagT2 · Tool-corroborated · twin | Quiet |
helicone-write-api-key-three-groups-twinhelicone · wrong-length | Must not flagT2 · Tool-corroborated · twin | Quiet |
helicone-write-api-key-trailing-glue-twinhelicone · boundary-violation | Must not flagT2 · Tool-corroborated · twin | Quiet |
helicone-write-api-key-truncated-near-misshelicone · format-near-miss | Must not flagT2 · Tool-corroborated | Quiet |
helicone-write-api-key-underscore-separator-in-path-twinhelicone · boundary-violation | Must not flagT2 · Tool-corroborated · twin | Quiet |
helicone-write-api-key-underscore-separators-twinhelicone · boundary-violation | Must not flagT2 · Tool-corroborated · twin | Quiet |
helicone-write-api-key-uppercase-byte-twinhelicone · wrong-alphabet | Must not flagT2 · Tool-corroborated · twin | Quiet |
helicone-write-api-key-urls-public-idhelicone · public-identifier | Must not flagT2 · Tool-corroborated | Quiet |
helicone-write-api-key-word-groups-near-misshelicone · format-near-miss | Must not flagT2 · Tool-corroborated | Quiet |
Sources
Documentation and code
- docs.helicone.ai/helicone-headers/helicone-auth
- github.com/redact-secret/redact-secret/blob/270faf84dc12f6a4a4cf61fe3ffab7aadc4f7262/docs/audits/evidence/860/helicone.md
- github.com/Helicone/helicone/tree/067d9290acb4f1fc9320e902fc67b4b399b50363
Research log
- redact-secret/redact-secret#860Research issue
- redact-secret/redact-secret#907Research issue
- redact-secret/redact-secret-benchmarks#434Research issue
- Final evidence, pinned to a commit/redact-secret/redact-secret/blob/8b6a5fde52ecb4dfce13f09c7a947062d21483c7/docs/audits/evidence/860/helicone.md