@sjawhar/pi-legion-envoy 5.5.5 → 5.5.6

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/agents/oracle.md CHANGED
@@ -3,7 +3,8 @@ name: oracle
3
3
  description: |
4
4
  Strategic technical advisor. Read-only. Use for architecture decisions, hard tradeoffs,
5
5
  and complex debugging where correctness matters more than speed.
6
- # @oracle is the deployment's modelRoles.oracle; the Go daemon's boot gate refuses to start without it (docs/kubernetes.md, Operator configuration).
6
+ # @oracle is the deployment's `oracle` model role; the Go daemon's boot gate refuses to start unless the operator's settings give
7
+ # this agent a model, through modelRoles.oracle or a task.agentModelOverrides entry for it (docs/kubernetes.md, Operator configuration).
7
8
  model: ["@oracle"]
8
9
  tools: read, glob, grep, todo
9
10
  color: cyan
@@ -1,7 +1,8 @@
1
1
  ---
2
2
  name: thermonuclear-code-quality
3
3
  description: Diff-scoped maintainability audit for structure, abstraction, file growth, branching complexity, and type boundaries.
4
- # @review is the deployment's modelRoles.review; the Go daemon's boot gate refuses to start without it (docs/kubernetes.md, Operator configuration).
4
+ # @review is the deployment's `review` model role; the Go daemon's boot gate refuses to start unless the operator's settings give
5
+ # this agent a model, through modelRoles.review or a task.agentModelOverrides entry for it (docs/kubernetes.md, Operator configuration).
5
6
  model: ["@review"]
6
7
  ---
7
8
 
@@ -1,7 +1,8 @@
1
1
  ---
2
2
  name: thermonuclear-deep-review
3
3
  description: Diff-scoped security and correctness audit for bugs, breakages, developer-experience regressions, and feature-gate leaks.
4
- # @review is the deployment's modelRoles.review; the Go daemon's boot gate refuses to start without it (docs/kubernetes.md, Operator configuration).
4
+ # @review is the deployment's `review` model role; the Go daemon's boot gate refuses to start unless the operator's settings give
5
+ # this agent a model, through modelRoles.review or a task.agentModelOverrides entry for it (docs/kubernetes.md, Operator configuration).
5
6
  model: ["@review"]
6
7
  ---
7
8
 
package/dist/envoy.js CHANGED
@@ -30249,7 +30249,7 @@ var dispatchToolSpecs = [
30249
30249
  ops: z2.array(z2.object({
30250
30250
  op: z2.enum(DOC_EDIT_OPS).describe("Edit operation."),
30251
30251
  find: z2.string().describe("Text of the target as rendered, for replace or delete; inline markdown (**bold**, `code`) is tolerated and must be balanced; a leading '# ' matches a heading. A delete of a block's entire text removes the block.").optional(),
30252
- with: z2.string().describe("Replacement text for replace: inside a code block, the code's literal text as sent (line breaks at its end do not survive a read, and a line of three or more colons in code inside a typed block, indented less than four columns from where the typed block's lines start, is refused, since the browser editor ends the typed block there: indent it four or more spaces, or move the code block out); text that would read as block syntax at a line start, such as '---' over a paragraph, is stored escaped and reads back as those characters, so a rule is added with insert beside the paragraph; elsewhere parsed as inline markdown within the matched block; a marker of a different kind from the block's own is literal text, one of the same kind is refused unless it is a heading rename (where a level named by find is what lets with change it), a backslash escape keeps prose that merely looks like a marker, a block marker after a hard line break is refused because replace cannot open a new block, and any non-empty value that renders to no text is refused - only an empty value deletes the match.").optional(),
30252
+ with: z2.string().describe("Replacement text for replace: inside a code block, the code's literal text as sent (line breaks at its end do not survive a read); text that would read as block syntax at a line start, such as '---' over a paragraph, is stored escaped and reads back as those characters, so a rule is added with insert beside the paragraph; elsewhere parsed as inline markdown within the matched block; a marker of a different kind from the block's own is literal text, one of the same kind is refused unless it is a heading rename (where a level named by find is what lets with change it), a backslash escape keeps prose that merely looks like a marker, a block marker after a hard line break is refused because replace cannot open a new block, and any non-empty value that renders to no text is refused - only an empty value deletes the match.").optional(),
30253
30253
  occurrence: z2.number({ int: true, min: 0 }).describe("Optional zero-based match occurrence.").optional(),
30254
30254
  markdown: z2.string().describe("Markdown to insert.").optional(),
30255
30255
  after: z2.string().describe(`Insert or move after this anchor: a quote of the neighbouring block's text, or one of "start", "end", "heading:<exact heading text>", "block:<id>".`).optional(),
package/dist/legion.js CHANGED
@@ -16142,7 +16142,7 @@ import { logger } from "@oh-my-pi/pi-utils";
16142
16142
  // package.json
16143
16143
  var package_default = {
16144
16144
  name: "@sjawhar/pi-legion-envoy",
16145
- version: "5.5.5",
16145
+ version: "5.5.6",
16146
16146
  type: "module",
16147
16147
  omp: {
16148
16148
  extensions: [
@@ -30322,7 +30322,7 @@ var dispatchToolSpecs = [
30322
30322
  ops: z2.array(z2.object({
30323
30323
  op: z2.enum(DOC_EDIT_OPS).describe("Edit operation."),
30324
30324
  find: z2.string().describe("Text of the target as rendered, for replace or delete; inline markdown (**bold**, `code`) is tolerated and must be balanced; a leading '# ' matches a heading. A delete of a block's entire text removes the block.").optional(),
30325
- with: z2.string().describe("Replacement text for replace: inside a code block, the code's literal text as sent (line breaks at its end do not survive a read, and a line of three or more colons in code inside a typed block, indented less than four columns from where the typed block's lines start, is refused, since the browser editor ends the typed block there: indent it four or more spaces, or move the code block out); text that would read as block syntax at a line start, such as '---' over a paragraph, is stored escaped and reads back as those characters, so a rule is added with insert beside the paragraph; elsewhere parsed as inline markdown within the matched block; a marker of a different kind from the block's own is literal text, one of the same kind is refused unless it is a heading rename (where a level named by find is what lets with change it), a backslash escape keeps prose that merely looks like a marker, a block marker after a hard line break is refused because replace cannot open a new block, and any non-empty value that renders to no text is refused - only an empty value deletes the match.").optional(),
30325
+ with: z2.string().describe("Replacement text for replace: inside a code block, the code's literal text as sent (line breaks at its end do not survive a read); text that would read as block syntax at a line start, such as '---' over a paragraph, is stored escaped and reads back as those characters, so a rule is added with insert beside the paragraph; elsewhere parsed as inline markdown within the matched block; a marker of a different kind from the block's own is literal text, one of the same kind is refused unless it is a heading rename (where a level named by find is what lets with change it), a backslash escape keeps prose that merely looks like a marker, a block marker after a hard line break is refused because replace cannot open a new block, and any non-empty value that renders to no text is refused - only an empty value deletes the match.").optional(),
30326
30326
  occurrence: z2.number({ int: true, min: 0 }).describe("Optional zero-based match occurrence.").optional(),
30327
30327
  markdown: z2.string().describe("Markdown to insert.").optional(),
30328
30328
  after: z2.string().describe(`Insert or move after this anchor: a quote of the neighbouring block's text, or one of "start", "end", "heading:<exact heading text>", "block:<id>".`).optional(),
@@ -575,7 +575,9 @@ with the document's reference.
575
575
 
576
576
  The server declares typed document blocks at `GET /api/v1/schema/blocks`. Write one only with the
577
577
  container-directive form `:::name{#block-id key="value"}` on its own line, ordinary block children,
578
- and a closing `:::` at the same nesting. An unclosed typed block at document level is rejected. For
578
+ and a closing line of as many colons at the same nesting. A typed block directly inside another needs the outer
579
+ one's fence a colon longer (`::::callout{…}` around a `:::callout{…}`), and so does one whose code holds a `:::` line;
580
+ Dispatch writes its fences that way. An unclosed typed block at document level is rejected. For
579
581
  a new typed block, omit `#block-id`; Dispatch mints it. When editing an existing typed block, retain
580
582
  its id and every rendered attribute. Never copy an existing block's id into new markdown: an id
581
583
  names one block, so an insert, upload or suggestion whose markdown names an id the document holds
@@ -70,12 +70,10 @@ alone. An empty `with` deletes the matched text on purpose; where the block hold
70
70
  paragraph, the replace is `INVALID_OP`, and the refusal names the `delete` that removes it instead. Inside a code
71
71
  block none of this applies: `with` is the code's literal text, written as sent, whitespace, markdown syntax and
72
72
  references included, except that line breaks at the end of the code's text, and a line holding only whitespace in a
73
- list item's code, do not survive the next read; and a line of three or more colons in code inside a typed block,
74
- indented less than four columns from where the typed block's lines start, is `INVALID_OP`, since the browser editor
75
- ends the typed block there - indent it four or more spaces (a tab reaches only the next tab stop, which inside a list
76
- item or a blockquote can be two columns away), or move the code block out of the typed block. Text a `replace` writes
77
- that would read as block syntax at a line start is stored escaped and reads back as the characters you sent: `---` over
78
- a paragraph is stored `\---`, not a rule, so to add a rule, `insert` it beside the paragraph (`insert` with markdown
73
+ list item's code, do not survive the next read. A line of colons in code inside a typed block is kept: Dispatch writes
74
+ that typed block's fence longer than any such line the browser editor would end it at. Text a `replace` writes that
75
+ would read as block syntax at a line start is stored escaped and reads back as the characters you sent: `---` over a
76
+ paragraph is stored `\---`, not a rule, so to add a rule, `insert` it beside the paragraph (`insert` with markdown
79
77
  `***`). Use zero-based
80
78
  `occurrence` for a
81
79
  repeated target; re-read a missing or ambiguous target before retrying. Pass `summary` to name the version when recording a decision.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sjawhar/pi-legion-envoy",
3
- "version": "5.5.5",
3
+ "version": "5.5.6",
4
4
  "type": "module",
5
5
  "omp": {
6
6
  "extensions": [