Test index¶
testing-strategy.md covers which kind of test a change
needs, and testing-policy.md covers the one case that has a
rule. This page is the inventory. It lists every test file that exists, the
first line of its module docstring, and the gate that names it in gates.yaml.
A test with no gate is not a lesser test. Brick isolation, unit coverage of a package internal, and the tests of the policy scripts all sit below the gate line on purpose. A gate is a published claim carrying an external reference, and most tests are not that. The column exists so a reader can tell which is which rather than guess.
The page is generated by walking the tree, so a test added and mentioned nowhere still appears. That is the point. A hand-written list goes stale the first time somebody adds a file, and nobody notices until they trust it.
97 test files. 25 are named by a gate in gates.yaml, and 72 sit below the gate line.
| Test | What it proves | Gate |
|---|---|---|
packages/twinflow-agent/tests/test_autonomy.py |
E5a. The tier a call carries, and the audit event that attributes a change. | none |
packages/twinflow-agent/tests/test_brick_isolated.py |
Boundary rule A1.5: this package works installed on its own. | none |
packages/twinflow-agent/tests/test_import.py |
The package imports, and its declared surface is the surface it has. | none |
packages/twinflow-agent/tests/test_local_model.py |
The local model path (ARCHITECTURE.md decision D10, ADR-0002). | none |
packages/twinflow-agent/tests/test_tools.py |
Requirement 7 (one tool) and E26d, the structured-output layer. | none |
packages/twinflow-api/tests/test_app.py |
The HTTP surface of foundations section 5.13, over a real recorded run. | none |
packages/twinflow-api/tests/test_brick_isolated.py |
Boundary rule A1.5: this package works installed on its own. | none |
packages/twinflow-api/tests/test_cursor.py |
The cursor is the whole of the pagination promise, so it is tested alone. | none |
packages/twinflow-api/tests/test_import.py |
no module docstring | none |
packages/twinflow-api/tests/test_main.py |
The process entry point: what it reads, and what it refuses to claim. | none |
packages/twinflow-api/tests/test_metrics.py |
The metric registry of foundations section 5.13, addressed without a request. | none |
packages/twinflow-api/tests/test_pagination.py |
page_of called as a library function, which is where its refusals live. |
none |
packages/twinflow-api/tests/test_pagination_properties.py |
INV-K16 as a property: a cursor walk sees the log exactly once, in order. | none |
packages/twinflow-config/tests/test_brick_isolated.py |
Boundary rule A1.5: this package works installed with only what it declares. | none |
packages/twinflow-config/tests/test_config_validation.py |
Gate CFG-001: every shipped config validates, and every invalid fixture | VAL-GATE-CFG-001 |
packages/twinflow-config/tests/test_metrics.py |
The metric registry envelope (E26b), and the rules of foundations 5.15. | none |
packages/twinflow-config/tests/test_uns.py |
The UNS contract of ARCHITECTURE.md section 5, asserted rather than assumed. | none |
packages/twinflow-config/tests/test_uns_properties.py |
The naming properties, over generated names rather than chosen ones. | none |
packages/twinflow-dashboard/tests/test_accessibility_floor.py |
Gate VAL-GATE-A11Y-001, as far as a Python tier can honestly take it. | VAL-GATE-A11Y-001 |
packages/twinflow-dashboard/tests/test_app.py |
The three routes this process serves, and the one it writes through. | none |
packages/twinflow-dashboard/tests/test_brick_isolated.py |
Boundary rule A1.5: this package works installed on its own. | none |
packages/twinflow-dashboard/tests/test_contract_drift.py |
Contract tests CT-UI-2 and CT-UI-3, as far as this release can carry them. | none |
packages/twinflow-dashboard/tests/test_import.py |
no module docstring | none |
packages/twinflow-dashboard/tests/test_main.py |
The process entry point: the two settings it refuses to invent, and its clock. | none |
packages/twinflow-dashboard/tests/test_severity.py |
The severity model and the two orderings it owns. | none |
packages/twinflow-kernel/tests/test_brick_isolated.py |
Boundary rule A1.5: this package works installed with only what it declares. | none |
packages/twinflow-kernel/tests/test_environment.py |
The environment driver seam (E40), which ships in P0 with a null driver. | none |
packages/twinflow-kernel/tests/test_mqtt.py |
The production adapter, driven through a client double. | none |
packages/twinflow-kernel/tests/test_network.py |
The NETWORK seam: the filter grammar, delivery order, and the will. | none |
packages/twinflow-kernel/tests/test_paced_clock.py |
The D-02 pacer, and the one property that makes time compression safe. | none |
packages/twinflow-kernel/tests/test_scenario.py |
SCN-F1 and the determinism claim it carries (DET-001). | VAL-GATE-DET-001 |
packages/twinflow-kernel/tests/test_time.py |
The time invariants of foundations section 3.1, asserted rather than reviewed. | none |
packages/twinflow-rng/tests/test_brick_isolated.py |
Boundary rule A1.5: this package works installed on its own. | none |
packages/twinflow-rng/tests/test_derive.py |
no module docstring | VAL-GATE-DET-001, VAL-GATE-RNG-001 |
packages/twinflow-rng/tests/test_import.py |
no module docstring | none |
packages/twinflow-rng/tests/test_registry.py |
no module docstring | none |
packages/twinflow-rng/tests/test_rng_known_answers.py |
The cross-language known-answer gate, VG-VAR-07 and RUST-1. | VAL-GATE-DET-001, VAL-GATE-RNG-001 |
packages/twinflow-rng/tests/test_stream_independence.py |
no module docstring | none |
packages/twinflow-schemas/tests/test_brick_isolated.py |
Boundary rule A1.5: this package works installed on its own. | none |
packages/twinflow-schemas/tests/test_envelope.py |
no module docstring | none |
packages/twinflow-schemas/tests/test_import.py |
no module docstring | none |
packages/twinflow-schemas/tests/test_log_invariants.py |
Gates ENV-001 and DET-001, stated over a log rather than over one event. | VAL-GATE-ENV-001 |
packages/twinflow-schemas/tests/test_packaging.py |
What the published artifacts actually contain. | none |
packages/twinflow-schemas/tests/test_schema_registry.py |
The published registry (C3) and the differ behind gate SCH-001. | VAL-GATE-SCH-001 |
packages/twinflow-sensors/tests/test_brick_isolated.py |
Boundary rule A1.5: this package works installed on its own. | none |
packages/twinflow-sensors/tests/test_conformance.py |
The Sparkplug B assertion table, and evidence that every check can fail. | VAL-GATE-SPARK-001 |
packages/twinflow-sensors/tests/test_import.py |
no module docstring | none |
packages/twinflow-sensors/tests/test_main.py |
The device entry point: the session it opens, and what it refuses. | none |
packages/twinflow-sensors/tests/test_portal.py |
The UHF portal reader, attacked at the four places a real one gets it wrong. | none |
packages/twinflow-sensors/tests/test_properties.py |
Hypothesis properties over the four sharp edges of these two work packages. | none |
packages/twinflow-sensors/tests/test_sparkplug.py |
Sparkplug B session rules, each one stated as an observation that fails it. | none |
packages/twinflow-sensors/tests/test_temperature.py |
The conveyor motor temperature sensor. | none |
packages/twinflow-sensors/tests/test_wire.py |
The Sparkplug B wire codec, against specification 6.4.1. | none |
packages/twinflow-storage/tests/test_adapters.py |
A run written to a directory and read back, and every way that can go wrong. | none |
packages/twinflow-storage/tests/test_brick_isolated.py |
Boundary rule A1.5: this package works installed on its own. | none |
packages/twinflow-storage/tests/test_historian.py |
The append-only log, the per-run config snapshot, and the batch table. | none |
packages/twinflow-storage/tests/test_import.py |
no module docstring | none |
packages/twinflow-storage/tests/test_naming.py |
Requirement RA-c: the historian's placement and the names it stores under. | none |
packages/twinflow-twin/tests/test_brick_isolated.py |
Boundary rule A1.5: this package works installed on its own. | none |
packages/twinflow-twin/tests/test_import.py |
no module docstring | none |
packages/twinflow-twin/tests/test_station.py |
Behavior of the receiving and putaway station model. | none |
packages/twinflow-twin/tests/test_station_invariants.py |
The physical invariants of the station model, asserted rather than clamped. | none |
tests/test_banned_terms_gate.py |
The IP hygiene gate (IPH-001). | VAL-GATE-IPH-001 |
tests/test_changelog_completeness.py |
Every recordable commit reaches the changelog, CHANGELOG-1. | none |
tests/test_check_measured_claims.py |
The measured-claims checker, and the states it has to refuse. | none |
tests/test_ci_matrix_gate.py |
The CI matrix gate (CI-001). | VAL-GATE-CI-001 |
tests/test_cla_gate.py |
The contributor agreement gate CLA-001, milestone C13. | VAL-GATE-CLA-001 |
tests/test_comment_judge_paths.py |
The commit-message path check in the comment judge. | none |
tests/test_commit_message_gate.py |
The commit message gate (CC-001). | VAL-GATE-CC-001 |
tests/test_compare_runs.py |
The cross-platform comparison behind DET-002. | VAL-GATE-DET-002 |
tests/test_compose_segmentation_gate.py |
RA-b, the Purdue segmentation of the garage compose, held to its own rules. | none |
tests/test_demo.py |
Gate VAL-GATE-DEMO-001, asserted rather than described. | VAL-GATE-DEMO-001 |
tests/test_docs_gate.py |
VAL-GATE-DOC-001, and the property that makes a tag-qualified clause honest. | VAL-GATE-DOC-001 |
tests/test_hook_installation.py |
Installed hooks against the tracked ones, WORKSPACE-2. | none |
tests/test_hook_python_resolution.py |
One interpreter resolution for every hook gate. | none |
tests/test_layer_map_gate.py |
VAL-GATE-TIER-001, the RA-a layer map held to its own completeness rule. | VAL-GATE-TIER-001 |
tests/test_license_allowlist_gate.py |
The license allowlist gate (SEC-001). | VAL-GATE-SEC-001 |
tests/test_license_bytes_gate.py |
The license bytes gate (LIC-001). | VAL-GATE-LIC-001 |
tests/test_link_gate.py |
VAL-GATE-DOC-001, the link half held to its own refusals. | none |
tests/test_measure_row_bytes.py |
The row-size measurement tool, and the two things it must never do. | none |
tests/test_metric_marker_gate.py |
The metric marker gate, and which release owes which number. | none |
tests/test_ops_release_tagged_schema.py |
The ops.release.tagged.v1 contract, and the two gates that read it. |
none |
tests/test_prose_double_dash.py |
DASH-02, the transliterated em dash. | none |
tests/test_prose_topic_type.py |
FM-06, a topic type outside the declared set. | none |
tests/test_regression_test_gate.py |
The regression test gate REG-001. | VAL-GATE-REG-001 |
tests/test_release_gate.py |
The release gate (REL-001). | VAL-GATE-REL-001 |
tests/test_sbom_gate.py |
The SBOM gate, and the property that makes it worth running. | none |
tests/test_spelling_gate.py |
The spelling gate. | none |
tests/test_workflow_supply_chain.py |
The workflows as a supply chain (ACT-001, PROV-001, SAST-001). | VAL-GATE-ACT-001, VAL-GATE-PROV-001, VAL-GATE-SAST-001, VAL-GATE-SEC-001 |
tools/roadmap/tests/test_brick_isolated.py |
Boundary rule A1.5: this package works installed with only what it declares. | none |
tools/roadmap/tests/test_completeness.py |
Done means delivered, and nothing in the tree is unreachable. | VAL-GATE-RMAP-001 |
tools/roadmap/tests/test_drift.py |
Drift: a tracker that disagrees, and a tracker that does not exist yet. | VAL-GATE-RMAP-001 |
tools/roadmap/tests/test_markers.py |
Deferred numbers, and the plan that owes them. | none |
tools/roadmap/tests/test_properties.py |
Property invariants (C4 tier two). | none |
tools/roadmap/tests/test_roadmap.py |
The shipped roadmap, checked as data rather than read as prose. | VAL-GATE-RMAP-001 |
tools/roadmap/tests/test_rules.py |
One test per rule, each against a fixture that breaks exactly that rule. | none |
tools/roadmap/tests/test_sync.py |
The tracker projection and the generated documents (CON-10). | VAL-GATE-RMAP-001 |