threat_model¶
Scope: Threat model skeleton.
Audience: Contributors.
Guarantees: Captures abuse cases, resource risks, and assumptions.
Non-Goals: Mitigations.
Why: This doc exists to record its single responsibility for review.
Overview¶
This doc defines one responsibility.
Architecture components are defined in Architecture.
Read Dependencies before edits.
Read Docs Style for context.
Contracts¶
Each statement is a contract.
Contracts align with tests/unit/test_abuse_case_path_traversal.py.
Contracts link to Dependencies and Docs Style.
Invariants¶
Invariants describe stable behavior.
Checks align with tests/unit/test_abuse_case_path_traversal.py.
Invariants align with Dependencies.
Failure Modes¶
Failures are explicit and tested.
Failure coverage aligns with tests/unit/test_abuse_case_path_traversal.py.
Failures align with Docs Style.
Extension Points¶
Extensions require tests and docs.
Extensions are tracked in Dependencies.
Extensions align with tests/unit/test_abuse_case_path_traversal.py.
Exit Criteria¶
This doc becomes obsolete when the surface ends.
The replacement is linked in Docs Style.
Obsolete docs are removed.
Code refs: tests/unit/test_abuse_case_path_traversal.py.
Threats:
- Conceptual drift in core definitions.
- LLM overreach beyond regulator bounds.
- Performance regression under load.
- Reviewer misinterpretation of claims.
Abuse cases:
- Path traversal via candidate IDs.
- Crafted sequence inputs to bypass validation.
- Unauthorized resume requests for stale runs.
Resource risks:
- Large batch runs exhaust disk.
- Oversized sequences exhaust memory.
- High-rate API requests saturate CPU.
Assumptions:
- Local filesystem permissions prevent cross-tenant access.
- Providers return deterministic results for fixed inputs.
- CI artifacts are not tampered with between steps.