This release has been yanked by its maintainers, and will be ignored by installers, except when explicitly specified.
Consider using release 1.1.0 instead.
Reason given by maintainers: Schema file was not shipped in the wheel, causing heptagon declare and heptagon verify to fail on fresh installs. Fixed in 1.0.1.
Heptagon
Seven coordinates. Every incident. Verified.
A symbolic, formal, and executable framework for cybersecurity incident response planning and management.
What it does
Heptagon treats every incident record as a seven-coordinate object. An incident without a timestamp, rationale, effect, or lineage is not a complete record — and an incomplete record cannot be certified as truthful.
The framework:
- Declares a Cyber Incident Response Plan in code
- Verifies plan completeness against six compliance gates
- Simulates scenario escalations through the reporting DAG
- Logs incidents with tamper-evident evidence and decisions
- Audits every record for 7D coordinate coverage
- Rejects incomplete records with specific, actionable reasons
The seven coordinates
| Coordinate | Name | Meaning |
|---|---|---|
| B | Spacetime | Timestamp + origin |
| F5 | Intention | Why the actor acted |
| F6 | Effect | What changed downstream |
| F7 | Lineage | Position in the reporting chain |
A complete record populates all seven. The check_7d_completeness()
gate enforces this on every logged evidence and decision.
Install
pip install heptagon7
The PyPI project is named heptagon7 — the name heptagon was
already taken on PyPI. After installing, the Python import and the
CLI command are both heptagon:
import heptagon # library
heptagon --help # CLI
For local development:
python3 -m venv .venv
source .venv/bin/activate
pip install -e .
Quick start
python -m heptagon.cirp.model # reference CIRP demo
python -m heptagon.core.symbolic # symbolic layer demo
python -m heptagon.simulation.stuxnet_test # historical validation
python -m pytest tests/ -v # full test suite
The six compliance gates
CIRPModel.verify_all() runs:
check_teams_complete— all 5 R-C-C-P-T roles present and completecheck_reporting_chain— every reporter can reach an executivecheck_evidence_completeness— unique hashes, no dangling refs, chronology validcheck_no_hidden_thing— every source's slice reconciles with the global logcheck_break_glass_logged— every emergency override is marked AND evidencedcheck_7d_completeness— every record populates all seven coordinates
Architecture
heptagon/
core/ Symbolic layer (bundle, sheaf, lineage, operators)
cirp/ CIRP primitives + compliance checks + tabletop
simulation/ Deterministic agent-based simulator
audit/ (future) signature verification, reporting
Honest limits
- Assumes honest actors. This tool catches accidental omission, not adversarial falsification. Signatures are content hashes, not PKI signatures. A v1 threat model will address the malicious case.
- Does not replace human judgment. It verifies that decisions are logged, not that they are wise.
- Does not certify compliance. It reports whether a plan is internally consistent, not whether it meets any specific regulation.
- Not production-ready before v1.0. The API may change.
History
The framework's design traces to a symbolic model of comprehensive
presentation (al-'ard fi fada' al-shumul). The mathematics is a
language for meaning, not a claim about physics. See docs/PHILOSOPHY.md
(future) for the full derivation.
License
MIT. See LICENSE.
Status
v0.1.0 — Audit-closed. All twelve originally identified issues resolved or retracted. 58 tests passing.
Metadata
Release files for heptagon7 1.0.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| heptagon7-1.0.0.tar.gz | 40.0 kB | Without provenance | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| heptagon7-1.0.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 72.7 kB
Release files / heptagon7-1.0.0.tar.gz
| Download URL | heptagon7-1.0.0.tar.gz |
|---|---|
| Size | 40.0 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
7b0eac24945581725a86053e6423c0aab58f974d9aa2bc815edb7935f5c43671
|
|
BLAKE2b-256 checksum How to use checksums |
a10b023be021d5331afce9727aeac52e9e07da039e920d676dda1367fc4dac14
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.12.3
|
Release files / heptagon7-1.0.0-py3-none-any.whl
| Download URL | heptagon7-1.0.0-py3-none-any.whl |
|---|---|
| Size | 32.6 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
9d0b40099a7cf8ed777320acbb12c5144154be172db5b76284686c375634ca34
|
|
BLAKE2b-256 checksum How to use checksums |
8413d1064239cad83047b48e997c327771899ad6b5758101293805990830a113
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.12.3
|
Security for heptagon7 1.0.0
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.