@shardworks/spider-apparatus 0.1.214 → 0.1.216

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/README.md CHANGED
@@ -4,7 +4,7 @@ The Spider is the guild's rig execution engine. It spawns rigs for open writs, d
4
4
 
5
5
  The Spider maintains bidirectional CDC cascades between writs and rigs: when a rig reaches a terminal or `stuck` state, the associated writ is transitioned to match; when a writ is cancelled, the associated rig is cancelled (writs transitioning to `completed` or `failed` do not cancel the rig). Engine failures cascade the rig to `stuck` (a non-terminal "needs attention" state) and the writ to `stuck`, preserving the obligation for future retry. Guards in both handlers break the circular cascade path so that a writ cancellation that triggers a rig cancellation does not attempt to re-transition the already-terminal writ.
6
6
 
7
- Depends on `@shardworks/stacks-apparatus` for rig persistence, `@shardworks/fabricator-apparatus` to look up engine designs, `@shardworks/clerk-apparatus` to transition writs, and `@shardworks/animator-apparatus` to launch quick-engine sessions.
7
+ Depends on `@shardworks/stacks-apparatus` for rig persistence, `@shardworks/fabricator-apparatus` to look up engine designs, `@shardworks/clerk-apparatus` to transition writs, and `@shardworks/animator-apparatus` to launch quick-engine sessions. Recommends `@shardworks/loom-apparatus` so the Spider's support kit can contribute the `mender` role used by the seal-engine recovery tail.
8
8
 
9
9
  ---
10
10
 
@@ -276,7 +276,7 @@ Config-defined templates and mappings override kit-contributed ones with the sam
276
276
 
277
277
  ## Support Kit
278
278
 
279
- The Spider contributes books and tools for rig inspection and control.
279
+ The Spider contributes books, tools, engines, and a role for rig inspection and control.
280
280
 
281
281
  ### Books
282
282
 
@@ -295,6 +295,40 @@ The Spider contributes books and tools for rig inspection and control.
295
295
  | `crawl` | `write` | Execute a single crawl step |
296
296
  | `crawl-continual` | `write` | Poll `crawl()` in a loop until no work remains |
297
297
 
298
+ ### Engines
299
+
300
+ | Engine | Kind | Description |
301
+ |---|---|---|
302
+ | `draft` | clockwork | Open a draft binding on the commission's target codex |
303
+ | `implement` | quick | Run the implementation session |
304
+ | `review` | quick | Run the review session |
305
+ | `revise` | quick | Revise based on review findings |
306
+ | `seal` | clockwork | Seal the draft (or grafts a recovery tail on rebase conflict — see below) |
307
+ | `anima-session` | quick | General-purpose anima session engine |
308
+ | `manual-merge` | quick | Grafted by the `seal` engine — summons the `spider.mender` anima to reconcile rebase conflicts |
309
+
310
+ ### Roles
311
+
312
+ The Spider contributes one role via its support kit (registered with Loom as `spider.mender`):
313
+
314
+ | Role | Permissions | Description |
315
+ |---|---|---|
316
+ | `mender` | *(none)* | A merge-conflict reconciliation anima. Summoned by the grafted `manual-merge` engine when Scriptorium reports a rebase conflict during sealing. The role has no tool permissions; it operates through the draft worktree's local `git` binary (available on the host). Its instructions live at `loom-roles/mender.md` in this package. |
317
+
318
+ ### Seal Recovery Tail
319
+
320
+ The `seal` engine's default behavior is to try Scriptorium's `seal()` and return `SealYields` on success. When Scriptorium throws a rebase-conflict failure (message prefix `Sealing seized:`) and the optional `recover` given is not `false`, the engine instead completes with `SealRecoveryYields = { ok: false, reason, grafted: true }` and grafts a two-engine recovery tail onto the rig:
321
+
322
+ 1. `manual-merge` — summons the `spider.mender` anima in the draft worktree. The anima rebases the draft onto the latest target, resolves conflicts by hand, and emits `### Merge: SUCCESS` when the worktree is ready for a fast-forward push.
323
+ 2. `seal` (retry) — a second `seal` engine with `givens.recover = false`, preventing a second recovery layer.
324
+
325
+ Recovery is disabled on three paths:
326
+ - `abandon: true` — abandon failures always re-throw unchanged.
327
+ - `recover: false` — the retry seal itself, so a second rebase conflict takes the rig to `stuck`.
328
+ - Any error whose message does not start with `Sealing seized:` (auth, network, missing branch, push race, etc.) — re-throws unchanged.
329
+
330
+ If the mender emits `### Merge: FAILURE`, emits no marker, or the retry seal also fails, the rig goes `stuck` via the standard `failEngine` path. There is no third attempt.
331
+
298
332
  ## Types
299
333
 
300
334
  ```typescript
@@ -2,6 +2,7 @@ export { default as animaSessionEngine } from './anima-session.ts';
2
2
  export { default as draftEngine } from './draft.ts';
3
3
  export { default as implementEngine, EXECUTION_EPILOGUE } from './implement.ts';
4
4
  export { default as implementLoopEngine } from './implement-loop.ts';
5
+ export { default as manualMergeEngine } from './manual-merge.ts';
5
6
  export { default as pieceSessionEngine, PIECE_EXECUTION_EPILOGUE } from './piece-session.ts';
6
7
  export { default as reviewEngine } from './review.ts';
7
8
  export { default as reviseEngine } from './revise.ts';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/engines/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AACnE,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,YAAY,CAAC;AACpD,OAAO,EAAE,OAAO,IAAI,eAAe,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AAChF,OAAO,EAAE,OAAO,IAAI,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AACrE,OAAO,EAAE,OAAO,IAAI,kBAAkB,EAAE,wBAAwB,EAAE,MAAM,oBAAoB,CAAC;AAC7F,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,aAAa,CAAC;AACtD,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,aAAa,CAAC;AACtD,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,WAAW,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/engines/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AACnE,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,YAAY,CAAC;AACpD,OAAO,EAAE,OAAO,IAAI,eAAe,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AAChF,OAAO,EAAE,OAAO,IAAI,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AACrE,OAAO,EAAE,OAAO,IAAI,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AACjE,OAAO,EAAE,OAAO,IAAI,kBAAkB,EAAE,wBAAwB,EAAE,MAAM,oBAAoB,CAAC;AAC7F,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,aAAa,CAAC;AACtD,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,aAAa,CAAC;AACtD,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,WAAW,CAAC"}
@@ -2,6 +2,7 @@ export { default as animaSessionEngine } from "./anima-session.js";
2
2
  export { default as draftEngine } from "./draft.js";
3
3
  export { default as implementEngine, EXECUTION_EPILOGUE } from "./implement.js";
4
4
  export { default as implementLoopEngine } from "./implement-loop.js";
5
+ export { default as manualMergeEngine } from "./manual-merge.js";
5
6
  export { default as pieceSessionEngine, PIECE_EXECUTION_EPILOGUE } from "./piece-session.js";
6
7
  export { default as reviewEngine } from "./review.js";
7
8
  export { default as reviseEngine } from "./revise.js";
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/engines/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AACnE,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,YAAY,CAAC;AACpD,OAAO,EAAE,OAAO,IAAI,eAAe,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AAChF,OAAO,EAAE,OAAO,IAAI,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AACrE,OAAO,EAAE,OAAO,IAAI,kBAAkB,EAAE,wBAAwB,EAAE,MAAM,oBAAoB,CAAC;AAC7F,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,aAAa,CAAC;AACtD,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,aAAa,CAAC;AACtD,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,WAAW,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/engines/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AACnE,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,YAAY,CAAC;AACpD,OAAO,EAAE,OAAO,IAAI,eAAe,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AAChF,OAAO,EAAE,OAAO,IAAI,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AACrE,OAAO,EAAE,OAAO,IAAI,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AACjE,OAAO,EAAE,OAAO,IAAI,kBAAkB,EAAE,wBAAwB,EAAE,MAAM,oBAAoB,CAAC;AAC7F,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,aAAa,CAAC;AACtD,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,aAAa,CAAC;AACtD,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,WAAW,CAAC"}
@@ -0,0 +1,25 @@
1
+ /**
2
+ * Manual-merge engine — quick (Animator-backed).
3
+ *
4
+ * Summons the `spider.mender` anima inside the draft worktree to reconcile
5
+ * rebase conflicts that caused Scriptorium's seal() to seize. The anima's
6
+ * job is to rebase the draft branch onto the target, resolve conflicts by
7
+ * hand, and leave the branch ready for a fast-forward push. A grafted
8
+ * retry `seal` engine runs immediately after and handles the push itself
9
+ * — push is explicitly denied to the mender role.
10
+ *
11
+ * Output contract: the anima must end its final message with exactly one
12
+ * marker line — either `### Merge: SUCCESS` or `### Merge: FAILURE`. The
13
+ * `collect()` method parses the marker with a distinct prefix that does
14
+ * not collide with the review engine's `### Overall: PASS|FAIL` pattern.
15
+ *
16
+ * On success: returns { sessionId, merged: true } so the retry seal can run.
17
+ * On failure (marker missing, FAILURE emitted, or session otherwise
18
+ * non-productive): throws in collect(). The Spider catches the throw in
19
+ * tryCollect and transitions the engine to `failed`, which takes the rig
20
+ * to `stuck` — no second recovery attempt.
21
+ */
22
+ import type { EngineDesign } from '@shardworks/fabricator-apparatus';
23
+ declare const manualMergeEngine: EngineDesign;
24
+ export default manualMergeEngine;
25
+ //# sourceMappingURL=manual-merge.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"manual-merge.d.ts","sourceRoot":"","sources":["../../src/engines/manual-merge.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAKH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kCAAkC,CAAC;AA4FrE,QAAA,MAAM,iBAAiB,EAAE,YAuDxB,CAAC;AAEF,eAAe,iBAAiB,CAAC"}
@@ -0,0 +1,146 @@
1
+ /**
2
+ * Manual-merge engine — quick (Animator-backed).
3
+ *
4
+ * Summons the `spider.mender` anima inside the draft worktree to reconcile
5
+ * rebase conflicts that caused Scriptorium's seal() to seize. The anima's
6
+ * job is to rebase the draft branch onto the target, resolve conflicts by
7
+ * hand, and leave the branch ready for a fast-forward push. A grafted
8
+ * retry `seal` engine runs immediately after and handles the push itself
9
+ * — push is explicitly denied to the mender role.
10
+ *
11
+ * Output contract: the anima must end its final message with exactly one
12
+ * marker line — either `### Merge: SUCCESS` or `### Merge: FAILURE`. The
13
+ * `collect()` method parses the marker with a distinct prefix that does
14
+ * not collide with the review engine's `### Overall: PASS|FAIL` pattern.
15
+ *
16
+ * On success: returns { sessionId, merged: true } so the retry seal can run.
17
+ * On failure (marker missing, FAILURE emitted, or session otherwise
18
+ * non-productive): throws in collect(). The Spider catches the throw in
19
+ * tryCollect and transitions the engine to `failed`, which takes the rig
20
+ * to `stuck` — no second recovery attempt.
21
+ */
22
+ import { execFile } from 'node:child_process';
23
+ import { promisify } from 'node:util';
24
+ import { guild } from '@shardworks/nexus-core';
25
+ const execFileAsync = promisify(execFile);
26
+ async function gitStatus(cwd) {
27
+ try {
28
+ const { stdout } = await execFileAsync('git', ['status', '--porcelain=v1', '-b'], { cwd });
29
+ return stdout;
30
+ }
31
+ catch {
32
+ return '';
33
+ }
34
+ }
35
+ /**
36
+ * Pull the recovery reason out of an upstream seal engine's yields.
37
+ * The seal engine that grafted this manual-merge is the immediate upstream,
38
+ * but we tolerate custom engine ids by duck-typing on the SealRecoveryYields
39
+ * shape instead of hardcoding the id.
40
+ */
41
+ function extractSealReason(upstream) {
42
+ for (const [id, value] of Object.entries(upstream)) {
43
+ if (id === 'draft')
44
+ continue;
45
+ if (typeof value !== 'object' || value === null)
46
+ continue;
47
+ const y = value;
48
+ if (y.grafted === true && typeof y.reason === 'string') {
49
+ return y.reason;
50
+ }
51
+ }
52
+ return '(no recovery reason reported)';
53
+ }
54
+ function assembleMergePrompt(writ, draft, status, reason) {
55
+ return `# Manual Merge Recovery
56
+
57
+ An automatic seal attempt on this draft failed due to a rebase conflict
58
+ against the target branch. Your job is to reconcile the draft's inscriptions
59
+ against the latest target and leave the draft branch in a state where a
60
+ plain fast-forward push will succeed. A retry seal engine will run right
61
+ after you finish and it will do the push — you must NOT push yourself.
62
+
63
+ ## The Commission (Spec)
64
+
65
+ ${writ.body}
66
+
67
+ ## Seal Failure
68
+
69
+ ${reason}
70
+
71
+ ## Draft Context
72
+
73
+ - Codex: \`${draft.codexName}\`
74
+ - Draft branch: \`${draft.branch}\`
75
+ - Worktree: \`${draft.path}\`
76
+
77
+ ## Current Worktree Status
78
+
79
+ \`\`\`
80
+ ${status}
81
+ \`\`\`
82
+
83
+ ## Instructions
84
+
85
+ 1. You are running inside the draft worktree already. Defend against
86
+ inconsistent state: if \`git status\` reports an in-progress rebase,
87
+ run \`git rebase --abort\` before starting any reconciliation.
88
+ 2. Fetch the target branch from \`origin\` and rebase the draft branch
89
+ onto it. Resolve each conflict by hand — inspect the conflicting code
90
+ and the commission above, and only commit a resolution you can
91
+ justify. Do NOT fabricate a merge you cannot defend.
92
+ 3. After reconciliation, finish the rebase so the draft branch has a
93
+ clean linear history on top of the fetched target. Do NOT run
94
+ \`git push\` under any circumstance — the retry seal engine handles
95
+ the push.
96
+ 4. Your FINAL message must end with exactly one marker line on its own:
97
+
98
+ - \`### Merge: SUCCESS\` — reconciliation complete; the draft branch
99
+ is ready for a fast-forward seal.
100
+ - \`### Merge: FAILURE\` — you could not reconcile safely; explain
101
+ why in the lines above the marker.
102
+
103
+ Do not emit any other text after the marker line.`;
104
+ }
105
+ const manualMergeEngine = {
106
+ id: 'manual-merge',
107
+ async run(givens, context) {
108
+ const animator = guild().apparatus('animator');
109
+ const writ = givens.writ;
110
+ const draft = context.upstream['draft'];
111
+ if (!writ) {
112
+ throw new Error('manual-merge engine requires the "writ" given but none was supplied.');
113
+ }
114
+ if (!draft) {
115
+ throw new Error('manual-merge engine requires draft yields in context.upstream but none found.');
116
+ }
117
+ const cwd = typeof givens.cwd === 'string' && givens.cwd.length > 0 ? givens.cwd : draft.path;
118
+ const role = typeof givens.role === 'string' && givens.role.length > 0 ? givens.role : 'spider.mender';
119
+ const reason = extractSealReason(context.upstream);
120
+ const status = await gitStatus(cwd);
121
+ const prompt = assembleMergePrompt(writ, draft, status, reason);
122
+ const handle = animator.summon({
123
+ role,
124
+ prompt,
125
+ cwd,
126
+ environment: { GIT_AUTHOR_EMAIL: `${writ.id}@nexus.local` },
127
+ metadata: { engineId: context.engineId, writId: writ.id },
128
+ });
129
+ return { status: 'launched', sessionId: handle.sessionId };
130
+ },
131
+ async collect(sessionId) {
132
+ const stacks = guild().apparatus('stacks');
133
+ const sessionsBook = stacks.readBook('animator', 'sessions');
134
+ const session = await sessionsBook.get(sessionId);
135
+ const output = session?.output ?? '';
136
+ if (/^###\s*Merge:\s*SUCCESS\b/mi.test(output)) {
137
+ return { sessionId, merged: true };
138
+ }
139
+ if (/^###\s*Merge:\s*FAILURE\b/mi.test(output)) {
140
+ throw new Error('Manual merge failed: mender anima emitted `### Merge: FAILURE` marker.');
141
+ }
142
+ throw new Error('Manual merge failed: mender anima did not emit a `### Merge: SUCCESS` or `### Merge: FAILURE` marker.');
143
+ },
144
+ };
145
+ export default manualMergeEngine;
146
+ //# sourceMappingURL=manual-merge.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"manual-merge.js","sourceRoot":"","sources":["../../src/engines/manual-merge.ts"],"names":[],"mappings":"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"}
@@ -9,6 +9,24 @@
9
9
  * given is truthy, abandons the draft instead — removing the worktree and
10
10
  * branch without merging. This is used by rigs that need codebase access
11
11
  * (e.g. planning rigs) but don't produce inscriptions to seal.
12
+ *
13
+ * Recovery tail.
14
+ * When Scriptorium's `seal()` throws a rebase-conflict failure (message
15
+ * prefixed with `Sealing seized:`), this engine catches the throw and
16
+ * grafts a two-engine recovery tail: a `manual-merge` quick engine that
17
+ * summons the `spider.mender` anima to reconcile conflicts in the draft
18
+ * worktree, followed by a retry `seal` engine with `recover: false` that
19
+ * attempts the push a second time. The engine itself completes with
20
+ * { ok: false, reason, grafted: true } so the rig stays alive while the
21
+ * graft processes.
22
+ *
23
+ * Recovery is disabled on three paths:
24
+ * - `abandon: true` — abandon failures always re-throw unchanged.
25
+ * - `recover: false` — used by the grafted retry seal itself to avoid a
26
+ * second recovery layer (one attempt only).
27
+ * - Any failure whose message does NOT start with `Sealing seized:`
28
+ * (auth, network, missing branch, abandon errors, etc.). These re-throw
29
+ * unchanged so the rig goes stuck via the standard failEngine path.
12
30
  */
13
31
  import type { EngineDesign } from '@shardworks/fabricator-apparatus';
14
32
  declare const sealEngine: EngineDesign;
@@ -1 +1 @@
1
- {"version":3,"file":"seal.d.ts","sourceRoot":"","sources":["../../src/engines/seal.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAGH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kCAAkC,CAAC;AAIrE,QAAA,MAAM,UAAU,EAAE,YAmCjB,CAAC;AAEF,eAAe,UAAU,CAAC"}
1
+ {"version":3,"file":"seal.d.ts","sourceRoot":"","sources":["../../src/engines/seal.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AAGH,OAAO,KAAK,EAAE,YAAY,EAAmB,MAAM,kCAAkC,CAAC;AAqBtF,QAAA,MAAM,UAAU,EAAE,YA4FjB,CAAC;AAEF,eAAe,UAAU,CAAC"}
@@ -9,8 +9,35 @@
9
9
  * given is truthy, abandons the draft instead — removing the worktree and
10
10
  * branch without merging. This is used by rigs that need codebase access
11
11
  * (e.g. planning rigs) but don't produce inscriptions to seal.
12
+ *
13
+ * Recovery tail.
14
+ * When Scriptorium's `seal()` throws a rebase-conflict failure (message
15
+ * prefixed with `Sealing seized:`), this engine catches the throw and
16
+ * grafts a two-engine recovery tail: a `manual-merge` quick engine that
17
+ * summons the `spider.mender` anima to reconcile conflicts in the draft
18
+ * worktree, followed by a retry `seal` engine with `recover: false` that
19
+ * attempts the push a second time. The engine itself completes with
20
+ * { ok: false, reason, grafted: true } so the rig stays alive while the
21
+ * graft processes.
22
+ *
23
+ * Recovery is disabled on three paths:
24
+ * - `abandon: true` — abandon failures always re-throw unchanged.
25
+ * - `recover: false` — used by the grafted retry seal itself to avoid a
26
+ * second recovery layer (one attempt only).
27
+ * - Any failure whose message does NOT start with `Sealing seized:`
28
+ * (auth, network, missing branch, abandon errors, etc.). These re-throw
29
+ * unchanged so the rig goes stuck via the standard failEngine path.
12
30
  */
13
31
  import { guild } from '@shardworks/nexus-core';
32
+ /**
33
+ * Message prefix Scriptorium uses for rebase-conflict seal failures.
34
+ * Tested against scriptorium-core.ts's single throw site
35
+ * (`Sealing seized: rebase of "..." onto "..." produced conflicts.`).
36
+ */
37
+ const REBASE_CONFLICT_PREFIX = 'Sealing seized:';
38
+ function isRebaseConflictFailure(err) {
39
+ return err instanceof Error && err.message.startsWith(REBASE_CONFLICT_PREFIX);
40
+ }
14
41
  const sealEngine = {
15
42
  id: 'seal',
16
43
  async run(givens, context) {
@@ -20,6 +47,8 @@ const sealEngine = {
20
47
  throw new Error('Seal engine requires draft yields in context.upstream but none found.');
21
48
  }
22
49
  if (givens.abandon) {
50
+ // Abandon-path failures throw as today — recovery is inapplicable
51
+ // (abandon cannot produce merge conflicts).
23
52
  await scriptorium.abandonDraft({
24
53
  codexName: draftYields.codexName,
25
54
  branch: draftYields.branch,
@@ -27,17 +56,67 @@ const sealEngine = {
27
56
  });
28
57
  return { status: 'completed', yields: { abandoned: true } };
29
58
  }
30
- const result = await scriptorium.seal({
31
- codexName: draftYields.codexName,
32
- sourceBranch: draftYields.branch,
33
- });
34
- const yields = {
35
- sealedCommit: result.sealedCommit,
36
- strategy: result.strategy,
37
- retries: result.retries,
38
- inscriptionsSealed: result.inscriptionsSealed,
39
- };
40
- return { status: 'completed', yields };
59
+ const recoverEnabled = givens.recover !== false;
60
+ try {
61
+ const result = await scriptorium.seal({
62
+ codexName: draftYields.codexName,
63
+ sourceBranch: draftYields.branch,
64
+ });
65
+ const yields = {
66
+ sealedCommit: result.sealedCommit,
67
+ strategy: result.strategy,
68
+ retries: result.retries,
69
+ inscriptionsSealed: result.inscriptionsSealed,
70
+ };
71
+ return { status: 'completed', yields };
72
+ }
73
+ catch (err) {
74
+ // Only rebase-conflict failures trigger recovery. All other failures
75
+ // (auth, network, missing branch, etc.) re-throw unchanged.
76
+ if (!recoverEnabled || !isRebaseConflictFailure(err)) {
77
+ throw err;
78
+ }
79
+ const originatingEngineId = context.engineId;
80
+ const manualMergeEngineId = `${originatingEngineId}-manual-merge`;
81
+ const retrySealEngineId = `${originatingEngineId}-retry`;
82
+ const reason = err instanceof Error ? err.message : String(err);
83
+ const graft = [
84
+ {
85
+ id: manualMergeEngineId,
86
+ designId: 'manual-merge',
87
+ upstream: [originatingEngineId],
88
+ givens: {
89
+ writ: '${writ}',
90
+ role: 'spider.mender',
91
+ cwd: '${yields.draft.path}',
92
+ },
93
+ },
94
+ {
95
+ id: retrySealEngineId,
96
+ designId: 'seal',
97
+ upstream: [manualMergeEngineId],
98
+ // recover: false prevents a second recovery layer — if the retry
99
+ // seal also seizes, the rig goes stuck as before.
100
+ givens: { recover: false },
101
+ },
102
+ ];
103
+ const yields = {
104
+ ok: false,
105
+ reason,
106
+ grafted: true,
107
+ };
108
+ const result = {
109
+ status: 'completed',
110
+ yields,
111
+ graft,
112
+ // graftTail ensures any engine downstream of the original seal waits
113
+ // for the retry seal to finish before running. None of the current
114
+ // templates have engines downstream of seal, but this keeps the
115
+ // contract correct for future templates.
116
+ graftTail: retrySealEngineId,
117
+ };
118
+ return result;
119
+ }
41
120
  },
42
121
  };
43
122
  export default sealEngine;
@@ -1 +1 @@
1
- {"version":3,"file":"seal.js","sourceRoot":"","sources":["../../src/engines/seal.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,EAAE,KAAK,EAAE,MAAM,wBAAwB,CAAC;AAK/C,MAAM,UAAU,GAAiB;IAC/B,EAAE,EAAE,MAAM;IAEV,KAAK,CAAC,GAAG,CAAC,MAAM,EAAE,OAAO;QACvB,MAAM,WAAW,GAAG,KAAK,EAAE,CAAC,SAAS,CAAiB,SAAS,CAAC,CAAC;QACjE,MAAM,WAAW,GAAG,OAAO,CAAC,QAAQ,CAAC,OAAO,CAA4B,CAAC;QAEzE,IAAI,CAAC,WAAW,EAAE,CAAC;YACjB,MAAM,IAAI,KAAK,CAAC,uEAAuE,CAAC,CAAC;QAC3F,CAAC;QAED,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;YACnB,MAAM,WAAW,CAAC,YAAY,CAAC;gBAC7B,SAAS,EAAE,WAAW,CAAC,SAAS;gBAChC,MAAM,EAAE,WAAW,CAAC,MAAM;gBAC1B,KAAK,EAAE,IAAI;aACZ,CAAC,CAAC;YAEH,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,EAAE,CAAC;QAC9D,CAAC;QAED,MAAM,MAAM,GAAG,MAAM,WAAW,CAAC,IAAI,CAAC;YACpC,SAAS,EAAE,WAAW,CAAC,SAAS;YAChC,YAAY,EAAE,WAAW,CAAC,MAAM;SACjC,CAAC,CAAC;QAEH,MAAM,MAAM,GAAe;YACzB,YAAY,EAAE,MAAM,CAAC,YAAY;YACjC,QAAQ,EAAE,MAAM,CAAC,QAAQ;YACzB,OAAO,EAAE,MAAM,CAAC,OAAO;YACvB,kBAAkB,EAAE,MAAM,CAAC,kBAAkB;SAC9C,CAAC;QAEF,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,CAAC;IACzC,CAAC;CACF,CAAC;AAEF,eAAe,UAAU,CAAC"}
1
+ {"version":3,"file":"seal.js","sourceRoot":"","sources":["../../src/engines/seal.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"spider.d.ts","sourceRoot":"","sources":["../src/spider.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AAEH,OAAO,KAAK,EAAE,MAAM,EAAwD,MAAM,wBAAwB,CAAC;AAO3G,OAAO,KAAK,EACV,MAAM,EAUN,WAAW,EAKZ,MAAM,YAAY,CAAC;AAkDpB,uEAAuE;AACvE,MAAM,WAAW,SAAS;IACxB,6EAA6E;IAC7E,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;IAC3C,oFAAoF;IACpF,mBAAmB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAC9C;AA+CD;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,MAAM,CAQ1D;AAED;;GAEG;AACH,wBAAgB,wBAAwB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAM5D;AA2/BD,wBAAgB,YAAY,IAAI,MAAM,CA4gCrC"}
1
+ {"version":3,"file":"spider.d.ts","sourceRoot":"","sources":["../src/spider.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AAEH,OAAO,KAAK,EAAE,MAAM,EAAwD,MAAM,wBAAwB,CAAC;AAQ3G,OAAO,KAAK,EACV,MAAM,EAUN,WAAW,EAKZ,MAAM,YAAY,CAAC;AAmDpB,uEAAuE;AACvE,MAAM,WAAW,SAAS;IACxB,6EAA6E;IAC7E,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;IAC3C,oFAAoF;IACpF,mBAAmB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAC9C;AA+CD;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,MAAM,CAQ1D;AAED;;GAEG;AACH,wBAAgB,wBAAwB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAM5D;AA2/BD,wBAAgB,YAAY,IAAI,MAAM,CAwiCrC"}
package/dist/spider.js CHANGED
@@ -26,7 +26,7 @@
26
26
  * See: docs/architecture/apparatus/spider.md
27
27
  */
28
28
  import { guild, generateId } from '@shardworks/nexus-core';
29
- import { animaSessionEngine, draftEngine, implementEngine, implementLoopEngine, pieceSessionEngine, reviewEngine, reviseEngine, sealEngine, } from "./engines/index.js";
29
+ import { animaSessionEngine, draftEngine, implementEngine, implementLoopEngine, manualMergeEngine, pieceSessionEngine, reviewEngine, reviseEngine, sealEngine, } from "./engines/index.js";
30
30
  import { writStatusBlockType, scheduledTimeBlockType, bookUpdatedBlockType, patronInputBlockType, } from "./block-types/index.js";
31
31
  import { crawlOneTool, crawlContinualTool, rigShowTool, rigListTool, rigForWritTool, rigResumeTool, inputRequestListTool, inputRequestShowTool, inputRequestAnswerTool, inputRequestCompleteTool, inputRequestRejectTool, inputRequestExportTool, inputRequestImportTool, engineDesignsTool, blockTypesTool, rigCancelTool, } from "./tools/index.js";
32
32
  import { spiderRoutes } from "./oculus-routes.js";
@@ -1113,7 +1113,19 @@ export function createSpider() {
1113
1113
  const upstream = buildUpstreamMap(rig);
1114
1114
  const givens = resolveYieldRefs(engine.givensSpec, upstream);
1115
1115
  const context = { rigId: rig.id, engineId: engine.id, upstream };
1116
- const collectResult = await design.collect(engine.sessionId, givens, context);
1116
+ // Treat a collect() throw the same way tryRun() treats a run() throw:
1117
+ // fail the engine with the error message and take the rig to stuck.
1118
+ // This is what engines like manual-merge rely on to signal failure
1119
+ // when the anima's output does not satisfy the output contract.
1120
+ let collectResult;
1121
+ try {
1122
+ collectResult = await design.collect(engine.sessionId, givens, context);
1123
+ }
1124
+ catch (err) {
1125
+ const errorMessage = err instanceof Error ? err.message : String(err);
1126
+ await failEngine(rig, engine.id, errorMessage);
1127
+ return { action: 'rig-completed', rigId: rig.id, writId: rig.writId, outcome: 'stuck' };
1128
+ }
1117
1129
  // Check for SpiderCollectResult shape (duck-typing)
1118
1130
  if (collectResult !== null &&
1119
1131
  collectResult !== undefined &&
@@ -1670,7 +1682,12 @@ export function createSpider() {
1670
1682
  return {
1671
1683
  apparatus: {
1672
1684
  requires: ['stacks', 'clerk', 'fabricator'],
1673
- recommends: ['oculus'],
1685
+ // 'loom' is recommended (not required) so Spider still boots in guilds
1686
+ // that do not install the Loom. When Loom is absent the mender role
1687
+ // registration is simply inert — the manual-merge engine will fail at
1688
+ // summon time if a rig ever tries to invoke it without Loom, which is
1689
+ // the same failure mode as every other role-based quick engine.
1690
+ recommends: ['oculus', 'loom'],
1674
1691
  consumes: ['blockTypes', 'rigTemplates', 'rigTemplateMappings'],
1675
1692
  supportKit: {
1676
1693
  books: {
@@ -1686,11 +1703,23 @@ export function createSpider() {
1686
1703
  draft: draftEngine,
1687
1704
  implement: implementEngine,
1688
1705
  'implement-loop': implementLoopEngine,
1706
+ 'manual-merge': manualMergeEngine,
1689
1707
  'piece-session': pieceSessionEngine,
1690
1708
  review: reviewEngine,
1691
1709
  revise: reviseEngine,
1692
1710
  seal: sealEngine,
1693
1711
  },
1712
+ roles: {
1713
+ // Mender — the anima the seal engine's recovery tail summons to
1714
+ // reconcile rebase conflicts in a draft worktree. Push is
1715
+ // explicitly NOT granted; the retry seal engine handles the push
1716
+ // itself. See packages/plugins/spider/loom-roles/mender.md.
1717
+ 'mender': {
1718
+ permissions: [],
1719
+ strict: false,
1720
+ instructionsFile: 'loom-roles/mender.md',
1721
+ },
1722
+ },
1694
1723
  blockTypes: {
1695
1724
  'writ-status': writStatusBlockType,
1696
1725
  'scheduled-time': scheduledTimeBlockType,
@@ -1 +1 @@
1
- {"version":3,"file":"spider.js","sourceRoot":"","sources":["../src/spider.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"spider.js","sourceRoot":"","sources":["../src/spider.ts"],"names":[],"mappings":"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"}
package/dist/types.d.ts CHANGED
@@ -410,6 +410,33 @@ export interface SealYields {
410
410
  /** Number of inscriptions (commits) sealed. */
411
411
  inscriptionsSealed: number;
412
412
  }
413
+ /**
414
+ * Yields from the `seal` clockwork engine when it catches a rebase-conflict
415
+ * failure from Scriptorium and grafts a manual-merge recovery tail instead
416
+ * of failing the rig. The original rig still has a terminal `seal` engine
417
+ * holding these yields; the retry seal that runs after the grafted
418
+ * manual-merge anima produces standard SealYields under a new engine id.
419
+ */
420
+ export interface SealRecoveryYields {
421
+ /** Always false — the initial seal attempt did not succeed. */
422
+ ok: false;
423
+ /** The Scriptorium error message that triggered recovery. */
424
+ reason: string;
425
+ /** Always true — flags this record as a recovery handoff. */
426
+ grafted: true;
427
+ }
428
+ /**
429
+ * Yields from the `manual-merge` quick engine when the mender anima
430
+ * reconciles the draft branch against the target. A `SUCCESS` marker
431
+ * produces these yields; any other outcome throws in `collect()` and
432
+ * fails the engine.
433
+ */
434
+ export interface ManualMergeYields {
435
+ /** The Animator session id. */
436
+ sessionId: string;
437
+ /** Always true — the mender emitted `### Merge: SUCCESS`. */
438
+ merged: true;
439
+ }
413
440
  /**
414
441
  * Yields from the `implement` quick engine.
415
442
  * Set by the Spider's collect step when the Animator session completes.
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,75 @@
1
+ # Spider — Mender
2
+
3
+ You are a merge-conflict reconciliation agent. You are summoned by the Spider's seal engine after Scriptorium's automatic seal attempt has failed because the draft branch cannot be cleanly rebased onto the target branch. Your job is to reconcile the draft's inscriptions against the latest target branch and leave the draft branch in a state where a plain fast-forward push will succeed.
4
+
5
+ You are **not** a general implementer. You do not invent new behavior, you do not refactor, you do not "clean up" code you see along the way. You rebase, resolve, and exit. A retry seal engine runs after you and it will do the push — you must **not** push yourself.
6
+
7
+ ---
8
+
9
+ ## Where You Are
10
+
11
+ You are running inside the draft's worktree — the `cwd` is set for you. The draft branch is already checked out. Scriptorium aborted its failed rebase before summoning you, so the worktree should be clean when you start.
12
+
13
+ Before doing anything else, defend against an inconsistent rebase state. Run `git status` first. If it reports an in-progress rebase (`rebase in progress`, `rebase-merge`, `rebase-apply`), run `git rebase --abort` immediately and re-check status. Do not proceed until the worktree is clean and no rebase is pending.
14
+
15
+ ---
16
+
17
+ ## What To Do
18
+
19
+ 1. **Audit the current state.**
20
+ - `git status` — confirm the worktree is clean and no rebase is in progress.
21
+ - `git log --oneline -20` — understand the draft branch's inscriptions.
22
+ - `git branch --show-current` — confirm you are on the draft branch.
23
+
24
+ 2. **Fetch the latest target.**
25
+ - `git fetch origin` — pick up the latest target branch.
26
+ - Identify the target branch from the prompt context (typically the codex's default branch, often `main`).
27
+
28
+ 3. **Rebase and resolve.**
29
+ - `git rebase origin/<target>` (substitute the actual target branch name).
30
+ - If conflicts appear, resolve them by hand:
31
+ - `git status` to see the conflicted files.
32
+ - Read each conflicted file. Understand both sides of the conflict.
33
+ - Decide the correct resolution based on the commission (spec) in the prompt and the surrounding code. If you cannot decide safely, stop and emit `### Merge: FAILURE` — do not guess.
34
+ - Stage the resolved files with `git add`.
35
+ - Continue the rebase with `git rebase --continue`.
36
+ - Repeat until the rebase completes.
37
+
38
+ 4. **Verify.**
39
+ - `git status` — confirm the worktree is clean, no rebase in progress.
40
+ - `git log --oneline origin/<target>..HEAD` — confirm the draft's inscriptions sit cleanly on top of the fetched target.
41
+
42
+ 5. **Stop.** Do NOT run `git push`. The retry seal engine handles the push.
43
+
44
+ ---
45
+
46
+ ## Under Uncertainty
47
+
48
+ Refuse to fabricate a merge you cannot justify. Signals that you should emit `### Merge: FAILURE` instead of continuing:
49
+
50
+ - A conflict requires understanding the target branch's changes that you cannot reconstruct from the diff alone.
51
+ - The target branch has renamed, moved, or deleted a file the draft modifies, and the correct way to port the draft's change is ambiguous.
52
+ - A conflict is deep inside generated code, a lockfile, or a binary asset and both sides are plausible.
53
+ - Tests would need to be rewritten to resolve the conflict, and the commission above does not authorize that rewrite.
54
+
55
+ When in doubt: `git rebase --abort`, emit `### Merge: FAILURE` with a clear explanation, and let the rig go stuck so a human can intervene.
56
+
57
+ ---
58
+
59
+ ## Tools You MUST NOT Use
60
+
61
+ - **`git push`** — the retry seal engine pushes. If you push, you will either race the retry seal or create a non-linear history; either way the rig becomes unrecoverable.
62
+ - **`git commit --amend` on already-pushed commits** — the draft branch's inscriptions are what the review has already passed; do not rewrite their content beyond what the rebase itself requires for conflict resolution.
63
+ - **`git reset --hard origin/<target>`** or any other destructive reset on the draft branch — that throws away the work the rig produced.
64
+ - **`git merge`** to paper over the rebase — sealing enforces linear history; a merge commit will be rejected by the retry seal.
65
+
66
+ ---
67
+
68
+ ## Output Contract
69
+
70
+ Your FINAL message must end with exactly one marker line, on its own:
71
+
72
+ - `### Merge: SUCCESS` — reconciliation complete; the draft branch has been rebased onto the fetched target and is ready for a fast-forward seal.
73
+ - `### Merge: FAILURE` — you could not reconcile safely. Explain why on the lines immediately above the marker.
74
+
75
+ Do not emit any other text after the marker line. The Spider's collect step reads this marker verbatim to decide whether to run the retry seal or fail the rig.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@shardworks/spider-apparatus",
3
- "version": "0.1.214",
3
+ "version": "0.1.216",
4
4
  "license": "ISC",
5
5
  "repository": {
6
6
  "type": "git",
@@ -22,20 +22,22 @@
22
22
  "hono": "^4.7.11",
23
23
  "yaml": "^2.0.0",
24
24
  "zod": "4.3.6",
25
- "@shardworks/fabricator-apparatus": "0.1.214",
26
- "@shardworks/stacks-apparatus": "0.1.214",
27
- "@shardworks/clerk-apparatus": "0.1.214",
28
- "@shardworks/tools-apparatus": "0.1.214",
29
- "@shardworks/animator-apparatus": "0.1.214",
30
- "@shardworks/codexes-apparatus": "0.1.214"
25
+ "@shardworks/fabricator-apparatus": "0.1.216",
26
+ "@shardworks/clerk-apparatus": "0.1.216",
27
+ "@shardworks/animator-apparatus": "0.1.216",
28
+ "@shardworks/tools-apparatus": "0.1.216",
29
+ "@shardworks/codexes-apparatus": "0.1.216",
30
+ "@shardworks/stacks-apparatus": "0.1.216",
31
+ "@shardworks/loom-apparatus": "0.1.216"
31
32
  },
32
33
  "devDependencies": {
33
34
  "@types/node": "25.5.0",
34
- "@shardworks/nexus-core": "0.1.214"
35
+ "@shardworks/nexus-core": "0.1.216"
35
36
  },
36
37
  "files": [
37
38
  "dist",
38
- "src/static"
39
+ "src/static",
40
+ "loom-roles"
39
41
  ],
40
42
  "scripts": {
41
43
  "build": "tsc",