@@ -27,6 +27,45 @@ continue it; when it needs to fan out, split, supersede, or create successor
2727work, it writes the new task through the LoopX todo lifecycle and lets the board
2828sync catch up.
2929
30+ ## Priority intent
31+
32+ Priority is an explicit scheduling field, with ` P0 ` highest and ` P4 ` lowest.
33+ Create or edit it independently of the task description:
34+
35+ ``` bash
36+ loopx todo add --goal-id < goal-id> --role agent --priority P1 --text ' <agent action>'
37+ loopx todo update --goal-id < goal-id> --todo-id < todo-id> --priority P3
38+ loopx todo update --goal-id < goal-id> --todo-id < todo-id> --clear-priority
39+ ```
40+
41+ Pass the registered ` --agent-id ` on updates when the Goal has multiple Agents.
42+ The existing authoring, ownership, lease and review requirements still apply.
43+ Chat ` todo.create ` accepts ` priority ` ; reviewed ` todo.update ` edits accept
44+ ` priority ` or ` clear_priority ` . The task management panel uses that reviewed
45+ update path for its priority selector. Priority never grants eligibility,
46+ capabilities, a claim or quota; missing priority is allowed and sorts after P4.
47+ The generated agent authoring hint shows an explicit P1 example, not a global
48+ default or a prerequisite for same-turn binding.
49+
50+ Omitting priority from an ordinary text edit preserves the current priority.
51+ Use ` --clear-priority ` to remove it. Legacy ` --text '[P2] Task' ` remains supported;
52+ a supplied prefix edits priority for old callers. An explicit parameter and a
53+ conflicting prefix are rejected before writing, as are simultaneous set/clear
54+ instructions. Words such as ` P0 ` inside ordinary prose have no scheduling meaning.
55+ Historical decorated prefixes such as ` [P2-review] ` read as P2; an edit renders
56+ the normalized ` [P2] ` prefix. P3/P4 participate in ordering and repair suggestions
57+ without being silently promoted to P1. Existing repair-suggestion and historical
58+ event-replay defaults retain their own contracts; they do not impose a default
59+ on new unprioritized Todos.
60+
61+ ` todos/priority.ts ` owns authoring intent and ordering. The generated coordination
62+ contract supplies its vocabulary and legacy grammar to Python read adapters.
63+ Markdown keeps the compatible ` [Pn] description ` display; native authority records
64+ also carry canonical priority/title. File, SQLite and PostgreSQL updates use the
65+ existing admitted head, CAS and operation receipt. A retry retains the original
66+ intent identity and returns its historical result; changing priority under the
67+ same operation ID is a conflict. No provider promotion or receipt rewrite occurs.
68+
3069## Write Contract
3170
3271For a caller-owned runtime that already registered its Goal/Agent, generate the
0 commit comments