An issue is open, diagnosing, located, resolved or wontfix — nothing else
The playbook, the README and the status skill knew five statuses; the cycle check knew a sixth, 'fixed', and not 'wontfix'. Eleven issues sat in the sixth for weeks with their fixes shipped, one step short of closed. They are resolved; the check refuses the word from now on and accepts the one the playbook allows.
This commit is contained in:
@@ -12,8 +12,8 @@ What is enforced:
|
||||
known `status:`. A TO-BE doc names at least one decision (`decisions:`) -- no
|
||||
design without a decision -- and once `in-progress` or `implemented` it names
|
||||
its owning code (`code:`) -- no development without a design that says where.
|
||||
issues a known `status:`; once `located` or `fixed`, `located-in:` names the owner;
|
||||
once `fixed` or `resolved`, `fixed-by:` says what fixed it (prose counts --
|
||||
issues a known `status:`; once `located`, `located-in:` names the owner;
|
||||
once `resolved`, `fixed-by:` says what fixed it (prose counts --
|
||||
"nothing, the capability existed" is an answer).
|
||||
research a known `status:`; a `graduated` overview says what it `became:`, and every
|
||||
target it names exists.
|
||||
@@ -37,7 +37,7 @@ import sys
|
||||
ROOT = os.path.normpath(os.path.join(os.path.dirname(__file__), "..", ".."))
|
||||
|
||||
DESIGN_STATUSES = {"proposed", "designed", "in-progress", "implemented", "abandoned"}
|
||||
ISSUE_STATUSES = {"open", "diagnosing", "located", "fixed", "resolved"}
|
||||
ISSUE_STATUSES = {"open", "diagnosing", "located", "resolved", "wontfix"}
|
||||
RESEARCH_STATUSES = {"active", "graduated", "abandoned"}
|
||||
|
||||
|
||||
@@ -117,9 +117,9 @@ def main():
|
||||
status = front.get("status")
|
||||
if status not in ISSUE_STATUSES:
|
||||
bad(path, "status %r is not one of %s" % (status, sorted(ISSUE_STATUSES)))
|
||||
if status in ("located", "fixed") and not listy(front, "located-in"):
|
||||
if status in ("located", "resolved") and not listy(front, "located-in"):
|
||||
bad(path, "status %s but located-in is empty" % status)
|
||||
if status in ("fixed", "resolved") and not listy(front, "fixed-by"):
|
||||
if status == "resolved" and not listy(front, "fixed-by"):
|
||||
bad(path, "status %s but fixed-by says nothing" % status)
|
||||
|
||||
# ---- research ----------------------------------------------------------------------
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
---
|
||||
status: fixed
|
||||
status: resolved
|
||||
opened: 2026-08-28
|
||||
located-in: [mesh-lab, mesh-host]
|
||||
fixed-by:
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
---
|
||||
status: fixed
|
||||
status: resolved
|
||||
opened: 2026-08-29
|
||||
located-in: [mesh-host, mesh-control]
|
||||
fixed-by:
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
---
|
||||
status: fixed
|
||||
status: resolved
|
||||
opened: 2026-08-30
|
||||
located-in: [mesh-host]
|
||||
fixed-by: mesh-host — apply attempts every resource and reports every failure
|
||||
|
||||
+1
-1
@@ -1,5 +1,5 @@
|
||||
---
|
||||
status: fixed
|
||||
status: resolved
|
||||
opened: 2026-09-01
|
||||
located-in: [mesh-control]
|
||||
fixed-by: mesh-control df62bb5
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
---
|
||||
status: fixed
|
||||
status: resolved
|
||||
opened: 2026-09-01
|
||||
located-in: [mesh-control]
|
||||
fixed-by: mesh-control 0af3ea1
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
---
|
||||
status: fixed
|
||||
status: resolved
|
||||
opened: 2026-09-01
|
||||
located-in: [mesh-control]
|
||||
fixed-by: mesh-control 122680b
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
---
|
||||
status: fixed
|
||||
status: resolved
|
||||
opened: 2026-09-01
|
||||
located-in: [mesh-lab]
|
||||
fixed-by: mesh-lab 3503ad9
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
---
|
||||
status: fixed
|
||||
status: resolved
|
||||
opened: 2026-09-01
|
||||
located-in: [mesh-control, mesh-host]
|
||||
fixed-by: mesh-control 1f5b70a, 41f7c51; mesh-host b91342a
|
||||
|
||||
+1
-1
@@ -1,5 +1,5 @@
|
||||
---
|
||||
status: fixed
|
||||
status: resolved
|
||||
opened: 2026-09-01
|
||||
located-in: [mesh-control]
|
||||
fixed-by: mesh-control be62f49; mesh-lab f85dbb0
|
||||
|
||||
+1
-1
@@ -1,5 +1,5 @@
|
||||
---
|
||||
status: fixed
|
||||
status: resolved
|
||||
opened: 2026-09-01
|
||||
located-in: [mesh-control]
|
||||
fixed-by: mesh-control 38d4e77
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
---
|
||||
status: fixed
|
||||
status: resolved
|
||||
opened: 2026-09-14
|
||||
located-in: [mesh-host, mesh-catalog]
|
||||
fixed-by: mesh-host 56124c3; mesh-catalog 5e4dc37; mesh-lab 440e265
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
---
|
||||
status: resolved
|
||||
opened: 2026-09-20
|
||||
located-in: []
|
||||
located-in: [hq 03-DESIGN/01-to-be/24-the-secrets-vault.md]
|
||||
fixed-by: graduated — hq fc4ab37 (ADR 0085, to-be design 24)
|
||||
amended-design: 03-DESIGN/01-to-be/24-the-secrets-vault.md
|
||||
---
|
||||
|
||||
Reference in New Issue
Block a user