@sjawhar/pi-legion 10.18.1 → 10.19.1

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/legion.js CHANGED
@@ -14419,7 +14419,7 @@ function imagesArgument(z2, owner, cap) {
14419
14419
  }
14420
14420
  var ASK_URGENCIES = ["low", "med", "high", "blocking"];
14421
14421
  var ASK_QUESTION_MAX = 800;
14422
- var DISPATCH_BODY_MAX = 2000;
14422
+ var DISPATCH_BODY_MAX = 32000;
14423
14423
  var SEARCH_QUERY_MAX = 1000;
14424
14424
  var SEARCH_QUERY_HINT = "search with a short phrase of a few words, not a passage";
14425
14425
  var SEARCH_KIND_DEPTH = 100;
@@ -14477,7 +14477,7 @@ var dispatchToolSpecs = [
14477
14477
  arguments: (z2) => ({
14478
14478
  issue: z2.string().describe(ISSUE_REFERENCE),
14479
14479
  status: z2.enum(ISSUE_STATUSES).describe("New lifecycle status.").optional(),
14480
- reason: z2.string({ max: 2000 }).describe("Required with status done, and only with it: why the issue is closing, at most 2,000 characters. Posted on the issue as a message before it closes.").optional(),
14480
+ reason: z2.string({ max: DISPATCH_BODY_MAX }).describe(`Required with status done, and only with it: why the issue is closing, at most ${DISPATCH_BODY_MAX} characters. Posted on the issue as a message before it closes.`).optional(),
14481
14481
  title: z2.string({ min: 1, max: ISSUE_TITLE_MAX }).describe("Replacement title, at most 1,000 characters.").optional(),
14482
14482
  labels: z2.array(z2.string({ min: 1, max: 40 }), { max: 20 }).describe("Replacement label set, at most 20 labels of up to 40 characters; replaces every existing label.").optional(),
14483
14483
  priority: z2.number({ int: true, min: 0, max: 3 }).nullable().optional().describe("Coarse priority: 0 is P0 (highest) through 3 is P3 (lowest); null clears it."),
@@ -14617,7 +14617,7 @@ var dispatchToolSpecs = [
14617
14617
  {
14618
14618
  name: "dispatch_comment",
14619
14619
  example: { issue: "DSP-1", body: "Looks good." },
14620
- description: "Add review feedback to an issue or project document quote, or reply to a question asked with dispatch ask. " + "Do not use it for an exact replacement; use " + `dispatch suggest instead. A quote anchor is pinned to its block. Body is at most 2,000 characters, the lines images appends included. ${OWNER_REFERENCE}`,
14620
+ description: "Add review feedback to an issue or project document quote, or reply to a question asked with dispatch ask. " + "Do not use it for an exact replacement; use " + `dispatch suggest instead. A quote anchor is pinned to its block. Body is at most ${DISPATCH_BODY_MAX} characters, the lines images appends included. ${OWNER_REFERENCE}`,
14621
14621
  arguments: (z2) => ({
14622
14622
  issue: z2.string().describe(ISSUE_REFERENCE).optional(),
14623
14623
  project: z2.string().describe("Project key owning the document.").optional(),
@@ -14625,11 +14625,11 @@ var dispatchToolSpecs = [
14625
14625
  ref: z2.string().describe("Optional dispatch:// issue or document reference.").optional(),
14626
14626
  quote: z2.string().describe("Optional exact quoted document text.").optional(),
14627
14627
  occurrence: z2.number({ int: true, min: 0 }).describe("Optional zero-based occurrence of quote.").optional(),
14628
- body: z2.string({ max: DISPATCH_BODY_MAX }).describe("Review comment, at most 2,000 characters."),
14628
+ body: z2.string({ max: DISPATCH_BODY_MAX }).describe(`Review comment, at most ${DISPATCH_BODY_MAX} characters.`),
14629
14629
  reply_to: z2.string().describe("A comment id (uuid); replying to any comment in a thread continues that thread (an " + "ask's clarification thread included). To reply to an ask, use reply_to_ask with the " + "ask id instead.").optional(),
14630
14630
  reply_to_ask: z2.string().describe("Optional ask id to reply to, threading this comment under that question. Mutually " + "exclusive with reply_to.").optional(),
14631
14631
  turn: z2.enum(["agent", "human"]).describe("Only with reply_to_ask: who holds the turn after this reply. agent: a progress note - " + "you keep the turn and the ask stays 'Waiting on agents' for the human; human (default): " + "you need the human to act - the ask returns to 'Waiting on you'.").optional(),
14632
- images: imagesArgument(z2, "the issue (or the project document's project)", "the 2,000-character body limit")
14632
+ images: imagesArgument(z2, "the issue (or the project document's project)", `the ${DISPATCH_BODY_MAX}-character body limit`)
14633
14633
  }),
14634
14634
  validation: commentValidation
14635
14635
  },
@@ -14641,7 +14641,7 @@ var dispatchToolSpecs = [
14641
14641
  quote: "old wording",
14642
14642
  replace_with: "new wording"
14643
14643
  },
14644
- description: "Propose an exact replacement for quoted document text. Do not use it for general feedback; use " + `dispatch comment instead. Optional explanation is at most 2,000 characters. ${OWNER_REFERENCE}`,
14644
+ description: "Propose an exact replacement for quoted document text. Do not use it for general feedback; use " + `dispatch comment instead. Optional explanation is at most ${DISPATCH_BODY_MAX} characters. ${OWNER_REFERENCE}`,
14645
14645
  arguments: (z2) => ({
14646
14646
  issue: z2.string().describe(ISSUE_REFERENCE).optional(),
14647
14647
  project: z2.string().describe("Project key owning the document.").optional(),
@@ -14649,7 +14649,7 @@ var dispatchToolSpecs = [
14649
14649
  ref: z2.string().describe("Optional dispatch:// issue or document reference.").optional(),
14650
14650
  quote: z2.string().describe("Exact document text to replace."),
14651
14651
  replace_with: z2.string().describe("Replacement text; a CR LF or a lone carriage return in it is written as a line feed."),
14652
- body: z2.string({ max: 2000 }).describe("Optional rationale, at most 2,000 characters.").optional(),
14652
+ body: z2.string({ max: DISPATCH_BODY_MAX }).describe(`Optional rationale, at most ${DISPATCH_BODY_MAX} characters.`).optional(),
14653
14653
  occurrence: z2.number({ int: true, min: 0 }).describe("Optional zero-based occurrence of quote.").optional()
14654
14654
  }),
14655
14655
  validation: documentOwnerValidation(true, true)
@@ -14657,12 +14657,12 @@ var dispatchToolSpecs = [
14657
14657
  {
14658
14658
  name: "dispatch_message",
14659
14659
  example: { issue: "DSP-1", body: "Implementation started." },
14660
- description: "Post a note humans must read now: a reply to a human's message or a deliverable that landed. A to-do only a human can " + "complete is an ask (dispatch ask), so it reaches their inbox. Never progress or status updates - Dispatch is a high-signal " + "record, not a log. Not a design decision (write it as a decision block in the document) or document feedback (dispatch comment). " + "To answer a human's direct message to this session - one sent from the Agents page, which names no issue - pass that message's bare id as " + "in_reply_to and no issue; the reply lands in that conversation. Another call with the same in_reply_to and new text posts a follow-up, " + "threaded under this session's first reply; the same text again posts nothing. dispatch read --message <id> reads " + "that conversation back. Every other message names its issue. " + `Body is at most 2,000 characters, the lines images appends included. ${ISSUE_REFERENCE}`,
14660
+ description: "Post a note humans must read now: a reply to a human's message or a deliverable that landed. A to-do only a human can " + "complete is an ask (dispatch ask), so it reaches their inbox. Never progress or status updates - Dispatch is a high-signal " + "record, not a log. Not a design decision (write it as a decision block in the document) or document feedback (dispatch comment). " + "To answer a human's direct message to this session - one sent from the Agents page, which names no issue - pass that message's bare id as " + "in_reply_to and no issue; the reply lands in that conversation. Another call with the same in_reply_to and new text posts a follow-up, " + "threaded under this session's first reply; the same text again posts nothing. dispatch read --message <id> reads " + "that conversation back. Every other message names its issue. " + `Body is at most ${DISPATCH_BODY_MAX} characters, the lines images appends included. ${ISSUE_REFERENCE}`,
14661
14661
  arguments: (z2) => ({
14662
14662
  issue: z2.string().describe(`${ISSUE_REFERENCE} Omit it only when in_reply_to answers a human's direct message to this session.`).optional(),
14663
- body: z2.string({ max: DISPATCH_BODY_MAX }).describe("Update text, at most 2,000 characters."),
14663
+ body: z2.string({ max: DISPATCH_BODY_MAX }).describe(`Update text, at most ${DISPATCH_BODY_MAX} characters.`),
14664
14664
  in_reply_to: z2.string().describe("Optional message id or dispatch://KEY/message/<id> reference to reply to, threading " + "this message under it so the reply stays with the original in the Conversation. " + "A bare id with no issue answers a human's direct message to this session; a " + "dispatch://KEY/message/<id> names the issue its message lives on, so that form is a " + "reply on that issue.").optional(),
14665
- images: imagesArgument(z2, "the issue (a reply to a direct message: your own conversation, dispatch://agent/<your session id>)", "the 2,000-character body limit")
14665
+ images: imagesArgument(z2, "the issue (a reply to a direct message: your own conversation, dispatch://agent/<your session id>)", `the ${DISPATCH_BODY_MAX}-character body limit`)
14666
14666
  }),
14667
14667
  validation: messageValidation
14668
14668
  },
@@ -16918,7 +16918,7 @@ async function bootLegionClaim(host2) {
16918
16918
  // package.json
16919
16919
  var package_default = {
16920
16920
  name: "@sjawhar/pi-legion",
16921
- version: "10.18.1",
16921
+ version: "10.19.1",
16922
16922
  license: "Apache-2.0",
16923
16923
  type: "module",
16924
16924
  omp: {
@@ -340,8 +340,8 @@ While you are registered, the daemon's `tick` gives you a turn at least every
340
340
  `dispatch read`, and post when its `Events:` show no `message.created` from today.
341
341
 
342
342
  **What.** One `dispatch message --issue <report KEY> --body-file -` of at most 2,000 characters,
343
- written as `skill://dispatch`'s "Writing for the human" says: every issue by its key and title,
344
- every pull request by its URL.
343
+ since it is a report rather than a log of the day, written as `skill://dispatch`'s "Writing for
344
+ the human" says: every issue by its key and title, every pull request by its URL.
345
345
 
346
346
  - **Finished.** `dispatch issues --project <PROJECT> --status done --updated-since <the
347
347
  previous report's time, or 24 hours ago> --limit 250`, read every page, and keep the issues
@@ -178,7 +178,7 @@ the issue — `--issue` is your `LEGION_ISSUE`; Legion issues live on Dispatch,
178
178
  issue, so no `gh issue` write and no GitHub-issue comment — naming the documents, the
179
179
  one-to-three most useful takeaways, the two proofs you read, and the production check that
180
180
  follows the merge's close of the issue. The message must carry this revived implementer's structured
181
- attribution footer with `phase` set to `retro`; the body is capped at 2,000 characters:
181
+ attribution footer with `phase` set to `retro`; the body is capped at 32,000 characters:
182
182
 
183
183
  ```bash
184
184
  dispatch message --issue <KEY> --body-file - <<'EOF'
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sjawhar/pi-legion",
3
- "version": "10.18.1",
3
+ "version": "10.19.1",
4
4
  "license": "Apache-2.0",
5
5
  "type": "module",
6
6
  "omp": {