Skip to content

fix: recognize a trailing [key=slug] token in status-line decisions - #2302

Open
RArgu wants to merge 4 commits into
kunchenguid:mainfrom
RArgu:fm/fm-key-position
Open

fix: recognize a trailing [key=slug] token in status-line decisions#2302
RArgu wants to merge 4 commits into
kunchenguid:mainfrom
RArgu:fm/fm-key-position

Conversation

@RArgu

@RArgu RArgu commented Aug 13, 2026

Copy link
Copy Markdown

Summary

  • Teach bin/fm-classify-lib.sh's keyed-decision parser to also accept a trailing [key=slug] token at the end of a status line (for needs-decision, blocked, paused, and resolved lines), matching whichever position a worker actually used, while the canonical between-verb-and-colon position remains canonical and wins on disagreement.
  • A trailing token now requires a whitespace boundary before [key=, so prose glued directly to a bracket group (e.g. cfg[key=env]) is never misread as a stated key.
  • Add a one-line worked example to bin/fm-brief.sh's generated status-protocol rules showing the canonical token position unambiguously.

Test plan

  • bash tests/fm-classify-decision-key.test.sh — full suite passes, including new cases for canonical vs. trailing position, mixed open/close positions, mid-line mentions, and boundary rejection.
  • shellcheck clean on touched bin scripts.
  • no-mistakes pipeline: review, test, document, and lint steps all passed.

RArgu added 4 commits August 13, 2026 01:57
A crewmate wrote needs-decision: <summary> [key=x] with the tag at the
line's end instead of the documented before-colon position, so
fm-send --resolve-key could not close the decision by key. Teach
_fm_decision_key and status_line_note to accept a complete [key=slug]
token anchored at the line's own end, for opening verbs and resolved
lines alike, while a mid-line mention still stays plain prose and the
documented before-colon position still wins on disagreement. Add a
matching one-line example to the brief scaffold's escalation rule.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant