@mrrlin-dev/mcp 0.4.31 → 0.4.32

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.
Files changed (2) hide show
  1. package/dist/bin.cjs +43 -25
  2. package/package.json +2 -2
package/dist/bin.cjs CHANGED
@@ -37388,6 +37388,22 @@ function isRunnableProposal(item) {
37388
37388
  return true;
37389
37389
  }
37390
37390
 
37391
+ // ../../packages/schemas/dist/task-notes.js
37392
+ var TASK_NOTES_BRIEF_SECTIONS = [
37393
+ { heading: "Context", description: "why this task exists; link to parent/trigger task if follow-up." },
37394
+ { heading: "Scope", description: "concrete actions and acceptance criteria." },
37395
+ { heading: "References", description: "links, data, relevant findings (omit if nothing to reference)." }
37396
+ ];
37397
+ var TASK_NOTES_JOURNAL_SECTIONS = [
37398
+ { heading: "Result", description: "what was accomplished, key findings or metrics, follow-up tasks created." },
37399
+ {
37400
+ heading: "Recheck",
37401
+ dated: true,
37402
+ description: "what you checked, what you found, and what happens next."
37403
+ }
37404
+ ];
37405
+ var JOURNAL_HEADING_RE = new RegExp(`^##[ \\t]+(${TASK_NOTES_JOURNAL_SECTIONS.map((s) => s.heading).join("|")})\\b[ \\t]*(?:[\u2014\u2013-][ \\t]*(\\S.*?))?[ \\t]*$`);
37406
+
37391
37407
  // ../../packages/schemas/dist/index.js
37392
37408
  var mrrlinTaskStatusSchema = external_exports.enum([
37393
37409
  "backlog",
@@ -41837,7 +41853,7 @@ Do NOT derail the current task - if the operator has an in-flight question, answ
41837
41853
  }
41838
41854
 
41839
41855
  // src/_generated/version.ts
41840
- var PKG_VERSION = "0.4.31";
41856
+ var PKG_VERSION = "0.4.32";
41841
41857
 
41842
41858
  // src/api-base-url-migrate.ts
41843
41859
  var import_node_fs3 = __toESM(require("node:fs"), 1);
@@ -46039,6 +46055,30 @@ function isDeployGateRunStatus(status) {
46039
46055
  return status === "dev_deploy" || status === "prod_deploy";
46040
46056
  }
46041
46057
 
46058
+ // src/prompts/task-notes-contract.ts
46059
+ function renderTaskNotesContractLines() {
46060
+ const brief = TASK_NOTES_BRIEF_SECTIONS.map((s) => ` ## ${s.heading} \u2014 ${s.description}`);
46061
+ const [result, recheck] = TASK_NOTES_JOURNAL_SECTIONS;
46062
+ return [
46063
+ "- Notes (markdown): write for a human operator scanning a task list.",
46064
+ " First line: one plain-text sentence summarizing the task (no heading).",
46065
+ " Then scale the structure to complexity:",
46066
+ " For simple tasks \u2014 the one-line summary may be enough. No headings required.",
46067
+ " For non-trivial tasks, use these sections as needed:",
46068
+ ...brief,
46069
+ " When closing a task (update_task status=closed_done), APPEND a Result section:",
46070
+ ` ## ${result?.heading} \u2014 ${result?.description}`,
46071
+ " When you revisit a task that already has a Result \u2014 a later verification, a retry, a status",
46072
+ " re-check \u2014 APPEND a dated entry instead of rewriting Result:",
46073
+ ` ## ${recheck?.heading} \u2014 YYYY-MM-DD \u2014 ${recheck?.description}`,
46074
+ " Do NOT remove earlier sections \u2014 they remain useful for context.",
46075
+ " The sections above the first Result/Recheck are the brief (what the task IS); Result and",
46076
+ " Recheck are the execution journal (what HAPPENED). The task page renders them separately and",
46077
+ " collapses the journal, so keep each kind of content under the right heading.",
46078
+ " Adapt depth to the task: a one-line fix needs one sentence, not four headings."
46079
+ ];
46080
+ }
46081
+
46042
46082
  // src/turn-deadline.ts
46043
46083
  var DEFAULT_TURN_INTERRUPT_TIMEOUT_MS = 5e3;
46044
46084
  function withTimeout2(promise2, ms, message) {
@@ -46612,18 +46652,7 @@ var BASE_INSTRUCTIONS_PREFIX = [
46612
46652
  "- Title: short, actionable, human-readable. Describe what needs to happen, not internal jargon.",
46613
46653
  ' Good: "Audit crawled-not-indexed pages and fix 404 errors"',
46614
46654
  ' Bad: "GSC coverage triage crawled-not-indexed + 404"',
46615
- "- Notes (markdown): write for a human operator scanning a task list.",
46616
- " First line: one plain-text sentence summarizing the task (no heading).",
46617
- " Then scale the structure to complexity:",
46618
- " For simple tasks \u2014 the one-line summary may be enough. No headings required.",
46619
- " For non-trivial tasks, use these sections as needed:",
46620
- " ## Context \u2014 why this task exists; link to parent/trigger task if follow-up.",
46621
- " ## Scope \u2014 concrete actions and acceptance criteria.",
46622
- " ## References \u2014 links, data, relevant findings (omit if nothing to reference).",
46623
- " When closing a task (update_task status=closed_done), APPEND a Result section:",
46624
- " ## Result \u2014 what was accomplished, key findings or metrics, follow-up tasks created.",
46625
- " Do NOT remove earlier sections \u2014 they remain useful for context.",
46626
- " Adapt depth to the task: a one-line fix needs one sentence, not four headings.",
46655
+ ...renderTaskNotesContractLines(),
46627
46656
  "",
46628
46657
  // Slice 4 of token-efficient-execution-runs (D8). This is the ONLY way the reasoning behind a
46629
46658
  // decision survives past this conversation: a thread is retired once it has accumulated too many
@@ -54218,18 +54247,7 @@ function buildThreadStartParams(msg, config2, desiredModel) {
54218
54247
  "- Title: short, actionable, human-readable. Describe what needs to happen, not internal jargon.",
54219
54248
  ' Good: "Audit crawled-not-indexed pages and fix 404 errors"',
54220
54249
  ' Bad: "GSC coverage triage crawled-not-indexed + 404"',
54221
- "- Notes (markdown): write for a human operator scanning a task list.",
54222
- " First line: one plain-text sentence summarizing the task (no heading).",
54223
- " Then scale the structure to complexity:",
54224
- " For simple tasks \u2014 the one-line summary may be enough. No headings required.",
54225
- " For non-trivial tasks, use these sections as needed:",
54226
- " ## Context \u2014 why this task exists; link to parent/trigger task if follow-up.",
54227
- " ## Scope \u2014 concrete actions and acceptance criteria.",
54228
- " ## References \u2014 links, data, relevant findings (omit if nothing to reference).",
54229
- " When closing a task (update_task status=closed_done), APPEND a Result section:",
54230
- " ## Result \u2014 what was accomplished, key findings or metrics, follow-up tasks created.",
54231
- " Do NOT remove earlier sections \u2014 they remain useful for context.",
54232
- " Adapt depth to the task: a one-line fix needs one sentence, not four headings.",
54250
+ ...renderTaskNotesContractLines(),
54233
54251
  // early-intent-confirmation (design.md, "The chat contract"): the core block below is copied
54234
54252
  // VERBATIM from design.md, per tasks.md 10.1. It replaces an older sentence that also carried
54235
54253
  // "omit operatorSeedRequest only when there is genuinely no operator request behind the task
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mrrlin-dev/mcp",
3
- "version": "0.4.31",
3
+ "version": "0.4.32",
4
4
  "type": "module",
5
5
  "bin": {
6
6
  "mrrlin-mcp": "dist/bin.cjs"
@@ -22,10 +22,10 @@
22
22
  "esbuild": "^0.24.0",
23
23
  "tsx": "^4.22.3",
24
24
  "@mrrlin/client": "0.0.0",
25
- "@mrrlin/agent-client": "0.0.0",
26
25
  "@mrrlin/director-e2e": "0.0.0",
27
26
  "@mrrlin/schemas": "0.0.0",
28
27
  "@mrrlin/tsconfig": "0.0.0",
28
+ "@mrrlin/agent-client": "0.0.0",
29
29
  "@mrrlin/wiki": "0.0.0"
30
30
  },
31
31
  "dependencies": {