@sjawhar/pi-legion-envoy 1.56.2 → 1.56.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/envoy.js
CHANGED
|
@@ -29945,7 +29945,6 @@ function componentsArgument(z) {
|
|
|
29945
29945
|
}
|
|
29946
29946
|
var SPEC_SECTIONS = [
|
|
29947
29947
|
"Summary",
|
|
29948
|
-
"Decisions needed",
|
|
29949
29948
|
"New since we talked",
|
|
29950
29949
|
"Acceptance",
|
|
29951
29950
|
"Requirements",
|
package/dist/legion.js
CHANGED
|
@@ -16145,7 +16145,7 @@ import { logger } from "@oh-my-pi/pi-utils";
|
|
|
16145
16145
|
// package.json
|
|
16146
16146
|
var package_default = {
|
|
16147
16147
|
name: "@sjawhar/pi-legion-envoy",
|
|
16148
|
-
version: "1.56.
|
|
16148
|
+
version: "1.56.3",
|
|
16149
16149
|
type: "module",
|
|
16150
16150
|
omp: {
|
|
16151
16151
|
extensions: [
|
|
@@ -29264,7 +29264,6 @@ function componentsArgument(z) {
|
|
|
29264
29264
|
}
|
|
29265
29265
|
var SPEC_SECTIONS = [
|
|
29266
29266
|
"Summary",
|
|
29267
|
-
"Decisions needed",
|
|
29268
29267
|
"New since we talked",
|
|
29269
29268
|
"Acceptance",
|
|
29270
29269
|
"Requirements",
|
|
@@ -117,6 +117,18 @@ make the decision a block and must fix the spec.
|
|
|
117
117
|
**Right:** put each decision in the design section it belongs to as an `:::ask{#slug}` block, with
|
|
118
118
|
2–4 options, a recommendation, and surrounding prose that explains the trade-off.
|
|
119
119
|
|
|
120
|
+
A spec that already has the pile is repaired with `move`, not rewritten: `dispatch_doc_edit` with
|
|
121
|
+
`{ op: "move", block: "<block-uuid>", after: "<the sentence that states the options>" }` relocates
|
|
122
|
+
the block and keeps its ask, its answer and its followers; the context paragraphs that were lifted
|
|
123
|
+
out of Design move the same way, and the emptied section is deleted (the same repair, made on
|
|
124
|
+
AGENTC-397 after Sami's 2026-09-20 request: "move the decisions items to be in context of their
|
|
125
|
+
discussion in the spec, not just all piled up at the start with no context"). An ask block has two
|
|
126
|
+
ids: the block id, shown as `:::ask{#<uuid> …}` in the rendered document and taken bare by
|
|
127
|
+
`move`/`delete` in `block` (the `block:<uuid>` form is only for `before`/`after` anchors), and the
|
|
128
|
+
ask id, which `dispatch_open_asks`, the dashboard's `?ask=` link, `dispatch_read` and
|
|
129
|
+
`dispatch_comment({ reply_to_ask })` use. They differ; `dispatch://KEY/ask/<block-id>` answers
|
|
130
|
+
`not found`.
|
|
131
|
+
|
|
120
132
|
See [Typed blocks](#typed-blocks) for the syntax and [Before you ask](#before-you-ask) under
|
|
121
133
|
[Asking](#asking) to decide whether the question is a real decision at all.
|
|
122
134
|
|
|
@@ -212,9 +224,10 @@ of having this discussion" (on a report-table shape), and "What's a fenced PutOb
|
|
|
212
224
|
eval_id? What's an R4 model header? What exactly is the question or uncertainty here?" (on a
|
|
213
225
|
production import). Every `dispatch_ask` passes three gates first:
|
|
214
226
|
|
|
215
|
-
1. **Does it need his authority, taste, or risk appetite?**
|
|
216
|
-
|
|
217
|
-
internals, and contracts between lanes do not: they go to
|
|
227
|
+
1. **Does it need his authority, taste, or risk appetite?** This is the bar for a decision
|
|
228
|
+
written as an `:::ask` block in context ([Decision blocks](#decision-blocks)). Schema shapes,
|
|
229
|
+
table layouts, field names, migration internals, and contracts between lanes do not: they go to
|
|
230
|
+
the platform PO over Envoy, who rules.
|
|
218
231
|
2. **Is there genuine uncertainty?** If not, it is a plan you execute. The one legitimate ask
|
|
219
232
|
without uncertainty is permission for an action only a human can authorise — a production
|
|
220
233
|
write, an external send, a console action — and then the question is that action in one
|
|
@@ -344,6 +357,11 @@ At least one field besides `ask` is required. Use this only while the same decis
|
|
|
344
357
|
log and invalidates any answer draft against the prior `edited_at` revision, so the human sees the new wording and explicitly reconfirms.
|
|
345
358
|
An answered or resolved ask cannot be edited. If the decision is moot or superseded, retract the old ask and open a new one.
|
|
346
359
|
|
|
360
|
+
An ask that lives as an `ask` block in a document takes its question and options from the document, so edit those with
|
|
361
|
+
`dispatch_doc_edit` (`replace` on the block's text, or `delete`/`insert` on its option items), never with `dispatch_edit_ask`: the
|
|
362
|
+
next document save reasserts the block's text over whatever `dispatch_edit_ask` wrote, and that reversal is logged as an edit by
|
|
363
|
+
the document's saver. `dispatch_edit_ask` is for asks opened with `dispatch_ask` that have no block.
|
|
364
|
+
|
|
347
365
|
An ask stays open until a human answers, unless its question no longer needs that answer. Retract a moot or superseded question, or
|
|
348
366
|
self-resolve one after finding the answer:
|
|
349
367
|
```ts
|
|
@@ -86,11 +86,11 @@ handoffs; do not narrate them into the spec or a `dispatch_message`. A blocker o
|
|
|
86
86
|
clear is a `dispatch_ask`.
|
|
87
87
|
|
|
88
88
|
The issue's primary document **is** the root specification. Extend it in place — a new version
|
|
89
|
-
that keeps the human's own text and adds Summary,
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
89
|
+
that keeps the human's own text and adds Summary, New since we talked, the adoption/decomposition
|
|
90
|
+
and waves, acceptance criteria, and the integration test — never a second "spec" artifact beside
|
|
91
|
+
it (`dispatch_artifact` with the primary document's name replaces the human's document; do not do
|
|
92
|
+
that). Both readers described in [Writing for the human](../dispatch/SKILL.md#writing-for-the-human)
|
|
93
|
+
must be able to follow it.
|
|
94
94
|
The design gate runs only when the "Design gate policy" line at the end of your system prompt
|
|
95
95
|
says `gates.design: root-issues`. When it says `gates.design: off`, write the spec and continue
|
|
96
96
|
to section 2 with no approval step at all: do not request approval, do not register a gate, and
|