Skip to content

What accepting an issue unblocks is answered by one counterfactual evaluator over the plan graph

What accepting an issue unblocks is answered by one counterfactual evaluator over the plan graph

majordomus://adr/adr-0195proposed idd-planchatgpt-project

it references

referenced by

Nothing in the layer names it. Backlinks are derived, so an empty list is an answer rather than an omission.

195. What accepting an issue unblocks is answered by one counterfactual evaluator over the plan graph

Context

The owner ordered an impact view (2026-10-17) and /proceed ranks by unlock (ADR 0177 (on an unlanded branch), I2973). Two counts would drift.

Decision

plan.impact applies plan.rs's readiness and milestone rules to a copy of the plan with hypothetical acceptances and returns immediate unlocks, transitive reach and remaining blockers; every consumer (proceed, /ui, the site) reads it.

Alternatives rejected

  • Counting downstream dependants
  • A frontend dependency inventory
  • A second graph engine or library

Consequences

I2973 consumes plan.impact rather than its own count; the site page is generated.

Sources

Promoted on 2026-10-18 from the owner's ChatGPT project (workspace chatgpt-majordomus, issue I3100). The owner has not accepted it; it is proposed for the owner's decision.

  • chatgpt-majordomus:c284#5

Where this comes from

canonical file
.ai/repo/adrs/0195-what-accepting-an-issue-unblocks-is-answered-by-one-counterfactu.md
identity
adr-0195
also served as
MCP resource majordomus://adr/adr-0195 · majordomus entity show adr/adr-0195 · GET /api/v1/entity?uri=majordomus://adr/adr-0195
in the Cockpit
/cockpit/objects/adr/adr-0195

This page is generated from the file above by scripts/generate-site-data; editing the page changes nothing, editing the file changes every surface. The relations above are edges of docs/generated/graph.json, which the executable writes from the same index.

Searches the titles and descriptions of every page this site publishes.