Given the same documents and configuration, context resolution produces identical output. Always.
This is not a feature. This is the foundation.
Every operation in this system upholds one guarantee:
f(documents, config, query) → deterministic output
- Same documents
- Same versions
- Same configuration
- Same query
Always the same result.
No randomness. No drift. No "it depends."
| Problem | How determinism solves it |
|---|---|
| "Why did the agent say that?" | Replay the exact context it received |
| "Did something change?" | Hash the output, compare |
| "Can we audit this?" | Yes. Every response is reproducible |
| "Will it work air-gapped?" | No external calls means no variance |
- Random sampling in selection
- Time-based ordering without explicit config
- External API calls during resolution
- Non-deterministic tie-breaking
- Floating point comparison in ranking
- Undefined iteration order over collections
- Debugging: Reproduce any context, anytime
- Compliance: Prove what context was used
- Testing: Assert exact outputs, not approximations
- Caching: If inputs match, output matches
- Trust: The system does what it says
# Run twice, diff must be empty
context resolve --cache ./cache --query "topic" > a.txt
context resolve --cache ./cache --query "topic" > b.txt
diff a.txt b.txtIf this ever fails without config or document changes, we have a bug. Not a quirk. A bug.
- No randomness in core paths — random seeds are bugs
- Sorted iteration everywhere — maps, sets, file listings
- Hash-based versioning — content determines identity
- Reproducible builds — same source → same cache
- Test on every commit — determinism regression = broken build
Most systems optimize for "good enough."
We optimize for "exactly the same."
That's the product.