Skip to content
Cockpit0.29.0
A snapshot: read at commit 707a04c7ce8 on 2026-10-18T00:06:01Z by majordomus 0.29.0. Nothing on this page is read again. See it live

I2478

A rule opens its proof: what it states, the tests that prove it, what is missing, and the rules around it

Where it stands

devtask.issue
Readiness
complete completion is recorded and every required evidence token is present
Status
DONE
Can start
not now
Milestone
Milestone status
ACTIVE
Wave
2
Waiting on
none
Holds back
Behind it in all
2
Evidence
2 of 2
A move writes the repository: it stamps one field of this issue's record and appends one event to the ledger, and a commit will carry both.
The same moves from a terminal

majordomus plan start I2478

majordomus plan verify I2478

majordomus plan done I2478

What it is

Objective
Let a reader of majordomus ui open any rule (/ui/governance?rule=<id>) into an inspector from rules.show: what it states, how it is enforced, every test that proves it with the state of its proof, the gates that run them, what is still missing to prove it, and the rules it depends on and that require it, each a link.
Why
The owner asked on 2026-10-11 to implement every view of the UI screenshots, maximally interactive (pack v3 M10 governance). The Governance screen lists 165 rules as rows that open nothing, and its rule column read a field the report gives as an object, so a row did not even name its rule; rules.show already joins one rule to its proof.
Now
A rule is a row of the Governance screen that opens nothing and does not name its rule.
Wanted
?rule=<id> asks rules.show and opens the inspector above the Governance screen: the rule's identity, title, class, status and proof state, its statement, what its proof state means, how it is enforced (mode and validator), its gates, the rules it depends on and that require it (each a link), where it is declared, every test that proves it with its state and meaning, and what is still missing to prove it. The Governance rows name each rule by its id and title and lead to its inspector. A rule the index does not hold is shown as the capability's refusal; a value that is no rule id is never asked.
Done when
unknown: the record declares no `completion`
Risk
unknown: the record declares no `risk`

Acceptance

  • ?rule=<id> opens the inspector with what proves it and the rules around it as links
  • the Governance rows name each rule and lead to its inspector
  • an unknown rule is said as the capability's refusal, and a value that is no id is never asked
Validation
cargo test --lib ui::ruletest/run.sh 1083_a_rule_opens_its_proof
Evidence required
ui_rule_unit_testsui_rule_case_1083
Evidence present
ui_rule_unit_testsui_rule_case_1083

Scope

Touches
apps/majordomus-cli/src/ui/rule.rsapps/majordomus-cli/src/ui/governance.rsapps/majordomus-cli/src/ui/mod.rs.ai/repo/project/issues/I2478.yamldocs/MAJORDOMUS_UI.mdtest/cases/1083_a_rule_opens_its_proof.sh
Not
unknown: the record declares no `non_scope`
Depends on
Priority
p1
Profile
implementation
Parallel safe
false
Owner
unknown: the record declares no `owner`

The work so far

Branches
none
Merged
none
Commits
0
Trunk
master
Sessions
none
Created
2026-10-11
Updated
2026-10-12T11:01:50Z
Started
2026-10-12T11:01:34Z
Verified
2026-10-12T11:01:39Z
Completed
2026-10-12T11:01:50Z

Synchronisation

Adapter
scripts/github-sync
Repository
unknown: the derived plan's header carries no repository
External issue
unknown: a live GitHub state; this executable makes no network call, so only `scripts/github-sync --check` can answer it
State there
unknown: a live GitHub state; this executable makes no network call, so only `scripts/github-sync --check` can answer it

Findings

Nothing is wrong with these records.