looply-cli 0.5.31 → 0.5.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 (56) hide show
  1. package/dist/autonomy-controller.d.ts.map +1 -1
  2. package/dist/autonomy-controller.js +6 -0
  3. package/dist/autonomy-controller.js.map +1 -1
  4. package/dist/branch-delivery-wiring.d.ts +3 -1
  5. package/dist/branch-delivery-wiring.d.ts.map +1 -1
  6. package/dist/branch-delivery-wiring.js +5 -3
  7. package/dist/branch-delivery-wiring.js.map +1 -1
  8. package/dist/branch-delivery.d.ts +9 -1
  9. package/dist/branch-delivery.d.ts.map +1 -1
  10. package/dist/branch-delivery.js +36 -1
  11. package/dist/branch-delivery.js.map +1 -1
  12. package/dist/daemon-cmd.js +1 -1
  13. package/dist/daemon-cmd.js.map +1 -1
  14. package/dist/goal-adaptive.d.ts +23 -1
  15. package/dist/goal-adaptive.d.ts.map +1 -1
  16. package/dist/goal-adaptive.js +34 -1
  17. package/dist/goal-adaptive.js.map +1 -1
  18. package/dist/goal-compile.d.ts +2 -0
  19. package/dist/goal-compile.d.ts.map +1 -1
  20. package/dist/goal-compile.js +13 -1
  21. package/dist/goal-compile.js.map +1 -1
  22. package/dist/goal-execution-evidence.d.ts +6 -0
  23. package/dist/goal-execution-evidence.d.ts.map +1 -1
  24. package/dist/goal-execution-evidence.js +34 -1
  25. package/dist/goal-execution-evidence.js.map +1 -1
  26. package/dist/goal-gap.d.ts +22 -0
  27. package/dist/goal-gap.d.ts.map +1 -1
  28. package/dist/goal-gap.js +28 -6
  29. package/dist/goal-gap.js.map +1 -1
  30. package/dist/mcp-main.js +2 -0
  31. package/dist/mcp-main.js.map +1 -1
  32. package/dist/mcp-server.d.ts +2 -0
  33. package/dist/mcp-server.d.ts.map +1 -1
  34. package/dist/mcp-server.js +13 -0
  35. package/dist/mcp-server.js.map +1 -1
  36. package/dist/model-transport.d.ts.map +1 -1
  37. package/dist/model-transport.js +3 -0
  38. package/dist/model-transport.js.map +1 -1
  39. package/dist/project-terminal.d.ts +4 -1
  40. package/dist/project-terminal.d.ts.map +1 -1
  41. package/dist/project-terminal.js +8 -3
  42. package/dist/project-terminal.js.map +1 -1
  43. package/dist/pursuit-ending.d.ts.map +1 -1
  44. package/dist/pursuit-ending.js +5 -1
  45. package/dist/pursuit-ending.js.map +1 -1
  46. package/dist/run-cmd.d.ts.map +1 -1
  47. package/dist/run-cmd.js +17 -6
  48. package/dist/run-cmd.js.map +1 -1
  49. package/dist/ticket-attachments.d.ts +66 -0
  50. package/dist/ticket-attachments.d.ts.map +1 -0
  51. package/dist/ticket-attachments.js +155 -0
  52. package/dist/ticket-attachments.js.map +1 -0
  53. package/dist/ticket-words.d.ts.map +1 -1
  54. package/dist/ticket-words.js +8 -2
  55. package/dist/ticket-words.js.map +1 -1
  56. package/package.json +2 -2
@@ -0,0 +1,155 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ATTACHMENT_SCHEMA = exports.ATTACHMENT_TOOL = exports.ATTACHMENTS_DIR = exports.ATTACHMENTS_POINTER = void 0;
4
+ exports.imageLinks = imageLinks;
5
+ exports.stateDirOf = stateDirOf;
6
+ exports.readAttachmentPointer = readAttachmentPointer;
7
+ exports.ensureTicketAttachments = ensureTicketAttachments;
8
+ exports.attachmentsBlock = attachmentsBlock;
9
+ exports.withAttachments = withAttachments;
10
+ exports.callAttachment = callAttachment;
11
+ const node_fs_1 = require("node:fs");
12
+ const node_path_1 = require("node:path");
13
+ const bug_repro_1 = require("./bug-repro");
14
+ /**
15
+ * 🔴 LOOPLY COULD NOT SEE A TICKET'S PICTURES (LOO-B-2, 2026-10-21). RBB-B-204 said "remove the elements circled in the
16
+ * attachment"; the attachment was a public PNG in the goal's words, and every plan and check answered "the attachment
17
+ * isn't available". Nothing downloaded it except the bug-reproduction step — into a folder `git discard` then deleted —
18
+ * and no model could open an image anyway: the contained file tool reads text only.
19
+ *
20
+ * So, for EVERY goal: the image links in the goal's words are downloaded once, on the host (the daemon's own process,
21
+ * never the container), into the checkout's protected state folder, and listed. Every role may then LOOK at them with
22
+ * the read-only `view_attachment` tool, served by the trusted bridge as MCP image content — like `view_screenshot` — and
23
+ * every prompt that carries the goal's words is told their names.
24
+ */
25
+ exports.ATTACHMENTS_POINTER = 'ticket-attachments.json';
26
+ exports.ATTACHMENTS_DIR = 'ticket-attachments';
27
+ exports.ATTACHMENT_TOOL = 'view_attachment';
28
+ const MAX_IMAGES = 8;
29
+ const MAX_BYTES = 5 * 1024 * 1024;
30
+ const IMAGE_TYPES = [
31
+ [/^image\/png\b/i, 'png', 'image/png'],
32
+ [/^image\/jpe?g\b/i, 'jpg', 'image/jpeg'],
33
+ [/^image\/gif\b/i, 'gif', 'image/gif'],
34
+ [/^image\/webp\b/i, 'webp', 'image/webp'],
35
+ ];
36
+ /** The image links a goal's words carry: the attachments list first, then any other https link that names an image file. */
37
+ function imageLinks(goalText) {
38
+ const listed = (0, bug_repro_1.ticketAttachments)(goalText);
39
+ const loose = [...goalText.matchAll(/https:\/\/[^\s)"'<>]+\.(?:png|jpe?g|gif|webp)(?:\?[^\s)"'<>]*)?/gi)].map((m) => m[0]);
40
+ return [...new Set([...listed, ...loose])].slice(0, MAX_IMAGES);
41
+ }
42
+ function stateDirOf(cwd) {
43
+ return (0, node_path_1.join)(cwd, '.looply', 'state');
44
+ }
45
+ function readAttachmentPointer(stateDir) {
46
+ try {
47
+ const p = JSON.parse((0, node_fs_1.readFileSync)((0, node_path_1.join)(stateDir, exports.ATTACHMENTS_POINTER), 'utf8'));
48
+ return Array.isArray(p.images) ? p : null;
49
+ }
50
+ catch {
51
+ return null;
52
+ }
53
+ }
54
+ /**
55
+ * Download the goal's images (once per goal version) and list them. Never throws; a link that cannot be fetched is
56
+ * listed as unavailable, and the goal's words still carry its address.
57
+ */
58
+ async function ensureTicketAttachments(input) {
59
+ const links = imageLinks(input.goalText);
60
+ const stateDir = stateDirOf(input.cwd);
61
+ if (links.length === 0)
62
+ return null;
63
+ const prior = readAttachmentPointer(stateDir);
64
+ if (prior !== null && prior.goalKey === input.goalKey && prior.images.every((i) => (0, node_fs_1.existsSync)(i.file)))
65
+ return prior;
66
+ const fetchFn = input.fetchFn ?? fetch;
67
+ const dir = (0, node_path_1.join)(stateDir, exports.ATTACHMENTS_DIR);
68
+ const images = [];
69
+ const unavailable = [];
70
+ for (const [n, url] of links.entries()) {
71
+ const ac = new AbortController();
72
+ const timer = setTimeout(() => ac.abort(), 20_000);
73
+ try {
74
+ const res = await fetchFn(url, { signal: ac.signal, redirect: 'follow' });
75
+ const type = res.ok ? (res.headers.get('content-type') ?? '') : '';
76
+ const kind = IMAGE_TYPES.find(([re]) => re.test(type));
77
+ const declared = Number(res.headers.get('content-length') ?? '0');
78
+ if (kind === undefined || declared > MAX_BYTES) {
79
+ unavailable.push(url);
80
+ continue;
81
+ }
82
+ const buf = Buffer.from(await res.arrayBuffer());
83
+ if (buf.length > MAX_BYTES) {
84
+ unavailable.push(url);
85
+ continue;
86
+ }
87
+ (0, node_fs_1.mkdirSync)(dir, { recursive: true });
88
+ const name = `attachment-${n + 1}.${kind[1]}`;
89
+ const file = (0, node_path_1.join)(dir, name);
90
+ (0, node_fs_1.writeFileSync)(file, buf);
91
+ images.push({ name, label: url, file, mime: kind[2] });
92
+ }
93
+ catch {
94
+ unavailable.push(url);
95
+ }
96
+ finally {
97
+ clearTimeout(timer);
98
+ }
99
+ }
100
+ const pointer = { goalKey: input.goalKey, images, unavailable };
101
+ try {
102
+ (0, node_fs_1.mkdirSync)(stateDir, { recursive: true });
103
+ const path = (0, node_path_1.join)(stateDir, exports.ATTACHMENTS_POINTER);
104
+ const tmp = `${path}.${process.pid}.tmp`;
105
+ (0, node_fs_1.writeFileSync)(tmp, `${JSON.stringify(pointer, null, 2)}\n`, 'utf8');
106
+ (0, node_fs_1.renameSync)(tmp, path);
107
+ }
108
+ catch (e) {
109
+ input.log?.(`attach : could not list the ticket's images (${e.message})`);
110
+ return null;
111
+ }
112
+ input.log?.(`attach : ${images.length} of ${links.length} ticket image(s) saved for the models to look at`);
113
+ return pointer;
114
+ }
115
+ /** The block every prompt carrying the goal's words gets, when the goal has images. '' when it has none. */
116
+ function attachmentsBlock(pointer, goalKey) {
117
+ if (pointer === null || pointer.goalKey !== goalKey || (pointer.images.length === 0 && pointer.unavailable.length === 0))
118
+ return '';
119
+ const lines = ['', '', 'TICKET ATTACHMENTS — the images on the ticket. LOOK at them with the view_attachment tool before deciding anything they show:'];
120
+ for (const i of pointer.images)
121
+ lines.push(`- ${i.name} (from ${i.label})`);
122
+ for (const u of pointer.unavailable)
123
+ lines.push(`- not available to Looply (it needs a sign-in, is not an image, or is too big): ${u} — say so if the work depends on it`);
124
+ return lines.join('\n');
125
+ }
126
+ /** The goal's words with its attachments named, read from the checkout's state folder. */
127
+ function withAttachments(goalText, cwd, goalKey) {
128
+ return `${goalText}${attachmentsBlock(readAttachmentPointer(stateDirOf(cwd)), goalKey)}`;
129
+ }
130
+ exports.ATTACHMENT_SCHEMA = {
131
+ description: "Look at an image attached to the ticket (screenshots a person added). Call with no name to list them. Read-only.",
132
+ inputSchema: {
133
+ type: 'object',
134
+ properties: { name: { type: 'string', description: 'One of the listed attachment names. Omit to list them.' } },
135
+ additionalProperties: false,
136
+ },
137
+ };
138
+ /** The tool, served in the trusted bridge process (the container's file tool reads text only). */
139
+ function callAttachment(stateDir, args) {
140
+ const p = readAttachmentPointer(stateDir);
141
+ const name = args['name'];
142
+ if (name === undefined || name === '') {
143
+ if (p === null || p.images.length === 0)
144
+ return { content: [{ type: 'text', text: 'This ticket has no images Looply could fetch.' }], isError: false };
145
+ return { content: [{ type: 'text', text: p.images.map((i) => `${i.name} — ${i.label}`).join('\n') }], isError: false };
146
+ }
147
+ const img = p?.images.find((i) => i.name === name);
148
+ if (img === undefined) {
149
+ return { content: [{ type: 'text', text: `refused: no attachment is named ${String(name)}${p && p.images.length ? `; the names are: ${p.images.map((i) => i.name).join(', ')}` : ''}` }], isError: true };
150
+ }
151
+ if (!(0, node_fs_1.existsSync)(img.file) || (0, node_fs_1.statSync)(img.file).size > MAX_BYTES)
152
+ return { content: [{ type: 'text', text: `refused: ${img.name} is no longer on this machine` }], isError: true };
153
+ return { content: [{ type: 'image', data: (0, node_fs_1.readFileSync)(img.file).toString('base64'), mimeType: img.mime }], isError: false };
154
+ }
155
+ //# sourceMappingURL=ticket-attachments.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ticket-attachments.js","sourceRoot":"","sources":["../src/ticket-attachments.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"ticket-words.d.ts","sourceRoot":"","sources":["../src/ticket-words.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,gGAAgG;AAChG,eAAO,MAAM,eAAe,QAEgE,CAAC;AAE7F;;;GAGG;AACH,eAAO,MAAM,uBAAuB,QAEwD,CAAC;AAE7F,gEAAgE;AAChE,eAAO,MAAM,eAAe,8FAA8F,CAAC;AAE3H,wFAAwF;AACxF,eAAO,MAAM,iBAAiB,4DAA4D,CAAC;AAE3F,+BAA+B;AAC/B,eAAO,MAAM,oBAAoB,6CAA6C,CAAC;AAE/E,4FAA4F;AAC5F,eAAO,MAAM,eAAe,2EAAsE,CAAC;AAUnG,oGAAoG;AACpG,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CASnD;AAMD;;;GAGG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,GAAG,SAAS,GAAG,MAAM,GAAG,IAAI,CAelG;AAmBD;;;GAGG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CA2B/C;AAED;;;GAGG;AACH,wBAAgB,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CASvD;AAMD;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,EAAE,MAAM,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,GAAG,MAAM,GAAG,IAAI,CAsChH"}
1
+ {"version":3,"file":"ticket-words.d.ts","sourceRoot":"","sources":["../src/ticket-words.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,gGAAgG;AAChG,eAAO,MAAM,eAAe,QAEgE,CAAC;AAE7F;;;GAGG;AACH,eAAO,MAAM,uBAAuB,QAEwD,CAAC;AAE7F,gEAAgE;AAChE,eAAO,MAAM,eAAe,8FAA8F,CAAC;AAE3H,wFAAwF;AACxF,eAAO,MAAM,iBAAiB,4DAA4D,CAAC;AAE3F,+BAA+B;AAC/B,eAAO,MAAM,oBAAoB,6CAA6C,CAAC;AAE/E,4FAA4F;AAC5F,eAAO,MAAM,eAAe,2EAAsE,CAAC;AAUnG,oGAAoG;AACpG,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CASnD;AAMD;;;GAGG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,GAAG,SAAS,GAAG,MAAM,GAAG,IAAI,CAelG;AAmBD;;;GAGG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CA2B/C;AAED;;;GAGG;AACH,wBAAgB,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAevD;AAMD;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,EAAE,MAAM,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,GAAG,MAAM,GAAG,IAAI,CAsChH"}
@@ -145,8 +145,14 @@ function ticketSentence(internal) {
145
145
  return exports.REPLAN_SENTENCE;
146
146
  if (/^this goal's work is done\s*[—-]+\s*no ready items/i.test(s))
147
147
  return exports.FINISHED_SENTENCE;
148
- if (/^nothing to do\s*[—-]+\s*no ready items/i.test(s))
149
- return exports.NOTHING_YET_SENTENCE;
148
+ if (/^nothing to do\s*[—-]+\s*no ready items/i.test(s)) {
149
+ // Why there was nothing (LOO-B-4): a plan that failed to come back says so, instead of a sentence that hides it.
150
+ const compile = /\(compile: (.*)\)\s*$/i.exec(s);
151
+ if (compile === null)
152
+ return exports.NOTHING_YET_SENTENCE;
153
+ const why = compile[1].replace(/\s*[—-]+\s*this run has nothing to work on\s*$/i, '').trim();
154
+ return `${exports.NOTHING_YET_SENTENCE}, because planning it failed (${plainWords(why)})`;
155
+ }
150
156
  return plainWords(s);
151
157
  }
152
158
  /** How a delivery note parked for want of CI begins (`branch-delivery.ts`'s `NO_CI_NOTE`). */
@@ -1 +1 @@
1
- {"version":3,"file":"ticket-words.js","sourceRoot":"","sources":["../src/ticket-words.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ticket-words.js","sourceRoot":"","sources":["../src/ticket-words.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "looply-cli",
3
- "version": "0.5.31",
3
+ "version": "0.5.32",
4
4
  "description": "Leave your coding agent running. looply picks the work, holds the rails, and proves every change before it is kept.",
5
5
  "license": "MIT",
6
6
  "bin": {
@@ -32,7 +32,7 @@
32
32
  "prepublishOnly": "npm run build"
33
33
  },
34
34
  "dependencies": {
35
- "@looply/core": "0.5.31",
35
+ "@looply/core": "0.5.32",
36
36
  "pdfjs-dist": "5.6.205",
37
37
  "qrcode-terminal": "^0.12.0",
38
38
  "yaml": "^2.5.1"