Security & Responsible Disclosure
What this page covers
Vulnerability reporting, responsible disclosure policy, pen-testing scope, safe-harbor terms, and security posture for the Stigmem project.
Audience: security researchers, pen testers, node operators, protocol implementers.
Reporting a vulnerability
Do not open a public GitHub issue for security vulnerabilities.
Use GitHub's private advisory path.
- Go to the Security Advisories page.
- Click "Report a vulnerability".
- Include: description, reproduction steps, environment (backend type, Stigmem version, config), potential impact, and suggested fix if known.
Response SLAs:
See SECURITY.md for the full disclosure policy.
Supported versions
0.9.0a*retracted pre-reset label< 0.9.0a1pre-reset–v2.0), not tagged releases.Pen-testing scope
In scope
/v1/facts, /v1/query, /v1/lint, /v1/synthesis, /v1/decay, /v1/conflicts, /v1/federation/*. Authenticated and unauthenticated paths.assert_fact and query_facts tool surface.Out of scope
docs.stigmem.devSafe-harbor terms
If you conduct good-faith testing within the scope above, Eidetic Labs will not pursue legal action and will publicly credit you in SECURITY.md and the relevant release notes (unless you prefer anonymity).
"Good faith" means
No third-party data
You do not access, exfiltrate, or modify data that is not yours.
Your own instance
You test against your own node or a dedicated test environment.
Private before public
You report findings privately before public disclosure.
No DoS for others
You do not cause service disruption to other users' nodes.
Minimal exploitation
You do not exploit a finding beyond what is necessary to confirm it exists.
Severity guidance
Use CVSS 4.0 as the primary severity signal.
local or team facts without authorization.enforce mode.Advisory publication
Stigmem publishes GitHub Security Advisories for Critical and High CVSS 4.0 findings that affect a supported published artifact once a patched version is available. The v0.9.0a2 hardening release includes six Critical/High GHSAs.
pip install --upgrade --pre stigmem-node
# or, for the meta-package install:
pip install --upgrade --pre 'stigmem[node]'
Security posture — v0.9.0a2
Posture-reset note.
The 2026-05-08 reset to v0.9.0a1 carried forward the
dependency-fix posture from the withdrawn v1.0 release-candidate
snapshot. Several threat-model controls (mTLS-default federation,
persistent audit log, per-principal rate limits, capability-level
cross-org instruction validation, bounded HLC skew, the ADR-016
storage-immutability stack) remain future hardened-core work and are
not yet in effect at v0.9.0a2. Adopters running federation across
organizational boundaries should wait until those controls ship and
complete operator validation.
The dependency-alert posture carried forward to v0.9.0a2 has zero unaddressed Dependabot alerts:
Security controls in effect
pip-audit, pnpm audit, and bandit run as blocking steps on every PR.Audit tooling
pip-auditpython-tests job; exits non-zero on any moderate+ CVE.pnpm auditnode-tests job; --audit-level=moderate.banditpython-tests job; configured in [tool.bandit].Run locally:
# Python dependency audit
uv run pip-audit
# Python static security analysis
uv run bandit -r node/src/ sdks/stigmem-py/src/ -c pyproject.toml
# Node.js dependency audit
pnpm audit --audit-level=moderate
Running a test environment
# Clone the repo
git clone https://github.com/eidetic-labs/stigmem
cd stigmem
# Start a node with Docker Compose
docker compose up -d stigmem-node
# Create a test API key
curl -X POST http://localhost:8000/v1/admin/keys \
-H "Authorization: Bearer $STIGMEM_ADMIN_KEY" \
-H "Content-Type: application/json" \
-d '{"label": "pentest", "scopes": ["public", "team"]}'
For federation testing, docker-compose.federation.yml spins up a 2-node topology:
docker compose -f docker-compose.federation.yml up -d
Coordinated disclosure
The default window is 90 days from acknowledgment of a valid finding.
Actively exploited
Faster coordination with reporter agreement.
Straightforward fix
Faster publication timeline communicated.
90 days insufficient
Extension discussed with the reporter.
Bug bounty
Stigmem does not currently operate a paid bug bounty program. Valid findings are recognized with:
Public credit
In SECURITY.md and the fixing release's changelog.
Spec attribution
In spec errata if the finding affects wire-format or protocol behavior.
See also
Community Pen-Test Handbook
Full engagement guide with report template.
Container Hardening
Distroless, seccomp, non-root.
Key Rotation
Ed25519 key lifecycle and dual-trust windows.
Audit & Quotas
Audit log surface and per-principal rate limiting.