@wrongstack/core 0.291.2 → 0.292.0
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/coordination/director-tools.d.ts.map +1 -1
- package/dist/coordination/index.js +113 -113
- package/dist/coordination/index.js.map +3 -3
- package/dist/core/agent-loop.d.ts.map +1 -1
- package/dist/core/agent-response.d.ts.map +1 -1
- package/dist/core/context.d.ts +10 -0
- package/dist/core/context.d.ts.map +1 -1
- package/dist/core/system-prompt-builder.d.ts +20 -1
- package/dist/core/system-prompt-builder.d.ts.map +1 -1
- package/dist/defaults/index.d.ts +1 -0
- package/dist/defaults/index.d.ts.map +1 -1
- package/dist/defaults/index.js +3132 -2440
- package/dist/defaults/index.js.map +4 -4
- package/dist/execution/auto-compaction-middleware.d.ts +34 -2
- package/dist/execution/auto-compaction-middleware.d.ts.map +1 -1
- package/dist/execution/compaction-core.d.ts +59 -0
- package/dist/execution/compaction-core.d.ts.map +1 -1
- package/dist/execution/compactor.d.ts.map +1 -1
- package/dist/execution/error-handler.d.ts +7 -0
- package/dist/execution/error-handler.d.ts.map +1 -1
- package/dist/execution/index.d.ts +1 -0
- package/dist/execution/index.d.ts.map +1 -1
- package/dist/execution/index.js +4677 -3924
- package/dist/execution/index.js.map +4 -4
- package/dist/execution/intelligent-compactor.d.ts.map +1 -1
- package/dist/execution/model-runtime.d.ts.map +1 -1
- package/dist/execution/selective-compactor.d.ts +10 -0
- package/dist/execution/selective-compactor.d.ts.map +1 -1
- package/dist/execution/subagent-compaction.d.ts +24 -0
- package/dist/execution/subagent-compaction.d.ts.map +1 -0
- package/dist/hq/alerts.d.ts +5 -0
- package/dist/hq/alerts.d.ts.map +1 -1
- package/dist/hq/auth-audit.d.ts +115 -0
- package/dist/hq/auth-audit.d.ts.map +1 -0
- package/dist/hq/auth-store.d.ts +98 -2
- package/dist/hq/auth-store.d.ts.map +1 -1
- package/dist/hq/brain-bridge.d.ts +2 -8
- package/dist/hq/brain-bridge.d.ts.map +1 -1
- package/dist/hq/bridge-context.d.ts +74 -0
- package/dist/hq/bridge-context.d.ts.map +1 -0
- package/dist/hq/cost-bridge.d.ts +4 -10
- package/dist/hq/cost-bridge.d.ts.map +1 -1
- package/dist/hq/fleet-bridge.d.ts +2 -8
- package/dist/hq/fleet-bridge.d.ts.map +1 -1
- package/dist/hq/index.d.ts +2 -0
- package/dist/hq/index.d.ts.map +1 -1
- package/dist/hq/index.js +358 -222
- package/dist/hq/index.js.map +4 -4
- package/dist/hq/protocol/session.d.ts +13 -0
- package/dist/hq/protocol/session.d.ts.map +1 -1
- package/dist/hq/tool-bridge.d.ts +2 -8
- package/dist/hq/tool-bridge.d.ts.map +1 -1
- package/dist/hq/worktree-bridge.d.ts +2 -8
- package/dist/hq/worktree-bridge.d.ts.map +1 -1
- package/dist/index.d.ts +4 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +6054 -4741
- package/dist/index.js.map +4 -4
- package/dist/infrastructure/index.js +32 -15
- package/dist/infrastructure/index.js.map +2 -2
- package/dist/infrastructure/provider-cache-ledger.d.ts +48 -0
- package/dist/infrastructure/provider-cache-ledger.d.ts.map +1 -0
- package/dist/infrastructure/token-counter.d.ts +4 -2
- package/dist/infrastructure/token-counter.d.ts.map +1 -1
- package/dist/kernel/events/brain-events.d.ts +2 -0
- package/dist/kernel/events/brain-events.d.ts.map +1 -1
- package/dist/kernel/events/memory-events.d.ts +102 -0
- package/dist/kernel/events/memory-events.d.ts.map +1 -1
- package/dist/kernel/events/session-events.d.ts +35 -0
- package/dist/kernel/events/session-events.d.ts.map +1 -1
- package/dist/models/index.js +161 -78
- package/dist/models/index.js.map +3 -3
- package/dist/models/llm-selector.d.ts.map +1 -1
- package/dist/notifications/index.d.ts +40 -0
- package/dist/notifications/index.d.ts.map +1 -0
- package/dist/notifications/notifier-impl.d.ts +34 -0
- package/dist/notifications/notifier-impl.d.ts.map +1 -0
- package/dist/notifications/notifier.d.ts +95 -0
- package/dist/notifications/notifier.d.ts.map +1 -0
- package/dist/notifications/types.d.ts +111 -0
- package/dist/notifications/types.d.ts.map +1 -0
- package/dist/plugin/api.d.ts +10 -1
- package/dist/plugin/api.d.ts.map +1 -1
- package/dist/registry/provider-registry.d.ts +1 -1
- package/dist/registry/provider-registry.d.ts.map +1 -1
- package/dist/security/index.js +15 -15
- package/dist/security/index.js.map +3 -3
- package/dist/skills/index.js +80 -80
- package/dist/skills/index.js.map +3 -3
- package/dist/storage/config-loader.d.ts +3 -5
- package/dist/storage/config-loader.d.ts.map +1 -1
- package/dist/storage/index.js +325 -259
- package/dist/storage/index.js.map +4 -4
- package/dist/storage/memory-consolidator.d.ts +14 -2
- package/dist/storage/memory-consolidator.d.ts.map +1 -1
- package/dist/storage/queue-store.d.ts +2 -0
- package/dist/storage/queue-store.d.ts.map +1 -1
- package/dist/tools/index.js +6 -6
- package/dist/tools/index.js.map +3 -3
- package/dist/tools/mcp-control.d.ts +1 -1
- package/dist/types/config.d.ts +64 -20
- package/dist/types/config.d.ts.map +1 -1
- package/dist/types/index.js +60 -34
- package/dist/types/index.js.map +3 -3
- package/dist/types/plugin.d.ts +11 -0
- package/dist/types/plugin.d.ts.map +1 -1
- package/dist/types/provider.d.ts +31 -0
- package/dist/types/provider.d.ts.map +1 -1
- package/dist/types/token-counter.d.ts +8 -1
- package/dist/types/token-counter.d.ts.map +1 -1
- package/dist/utils/cache-key.d.ts +19 -0
- package/dist/utils/cache-key.d.ts.map +1 -0
- package/dist/utils/compaction-preview.d.ts +8 -0
- package/dist/utils/compaction-preview.d.ts.map +1 -0
- package/dist/utils/context-breakdown.d.ts +59 -0
- package/dist/utils/context-breakdown.d.ts.map +1 -0
- package/dist/utils/context-evidence.d.ts +22 -0
- package/dist/utils/context-evidence.d.ts.map +1 -1
- package/dist/utils/index.d.ts +2 -0
- package/dist/utils/index.d.ts.map +1 -1
- package/dist/utils/index.js +1730 -1543
- package/dist/utils/index.js.map +4 -4
- package/dist/utils/token-estimate.d.ts +27 -0
- package/dist/utils/token-estimate.d.ts.map +1 -1
- package/instructions/llm/memory-consolidator.md +19 -3
- package/instructions/system.md +10 -2
- package/package.json +2 -2
|
@@ -32,6 +32,20 @@ export declare function computeMessageTokens(msg: Message): number;
|
|
|
32
32
|
* sum for fully-cached arrays.
|
|
33
33
|
*/
|
|
34
34
|
export declare function estimateMessageTokens(messages: readonly Message[]): number;
|
|
35
|
+
/**
|
|
36
|
+
* Real-usage-anchored input-token count. Given the provider's authoritative
|
|
37
|
+
* prompt-token count from the last response (`anchorTokens`, a REAL number) and
|
|
38
|
+
* the `messages.length` of the request that produced it (`anchorMsgCount`),
|
|
39
|
+
* returns `anchorTokens + estimate(messages appended since)` — so everything up
|
|
40
|
+
* to the last turn is exact and only the newest, not-yet-sent messages are
|
|
41
|
+
* estimated. This is deliberately NOT calibrated: the base is already real, and
|
|
42
|
+
* on the next response the whole thing re-anchors to the new real count.
|
|
43
|
+
*
|
|
44
|
+
* Returns `null` when there is no usable anchor (no response yet, or the
|
|
45
|
+
* message array shrank below the anchor — e.g. after compaction — in which case
|
|
46
|
+
* the caller falls back to a full estimate until the next response re-anchors).
|
|
47
|
+
*/
|
|
48
|
+
export declare function realAnchoredInputTokens(messages: readonly Message[], anchorTokens: number | undefined, anchorMsgCount: number | undefined): number | null;
|
|
35
49
|
/**
|
|
36
50
|
* Rough estimate of tokens in a tool definition (name + description + schema).
|
|
37
51
|
* Accounts for the JSON-serialized inputSchema which is sent to the API
|
|
@@ -103,6 +117,19 @@ export declare function estimateRequestTokensCalibrated(messages: unknown, syste
|
|
|
103
117
|
description?: string | undefined;
|
|
104
118
|
inputSchema: unknown;
|
|
105
119
|
}[], calibrationKey?: string): RequestTokenBreakdown;
|
|
120
|
+
/**
|
|
121
|
+
* Never-undercount upper bound for the request token total, for the **send
|
|
122
|
+
* guard** only. Takes the flat estimate and scales it up by the greater of the
|
|
123
|
+
* content-density multiplier and the calibration ceiling, so the guarded value
|
|
124
|
+
* satisfies `real ≤ upperBound`. The context bar and `/context` keep using the
|
|
125
|
+
* calibrated estimate — this deliberately over-counts, which is only ever safe
|
|
126
|
+
* for the "must this be trimmed before sending?" decision.
|
|
127
|
+
*/
|
|
128
|
+
export declare function estimateRequestTokensUpperBound(messages: unknown, systemPrompt: unknown, tools: {
|
|
129
|
+
name: string;
|
|
130
|
+
description?: string | undefined;
|
|
131
|
+
inputSchema: unknown;
|
|
132
|
+
}[], calibrationKey?: string): RequestTokenBreakdown;
|
|
106
133
|
/**
|
|
107
134
|
* Resets calibration state. Primarily for tests that run in the same
|
|
108
135
|
* process and need a clean slate between suites. With no argument it clears
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"token-estimate.d.ts","sourceRoot":"","sources":["../../src/utils/token-estimate.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAyGpD;;;;GAIG;AACH,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAQ9D;AAED;;GAEG;AACH,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,GAAG,MAAM,CAG1E;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAEvD;AAED;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,OAAO,GAAG,MAAM,CAUzD;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,SAAS,OAAO,EAAE,GAAG,MAAM,CAU1E;AAED;;;;GAIG;AACH,wBAAgB,qBAAqB,CAAC,IAAI,EAAE;IAC1C,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACjC,WAAW,EAAE,OAAO,CAAC;CACtB,GAAG,MAAM,CAWT;AAED;;;;;;;;;;;GAWG;AACH,MAAM,WAAW,qBAAqB;IACpC,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;CACf;AAED,wBAAgB,qBAAqB,CACnC,QAAQ,EAAE,OAAO,EACjB,YAAY,EAAE,OAAO,EACrB,KAAK,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAAC,WAAW,EAAE,OAAO,CAAA;CAAE,EAAE,EACjF,cAAc,GAAE,MAA+B,GAC9C,qBAAqB,CAqEvB;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,iBAAiB,CAC/B,iBAAiB,EAAE,MAAM,EACzB,oBAAoB,CAAC,EAAE,MAAM,EAC7B,cAAc,GAAE,MAA+B,GAC9C,IAAI,CAiBN;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,cAAc,GAAE,MAA+B,GAAG;IACpF,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,OAAO,CAAC;CACrB,CAOA;AAED;;;;;;;;GAQG;AACH,wBAAgB,+BAA+B,CAC7C,QAAQ,EAAE,OAAO,EACjB,YAAY,EAAE,OAAO,EACrB,KAAK,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAAC,WAAW,EAAE,OAAO,CAAA;CAAE,EAAE,EACjF,cAAc,GAAE,MAA+B,GAC9C,qBAAqB,CA2BvB;AAWD;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,CAM9D"}
|
|
1
|
+
{"version":3,"file":"token-estimate.d.ts","sourceRoot":"","sources":["../../src/utils/token-estimate.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAyGpD;;;;GAIG;AACH,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAQ9D;AAED;;GAEG;AACH,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,GAAG,MAAM,CAG1E;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAEvD;AAED;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,OAAO,GAAG,MAAM,CAUzD;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,SAAS,OAAO,EAAE,GAAG,MAAM,CAU1E;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,uBAAuB,CACrC,QAAQ,EAAE,SAAS,OAAO,EAAE,EAC5B,YAAY,EAAE,MAAM,GAAG,SAAS,EAChC,cAAc,EAAE,MAAM,GAAG,SAAS,GACjC,MAAM,GAAG,IAAI,CAMf;AAED;;;;GAIG;AACH,wBAAgB,qBAAqB,CAAC,IAAI,EAAE;IAC1C,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACjC,WAAW,EAAE,OAAO,CAAC;CACtB,GAAG,MAAM,CAWT;AAED;;;;;;;;;;;GAWG;AACH,MAAM,WAAW,qBAAqB;IACpC,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;CACf;AAED,wBAAgB,qBAAqB,CACnC,QAAQ,EAAE,OAAO,EACjB,YAAY,EAAE,OAAO,EACrB,KAAK,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAAC,WAAW,EAAE,OAAO,CAAA;CAAE,EAAE,EACjF,cAAc,GAAE,MAA+B,GAC9C,qBAAqB,CAqEvB;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,iBAAiB,CAC/B,iBAAiB,EAAE,MAAM,EACzB,oBAAoB,CAAC,EAAE,MAAM,EAC7B,cAAc,GAAE,MAA+B,GAC9C,IAAI,CAiBN;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,cAAc,GAAE,MAA+B,GAAG;IACpF,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,OAAO,CAAC;CACrB,CAOA;AAED;;;;;;;;GAQG;AACH,wBAAgB,+BAA+B,CAC7C,QAAQ,EAAE,OAAO,EACjB,YAAY,EAAE,OAAO,EACrB,KAAK,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAAC,WAAW,EAAE,OAAO,CAAA;CAAE,EAAE,EACjF,cAAc,GAAE,MAA+B,GAC9C,qBAAqB,CA2BvB;AA6DD;;;;;;;GAOG;AACH,wBAAgB,+BAA+B,CAC7C,QAAQ,EAAE,OAAO,EACjB,YAAY,EAAE,OAAO,EACrB,KAAK,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAAC,WAAW,EAAE,OAAO,CAAA;CAAE,EAAE,EACjF,cAAc,GAAE,MAA+B,GAC9C,qBAAqB,CAgBvB;AAWD;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,CAM9D"}
|
|
@@ -1,10 +1,13 @@
|
|
|
1
1
|
You are a memory consolidator. Review the following session summary and decide what key facts, conventions, decisions, or learnings should be persisted to long-term memory.
|
|
2
2
|
|
|
3
3
|
Session summary ({{iterations}} iterations):
|
|
4
|
-
{{summary}}
|
|
4
|
+
{{summary}}
|
|
5
|
+
|
|
6
|
+
Grounding evidence from this run (bounded; use only what is relevant):
|
|
7
|
+
{{evidence}}{{existingEntries}}
|
|
5
8
|
|
|
6
9
|
Return a JSON object with an "operations" array. Each operation must have an "action" field:
|
|
7
|
-
- "add": create a new memory entry. Include "text",
|
|
10
|
+
- "add": create a new memory entry. Include "text", "type", "tags", "priority", "confidence", and concrete "anchors" when evidence supports them.
|
|
8
11
|
|
|
9
12
|
This consolidator is strictly add-only. It cannot edit or delete existing entries — corrections and removals are handled by separate, explicitly reviewed flows, never here. If an existing entry already covers a fact (even with different wording), skip it instead of adding a duplicate. "edit" or "delete" operations will be ignored.
|
|
10
13
|
|
|
@@ -15,6 +18,12 @@ Memory types:
|
|
|
15
18
|
- "preference": User or team preference (e.g. "prefers short variable names")
|
|
16
19
|
- "reference": Pointer to a file or location (e.g. "auth logic in packages/core/src/auth/")
|
|
17
20
|
- "anti_pattern": Something to avoid (e.g. "never use any in TypeScript")
|
|
21
|
+
- "warning": A durable operational or safety warning
|
|
22
|
+
- "workflow": A repeatable multi-step project workflow
|
|
23
|
+
- "bug_root_cause": A verified cause of a recurring or important bug
|
|
24
|
+
- "file_note": Durable ownership or responsibility of a file/package
|
|
25
|
+
- "symbol_note": Durable behavior or contract of a function/class/symbol
|
|
26
|
+
- "command_note": A useful project command and what it verifies or changes
|
|
18
27
|
|
|
19
28
|
Priority levels:
|
|
20
29
|
- "critical": Must always be known (e.g. security constraints)
|
|
@@ -25,10 +34,15 @@ Priority levels:
|
|
|
25
34
|
Rules:
|
|
26
35
|
- Only persist facts likely useful across multiple future sessions.
|
|
27
36
|
- Do NOT persist task progress, temporary state, or one-off observations.
|
|
37
|
+
- Prefer memories tied to stable project entities: files, directories, symbols, packages, tests, commands, decisions, conventions, workflows, and verified root causes.
|
|
38
|
+
- Add 1-3 anchors whenever possible. Anchor objects use {"type":"file|directory|symbol|package|command|test|git", "path"?:string, "symbol"?:string, "command"?:string}.
|
|
39
|
+
- Never invent an anchor. Use only paths, commands, symbols, packages, or tests supported by the summary/evidence.
|
|
40
|
+
- Set confidence from 0.5 to 1.0. Use high confidence only for directly observed or verified claims.
|
|
28
41
|
- Do NOT add a fact that an existing entry already covers.
|
|
29
42
|
- Assign a type and priority to every "add" operation.
|
|
30
43
|
- Use 1-3 hashtag tags for each entry (e.g. #typescript #build).
|
|
31
44
|
- Be concise — each memory entry should be one clear sentence.
|
|
45
|
+
- Return at most 5 additions. Return an empty operations array if the run produced no durable knowledge.
|
|
32
46
|
|
|
33
47
|
Return ONLY valid JSON, no markdown, no explanation:
|
|
34
48
|
{
|
|
@@ -38,7 +52,9 @@ Return ONLY valid JSON, no markdown, no explanation:
|
|
|
38
52
|
"text": "Project uses pnpm workspaces with TypeScript strict mode",
|
|
39
53
|
"type": "convention",
|
|
40
54
|
"priority": "high",
|
|
41
|
-
"
|
|
55
|
+
"confidence": 0.95,
|
|
56
|
+
"tags": ["pnpm", "typescript", "build"],
|
|
57
|
+
"anchors": [{"type":"file", "path":"pnpm-workspace.yaml"}]
|
|
42
58
|
}
|
|
43
59
|
]
|
|
44
60
|
}
|
package/instructions/system.md
CHANGED
|
@@ -87,8 +87,16 @@ I am composed of tool groups, each with a distinct purpose. This section maps th
|
|
|
87
87
|
|
|
88
88
|
### Agents & Delegation
|
|
89
89
|
`delegate`, `spawn_subagent`, `assign_task`, `await_tasks`, `ask_subagent`, `terminate_subagent`, `fleet`, `fleet_emit`, `work_complete`, `quality_gate`, `collab_debug`
|
|
90
|
-
|
|
91
|
-
-
|
|
90
|
+
|
|
91
|
+
**The blocking-vs-async distinction is the most important rule in this section:**
|
|
92
|
+
|
|
93
|
+
- `delegate` is **synchronous / blocking**: the leader's iteration pauses for the full duration of the subagent's run; no other tools execute while `delegate` is in flight. Use it only when your next decision genuinely needs the result (review, fact-check, sign-off). Multiple sequential `delegate` calls each block the leader, wasting wall-clock time.
|
|
94
|
+
- `spawn_subagent` + `assign_task` + `await_tasks` is the **async / non-blocking** pattern: `spawn_subagent` returns immediately with a `subagentId`, `assign_task` returns immediately with a `taskId`, the leader keeps doing other work, and `await_tasks` retrieves the result later. Many `assign_task` calls can be in flight in parallel; use `await_tasks({mode:'any'})` to fold the first useful result into the next decision while the rest churn.
|
|
95
|
+
|
|
96
|
+
**Decision rule:** does my next step depend on the result? If **yes** → `delegate`. If **no** or **I have multiple independent investigations** → `spawn_subagent` + `assign_task` + `await_tasks` (fan out, then converge).
|
|
97
|
+
|
|
98
|
+
- `delegate` for one-shot work in a separate context (own LLM, own budget) — *blocking*.
|
|
99
|
+
- `spawn_subagent` + `assign_task` + `await_tasks` for long-running fleet work — *non-blocking; the canonical async pattern*.
|
|
92
100
|
- `quality_gate` to verify implementation before accepting it.
|
|
93
101
|
- `collab_debug` for parallel bug-hunt / refactor / critique sessions.
|
|
94
102
|
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@wrongstack/core",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.292.0",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"description": "WrongStack core: kernel, types, defaults, and shared utilities for the WrongStack CLI agent.",
|
|
6
6
|
"repository": {
|
|
@@ -91,7 +91,7 @@
|
|
|
91
91
|
],
|
|
92
92
|
"wrongstackApiVersion": "0.1.10",
|
|
93
93
|
"dependencies": {
|
|
94
|
-
"@wrongstack/kanban": "0.
|
|
94
|
+
"@wrongstack/kanban": "0.292.0"
|
|
95
95
|
},
|
|
96
96
|
"devDependencies": {
|
|
97
97
|
"@types/node": "^26.1.1",
|