Control one axis of rotation
The controller commands an internal wheel. The test tracks the simulated body angle, rotation rate and wheel momentum as commands and faults occur.
Inspect the model and reproduction pathExperiment CP-001 · Revision 2 · rejected
Do two implementations report the same simulated spacecraft motion, and do seven registered scenarios stay within their timing, pointing, rotation-rate, wheel-momentum, and evidence limits?
In plain English
2f08...b3dbPicture the experiment
The controller commands an internal wheel. The test tracks the simulated body angle, rotation rate and wheel momentum as commands and faults occur.
Inspect the model and reproduction pathTwo paths receive the same inputs. Their agreement checks the reported motion, while separate obligations decide whether that motion stays within the limits.
Inspect the matched-input comparisonIn the highlighted retained case, the pointing limit is crossed. A correct replay preserves that failure so readers can see why the overall result is rejected.
Follow the retained failure step by stepResult in brief
An obligation is a rule fixed before the run. 2 of 63 rules have reproducible counterexamples, so this result cannot be accepted.
At 1.010 s, the retained measurement reached 0.051 rad against the registered 0.050 rad limit.
This result covers the registered single-axis model and seven scenarios. It does not establish hardware safety, flight readiness, or universal controller correctness.
Quaternion w,x,y,z (nano): 999674893, 25497237, 0, 0
Input 1010000000 ns · safe mode true · sensor valid true · watchdog expired false · command 0 nano N m.
Layer two · Understand the result
Rate 0 nanorad/s.
Command 0 nano N m; sensor valid false.
The retained input records the watchdog transition.
Rate 100000000 nanorad/s.
Absolute attitude error first exceeds 50000000 nanorad.
1001 retained states.
acceptedacceptedacceptedacceptedacceptedacceptedacceptedacceptedinconclusive
2c04...d18crejectedacceptedacceptedacceptedacceptedacceptedacceptedacceptedinconclusive
05d1...58d1acceptedacceptedacceptedacceptedrejectedacceptedacceptedacceptedinconclusive
7a44...9f86acceptedacceptedacceptedacceptedacceptedacceptedacceptedacceptedinconclusive
4716...4baerefusedrefusedrefusedrefusedrefusedrefusedinconclusiveinconclusiveinconclusive
aa8c...de5cacceptedacceptedacceptedacceptedinconclusiveacceptedacceptedacceptedinconclusive
bce9...3aeboperational_failureoperational_failureoperational_failureoperational_failureoperational_failureoperational_failureinconclusiveinconclusiveinconclusive
02d8...6460Matched-input quaternion replay agrees within 20000 nanorad/s and 20000 nanorad unless stated. Stopping rule: Qualify historical inputs, then execute each declared revision2 scenario once in order. Retain refusal and incomplete resource-bound evidence and continue to the next declared scenario. Unexpected arithmetic, identity, time, or output-bound failure aborts without emitting a canonical result. No retries or hidden repeat trials.
| Scenario | Status | Rate difference | Attitude difference | Matched inputs |
|---|---|---|---|---|
| S-001 | agreed | 225 nanorad/s | 614 nanorad | true |
| S-002 | agreed | 225 nanorad/s | 614 nanorad | true |
| S-003 | agreed | 0 nanorad/s | 0 nanorad | true |
| S-004 | agreed | 434 nanorad/s | 1498 nanorad | true |
| S-005 | unavailable | 0 nanorad/s | 0 nanorad | true |
| S-006 | agreed | 228 nanorad/s | 570 nanorad | true |
| S-007 | unavailable | 0 nanorad/s | 0 nanorad | true |
Bulk evidence is served as digest-addressed files. Every link below was validated at build time against a digest bound in the canonical result.
| Obligation | State | Meaning |
|---|---|---|
| S-001-OBL-DEADLINE | accepted | Accepted: every required bounded obligation passed. |
| S-001-OBL-WATCHDOG | accepted | Accepted: every required bounded obligation passed. |
| S-001-OBL-TORQUE | accepted | Accepted: every required bounded obligation passed. |
| S-001-OBL-MOMENTUM | accepted | Accepted: every required bounded obligation passed. |
| S-001-OBL-ATTITUDE | accepted | Accepted: every required bounded obligation passed. |
| S-001-OBL-RATE | accepted | Accepted: every required bounded obligation passed. |
| S-001-OBL-COVERAGE | accepted | Accepted: every required bounded obligation passed. |
| S-001-OBL-BASELINE | accepted | Accepted: every required bounded obligation passed. |
| S-001-OBL-COMPOSITION | inconclusive | Inconclusive: valid execution could not distinguish the hypotheses. |
| S-002-OBL-DEADLINE | rejected | Rejected: a registered obligation has a reproducible counterexample. |
| S-002-OBL-WATCHDOG | accepted | Accepted: every required bounded obligation passed. |
| S-002-OBL-TORQUE | accepted | Accepted: every required bounded obligation passed. |
| S-002-OBL-MOMENTUM | accepted | Accepted: every required bounded obligation passed. |
| S-002-OBL-ATTITUDE | accepted | Accepted: every required bounded obligation passed. |
| S-002-OBL-RATE | accepted | Accepted: every required bounded obligation passed. |
| S-002-OBL-COVERAGE | accepted | Accepted: every required bounded obligation passed. |
| S-002-OBL-BASELINE | accepted | Accepted: every required bounded obligation passed. |
| S-002-OBL-COMPOSITION | inconclusive | Inconclusive: valid execution could not distinguish the hypotheses. |
| S-003-OBL-DEADLINE | accepted | Accepted: every required bounded obligation passed. |
| S-003-OBL-WATCHDOG | accepted | Accepted: every required bounded obligation passed. |
| S-003-OBL-TORQUE | accepted | Accepted: every required bounded obligation passed. |
| S-003-OBL-MOMENTUM | accepted | Accepted: every required bounded obligation passed. |
| S-003-OBL-ATTITUDE | rejected | Rejected: a registered obligation has a reproducible counterexample. |
| S-003-OBL-RATE | accepted | Accepted: every required bounded obligation passed. |
| S-003-OBL-COVERAGE | accepted | Accepted: every required bounded obligation passed. |
| S-003-OBL-BASELINE | accepted | Accepted: every required bounded obligation passed. |
| S-003-OBL-COMPOSITION | inconclusive | Inconclusive: valid execution could not distinguish the hypotheses. |
| S-004-OBL-DEADLINE | accepted | Accepted: every required bounded obligation passed. |
| S-004-OBL-WATCHDOG | accepted | Accepted: every required bounded obligation passed. |
| S-004-OBL-TORQUE | accepted | Accepted: every required bounded obligation passed. |
| S-004-OBL-MOMENTUM | accepted | Accepted: every required bounded obligation passed. |
| S-004-OBL-ATTITUDE | accepted | Accepted: every required bounded obligation passed. |
| S-004-OBL-RATE | accepted | Accepted: every required bounded obligation passed. |
| S-004-OBL-COVERAGE | accepted | Accepted: every required bounded obligation passed. |
| S-004-OBL-BASELINE | accepted | Accepted: every required bounded obligation passed. |
| S-004-OBL-COMPOSITION | inconclusive | Inconclusive: valid execution could not distinguish the hypotheses. |
| S-005-OBL-DEADLINE | refused | Refused: semantics, evidence, mapping, or scope are unsupported. |
| S-005-OBL-WATCHDOG | refused | Refused: semantics, evidence, mapping, or scope are unsupported. |
| S-005-OBL-TORQUE | refused | Refused: semantics, evidence, mapping, or scope are unsupported. |
| S-005-OBL-MOMENTUM | refused | Refused: semantics, evidence, mapping, or scope are unsupported. |
| S-005-OBL-ATTITUDE | refused | Refused: semantics, evidence, mapping, or scope are unsupported. |
| S-005-OBL-RATE | refused | Refused: semantics, evidence, mapping, or scope are unsupported. |
| S-005-OBL-COVERAGE | inconclusive | Inconclusive: valid execution could not distinguish the hypotheses. |
| S-005-OBL-BASELINE | inconclusive | Inconclusive: valid execution could not distinguish the hypotheses. |
| S-005-OBL-COMPOSITION | inconclusive | Inconclusive: valid execution could not distinguish the hypotheses. |
| S-006-OBL-DEADLINE | accepted | Accepted: every required bounded obligation passed. |
| S-006-OBL-WATCHDOG | accepted | Accepted: every required bounded obligation passed. |
| S-006-OBL-TORQUE | accepted | Accepted: every required bounded obligation passed. |
| S-006-OBL-MOMENTUM | accepted | Accepted: every required bounded obligation passed. |
| S-006-OBL-ATTITUDE | inconclusive | Inconclusive: valid execution could not distinguish the hypotheses. |
| S-006-OBL-RATE | accepted | Accepted: every required bounded obligation passed. |
| S-006-OBL-COVERAGE | accepted | Accepted: every required bounded obligation passed. |
| S-006-OBL-BASELINE | accepted | Accepted: every required bounded obligation passed. |
| S-006-OBL-COMPOSITION | inconclusive | Inconclusive: valid execution could not distinguish the hypotheses. |
| S-007-OBL-DEADLINE | operational_failure | Operational failure: evaluation did not complete. |
| S-007-OBL-WATCHDOG | operational_failure | Operational failure: evaluation did not complete. |
| S-007-OBL-TORQUE | operational_failure | Operational failure: evaluation did not complete. |
| S-007-OBL-MOMENTUM | operational_failure | Operational failure: evaluation did not complete. |
| S-007-OBL-ATTITUDE | operational_failure | Operational failure: evaluation did not complete. |
| S-007-OBL-RATE | operational_failure | Operational failure: evaluation did not complete. |
| S-007-OBL-COVERAGE | inconclusive | Inconclusive: valid execution could not distinguish the hypotheses. |
| S-007-OBL-BASELINE | inconclusive | Inconclusive: valid execution could not distinguish the hypotheses. |
| S-007-OBL-COMPOSITION | inconclusive | Inconclusive: valid execution could not distinguish the hypotheses. |
Tomorrow, Tested. TT/CP-001 revision 2:CP-001 corrected single-axis measurement audit. Result rejected. Experiment identity sha256:6a80069440597c54d4d4c1c22a645c2fd78275e0a9e472a6ed0bc9dd9ffdb510. Result identity sha256:2f08a13a6b263be1b78737bc76bd8729c4e13a02870ac4ec6aa068453356b3db.
Contract sha256:d9b93481f8d2840c8a522ef459a65b1050a519a737716deafc188419297521f0. Historical revision 1 resultsha256:7284916be9b72873634c3e146c78ded672ada6be5af6a4b9285f3724bda47ae0. Revision 2 supersedes measurement interpretation without rewriting revision 1 bytes.
cargo run --bin tt -- qualify-cp001.cargo run --bin tt -- execute-cp001 --revision 2 --evidence.pnpm --filter @tomorrow-tested/atlas run generate.pnpm --filter @tomorrow-tested/atlas run build.Warning: Revision 2 supersedes measurement interpretation, never historical bytes. Single-axis software simulation only; native instruments absent.
Warning: Seed values label deterministic scenarios; one primary execution each, zero stochastic samples and zero retries.
Warning: Cross-domain composition is unestablished; inertia sensitivity is not baseline disagreement.