Skip to content

Prevent scrubbed phones, machine paths, and mislabeled Solana keys from returning - #10

Merged
NullAITech merged 1 commit into
mainfrom
cursor/secret-hygiene-gitleaks-e1bc
Oct 26, 2026
Merged

NullAITech merged 1 commit into
mainfrom
cursor/secret-hygiene-gitleaks-e1bc

Conversation

@NullAITech

Copy link
Copy Markdown
Owner

Summary

The history scrub removed a hardcoded Signal number, /home/zoth, a disk UUID, and an EnvGuard sample that labeled the public receive address as SOLANA_PRIVATE_KEY. This PR adds scanner rules so that material cannot land on main again. No product code changes.

What fails the scan

  • 948-area phone numbers: dashed, dotted, spaced, parenthesized, compact 10-digit, and leading-1 forms. Reserved +1-555-555-0199 fixtures and obvious dummy runs stay allowed. A SIGNAL_ACCOUNT or signal recipient set to any other real NANP number also fails.
  • Literal /home/zoth and /media/neo/.
  • /dev/disk/by-uuid/, /dev/disk/by-partuuid/, /dev/disk/by-id/ hardware serials, and the scrubbed disk UUID prefix.
  • SOLANA_PRIVATE_KEY= when the value is high-entropy base58 (an address or a keypair). Any SOLANA_PRIVATE_KEY inside an EnvGuard file, a sample-env file, or a SAMPLE_ENV assignment fails even when the value is a Demo fake. Fixtures must use SOLANA_ADDRESS and YOUR_* placeholders.

Public receive address

GG2eQbVh8ut1BK6j1A2tz7pSySdLpD38BgyEhGcxdXoK is allowlisted only on the existing labeled payment and treasury surfaces: Agora, the DePay funnel, the public solanaWallet catalog, the public llms checkout copy, and the tool pages that copy that same receiver. The comment in .gitleaks.toml records why. Assigning that address to SOLANA_PRIVATE_KEY still fails.

CI

.github/workflows/gitleaks.yml runs on every pull request and every push, including main.

  • Official gitleaks/gitleaks-action@v3 (v2 cannot run on current GitHub-hosted runners) with gitleaks 8.30.1 and .gitleaks.toml. Findings fail the job.
  • NullAITech is an organization, so the action does not scan until a free GITLEAKS_LICENSE secret is set (https://gitleaks.io). The workflow still fails on findings without that secret: the same v8.30.1 binary scans the tree directly, including on fork pull requests. When the secret is present, a failing action fails the job as well (pull-request comments and the commit-range scan).
  • .pre-commit-config.yaml pins the same gitleaks version for local commits.

Policy and local commands: docs/SECRET-HYGIENE.md.

Verification

  • actionlint 1.7.7 reports no issues in the workflow.
  • gitleaks dir (v8.30.1, .gitleaks.toml) on this tip reports no leaks.
  • gitleaks git --log-opts="-1" on this commit reports no leaks.
  • Synthetic inputs fail for the scrubbed shapes and pass for +1-555-555-0199, #0d9488, SOLANA_ADDRESS=Demo…, and the current tree.
Open in Web Open in Cursor 

Add gitleaks rules, a GitHub Action, and a pre-commit hook so the
948-area Signal number family, developer machine paths, and
mislabeled SOLANA_PRIVATE_KEY samples cannot land on main again.
The public receive address stays allowlisted only on existing
payment and treasury surfaces.

Co-authored-by: NullAI <NullAITech@users.noreply.github.com>
@NullAITech
NullAITech merged commit 5967cf7 into main Oct 26, 2026
2 checks passed
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.

2 participants