Skip to content

I0603 — Report drift from the shared policy in one command

Report, in one command, every way a repository's effective policy differs from the shared source it names, separating declared overrides from undeclared divergence.

BLOCKED wave 2 · p3 · implementation profile · runs alone

Part of shared-policy — Shared policy across repositories and workers.

Blocked. This issue cannot start until I0602, milestone:shared-policy are done. The status is derived from that, not declared.

Objective

Report, in one command, every way a repository's effective policy differs from the shared source it names, separating declared overrides from undeclared divergence.

Why

The point of naming a shared source is being able to see where it is not being followed. Without one command that answers that, shared policy is just a longer path to the same drift.

Current state

A shared source is resolved and overrides are declared. Nothing summarises the difference.

Desired state

One command lists each difference, says whether it is a declared override or undeclared divergence, and names the reproduce command for each.

Scope

  • lib
  • bin

Out of scope

  • Changing anybody's policy; the command reports and never writes

Dependencies

What waits on this

Acceptance criteria

  • Every difference is listed with the key, both values, and whether it is declared
  • Undeclared divergence exits non-zero and declared overrides do not
  • Every finding carries a reproduce command
  • The command writes nothing

Validation

  • bash test/run.sh

Evidence required

  • suite

Evidence

None recorded. Every token above needs a command or an artifact behind it before this issue can be completed; narrative is refused.

Risk

A drift report that is noisy is a drift report nobody runs; declared overrides have to be quiet by default.

Timeline

started
verified
completed

Those three fields, the evidence above and the state of the dependencies are all the status is made of. There is no status field to disagree with them.

Canonical record: .ai/repo/project/issues/I0603.yaml. Read it back with majordomus plan show I0603.