hungry-ghost-hive 0.45.0 → 0.46.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/cli/commands/cluster.d.ts.map +1 -1
- package/dist/cli/commands/cluster.js +348 -1
- package/dist/cli/commands/cluster.js.map +1 -1
- package/dist/cli/commands/cluster.test.js +313 -9
- package/dist/cli/commands/cluster.test.js.map +1 -1
- package/dist/cli/commands/req-spawn.test.d.ts +2 -0
- package/dist/cli/commands/req-spawn.test.d.ts.map +1 -0
- package/dist/cli/commands/req-spawn.test.js +116 -0
- package/dist/cli/commands/req-spawn.test.js.map +1 -0
- package/dist/cli/commands/req.d.ts.map +1 -1
- package/dist/cli/commands/req.js +21 -13
- package/dist/cli/commands/req.js.map +1 -1
- package/dist/cluster/cluster-http-server.d.ts +32 -0
- package/dist/cluster/cluster-http-server.d.ts.map +1 -1
- package/dist/cluster/cluster-http-server.js +42 -0
- package/dist/cluster/cluster-http-server.js.map +1 -1
- package/dist/cluster/distributed-runtime-coverage.test.js +9 -0
- package/dist/cluster/distributed-runtime-coverage.test.js.map +1 -1
- package/dist/cluster/distributed-system.test.js +135 -0
- package/dist/cluster/distributed-system.test.js.map +1 -1
- package/dist/cluster/events.d.ts +23 -0
- package/dist/cluster/events.d.ts.map +1 -1
- package/dist/cluster/events.js +74 -0
- package/dist/cluster/events.js.map +1 -1
- package/dist/cluster/heartbeat-manager.d.ts +2 -0
- package/dist/cluster/heartbeat-manager.d.ts.map +1 -1
- package/dist/cluster/heartbeat-manager.js +42 -6
- package/dist/cluster/heartbeat-manager.js.map +1 -1
- package/dist/cluster/membership.test.d.ts +2 -0
- package/dist/cluster/membership.test.d.ts.map +1 -0
- package/dist/cluster/membership.test.js +416 -0
- package/dist/cluster/membership.test.js.map +1 -0
- package/dist/cluster/partition-safety.test.d.ts +2 -0
- package/dist/cluster/partition-safety.test.d.ts.map +1 -0
- package/dist/cluster/partition-safety.test.js +440 -0
- package/dist/cluster/partition-safety.test.js.map +1 -0
- package/dist/cluster/raft-state-machine.d.ts +33 -1
- package/dist/cluster/raft-state-machine.d.ts.map +1 -1
- package/dist/cluster/raft-state-machine.js +65 -3
- package/dist/cluster/raft-state-machine.js.map +1 -1
- package/dist/cluster/raft-store.d.ts +26 -1
- package/dist/cluster/raft-store.d.ts.map +1 -1
- package/dist/cluster/raft-store.js +137 -0
- package/dist/cluster/raft-store.js.map +1 -1
- package/dist/cluster/replication-lag.test.d.ts +2 -0
- package/dist/cluster/replication-lag.test.d.ts.map +1 -0
- package/dist/cluster/replication-lag.test.js +239 -0
- package/dist/cluster/replication-lag.test.js.map +1 -0
- package/dist/cluster/replication.d.ts +2 -2
- package/dist/cluster/replication.d.ts.map +1 -1
- package/dist/cluster/replication.js +1 -1
- package/dist/cluster/replication.js.map +1 -1
- package/dist/cluster/runtime.d.ts +78 -0
- package/dist/cluster/runtime.d.ts.map +1 -1
- package/dist/cluster/runtime.js +400 -13
- package/dist/cluster/runtime.js.map +1 -1
- package/dist/cluster/state-recovery.test.d.ts +2 -0
- package/dist/cluster/state-recovery.test.d.ts.map +1 -0
- package/dist/cluster/state-recovery.test.js +310 -0
- package/dist/cluster/state-recovery.test.js.map +1 -0
- package/dist/cluster/types.d.ts +30 -0
- package/dist/cluster/types.d.ts.map +1 -1
- package/dist/config/schema.d.ts +48 -0
- package/dist/config/schema.d.ts.map +1 -1
- package/dist/config/schema.js +11 -0
- package/dist/config/schema.js.map +1 -1
- package/dist/context-files/generator.js +1 -1
- package/dist/context-files/generator.js.map +1 -1
- package/dist/context-files/generator.test.js +51 -0
- package/dist/context-files/generator.test.js.map +1 -1
- package/dist/orchestrator/orphan-recovery.d.ts +1 -1
- package/dist/orchestrator/orphan-recovery.d.ts.map +1 -1
- package/dist/orchestrator/orphan-recovery.js +4 -4
- package/dist/orchestrator/orphan-recovery.js.map +1 -1
- package/dist/orchestrator/prompt-templates.d.ts +3 -1
- package/dist/orchestrator/prompt-templates.d.ts.map +1 -1
- package/dist/orchestrator/prompt-templates.js +45 -8
- package/dist/orchestrator/prompt-templates.js.map +1 -1
- package/dist/orchestrator/prompt-templates.test.js +210 -0
- package/dist/orchestrator/prompt-templates.test.js.map +1 -1
- package/dist/orchestrator/scheduler.d.ts +1 -0
- package/dist/orchestrator/scheduler.d.ts.map +1 -1
- package/dist/orchestrator/scheduler.js +15 -10
- package/dist/orchestrator/scheduler.js.map +1 -1
- package/dist/orchestrator/scheduler.test.js +97 -6
- package/dist/orchestrator/scheduler.test.js.map +1 -1
- package/package.json +1 -1
- package/src/cli/commands/cluster.test.ts +387 -9
- package/src/cli/commands/cluster.ts +486 -1
- package/src/cli/commands/req-spawn.test.ts +153 -0
- package/src/cli/commands/req.ts +31 -18
- package/src/cluster/cluster-http-server.ts +80 -0
- package/src/cluster/distributed-runtime-coverage.test.ts +9 -0
- package/src/cluster/distributed-system.test.ts +168 -0
- package/src/cluster/events.ts +90 -0
- package/src/cluster/heartbeat-manager.ts +48 -6
- package/src/cluster/membership.test.ts +498 -0
- package/src/cluster/partition-safety.test.ts +523 -0
- package/src/cluster/raft-state-machine.ts +76 -4
- package/src/cluster/raft-store.ts +167 -1
- package/src/cluster/replication-lag.test.ts +284 -0
- package/src/cluster/replication.ts +6 -0
- package/src/cluster/runtime.ts +551 -12
- package/src/cluster/state-recovery.test.ts +420 -0
- package/src/cluster/types.ts +32 -0
- package/src/config/schema.ts +11 -0
- package/src/context-files/generator.test.ts +55 -0
- package/src/context-files/generator.ts +5 -5
- package/src/orchestrator/orphan-recovery.ts +32 -13
- package/src/orchestrator/prompt-templates.test.ts +263 -0
- package/src/orchestrator/prompt-templates.ts +49 -8
- package/src/orchestrator/scheduler.test.ts +129 -6
- package/src/orchestrator/scheduler.ts +46 -20
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generator.js","sourceRoot":"","sources":["../../src/context-files/generator.ts"],"names":[],"mappings":"AAAA,6DAA6D;AAS7D,OAAO,EAAE,uBAAuB,EAAE,MAAM,oBAAoB,CAAC;AAE7D,OAAO,EAAE,kBAAkB,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAEnF;;GAEG;AACH,MAAM,UAAU,0BAA0B,CAAC,OAA2B;IACpE,MAAM,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC;IAE5B,gDAAgD;IAChD,IAAI,QAAiD,CAAC;IAEtD,QAAQ,OAAO,EAAE,CAAC;QAChB,KAAK,aAAa;YAChB,QAAQ,GAAG,kBAAkB,CAAC;YAC9B,MAAM;QACR,KAAK,OAAO;YACV,QAAQ,GAAG,aAAa,CAAC;YACzB,MAAM;QACR,KAAK,QAAQ;YACX,QAAQ,GAAG,cAAc,CAAC;YAC1B,MAAM;QACR;YACE,MAAM,IAAI,uBAAuB,CAAC,yBAAyB,OAAO,EAAE,CAAC,CAAC;IAC1E,CAAC;IAED,OAAO,QAAQ,CAAC,OAAO,CAAC,CAAC;AAC3B,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,uBAAuB,CAAC,OAAmB;IACzD,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACzB,OAAO,mBAAmB,CAAC;IAC7B,CAAC;IAED,OAAO,OAAO;SACX,GAAG,CACF,KAAK,CAAC,EAAE,CAAC;MACT,KAAK,CAAC,EAAE,KAAK,KAAK,CAAC,KAAK;gBACd,KAAK,CAAC,MAAM;oBACR,KAAK,CAAC,gBAAgB,IAAI,eAAe;sBACvC,KAAK,CAAC,YAAY,IAAI,eAAe;qBACtC,KAAK,CAAC,WAAW;
|
|
1
|
+
{"version":3,"file":"generator.js","sourceRoot":"","sources":["../../src/context-files/generator.ts"],"names":[],"mappings":"AAAA,6DAA6D;AAS7D,OAAO,EAAE,uBAAuB,EAAE,MAAM,oBAAoB,CAAC;AAE7D,OAAO,EAAE,kBAAkB,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAEnF;;GAEG;AACH,MAAM,UAAU,0BAA0B,CAAC,OAA2B;IACpE,MAAM,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC;IAE5B,gDAAgD;IAChD,IAAI,QAAiD,CAAC;IAEtD,QAAQ,OAAO,EAAE,CAAC;QAChB,KAAK,aAAa;YAChB,QAAQ,GAAG,kBAAkB,CAAC;YAC9B,MAAM;QACR,KAAK,OAAO;YACV,QAAQ,GAAG,aAAa,CAAC;YACzB,MAAM;QACR,KAAK,QAAQ;YACX,QAAQ,GAAG,cAAc,CAAC;YAC1B,MAAM;QACR;YACE,MAAM,IAAI,uBAAuB,CAAC,yBAAyB,OAAO,EAAE,CAAC,CAAC;IAC1E,CAAC;IAED,OAAO,QAAQ,CAAC,OAAO,CAAC,CAAC;AAC3B,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,uBAAuB,CAAC,OAAmB;IACzD,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACzB,OAAO,mBAAmB,CAAC;IAC7B,CAAC;IAED,OAAO,OAAO;SACX,GAAG,CACF,KAAK,CAAC,EAAE,CAAC;MACT,KAAK,CAAC,EAAE,KAAK,KAAK,CAAC,KAAK;gBACd,KAAK,CAAC,MAAM;oBACR,KAAK,CAAC,gBAAgB,IAAI,eAAe;sBACvC,KAAK,CAAC,YAAY,IAAI,eAAe;qBACtC,KAAK,CAAC,WAAW;EACpC,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,oCAAoC,KAAK,CAAC,aAAa,wDAAwD,CAAC,CAAC,CAAC,EAAE,GACpI,KAAK,CAAC,mBAAmB,IAAI,KAAK,CAAC,mBAAmB,CAAC,MAAM,GAAG,CAAC;QAC/D,CAAC,CAAC,6BAA6B,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,mBAAmB,IAAI,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAS,EAAE,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;QACjM,CAAC,CAAC,EACN,EAAE,CACH;SACA,IAAI,CAAC,MAAM,CAAC,CAAC;AAClB,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,mBAAmB,CAAC,QAAkB;IACpD,OAAO,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,KAAK,GAAG,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACtD,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,uBAAuB,CAAC,SAAiB;IACvD,QAAQ,SAAS,EAAE,CAAC;QAClB,KAAK,WAAW;YACd,OAAO,mGAAmG,CAAC;QAC7G,KAAK,QAAQ;YACX,OAAO,kFAAkF,CAAC;QAC5F,KAAK,cAAc;YACjB,OAAO,wFAAwF,CAAC;QAClG,KAAK,QAAQ;YACX,OAAO,0FAA0F,CAAC;QACpG,KAAK,IAAI;YACP,OAAO,iFAAiF,CAAC;QAC3F;YACE,OAAO,GAAG,SAAS,QAAQ,CAAC;IAChC,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,qBAAqB,CAAC,OAAgB,EAAE,eAAwB;IAC9E,MAAM,SAAS,GAAG,eAAe,IAAI,gBAAgB,CAAC;IACtD,OAAO;;;;;;;;;;gBAUO,SAAS;;;iBAGR,OAAO,IAAI,eAAe;;;;;;EAMzC,OAAO,CAAC,CAAC,CAAC,wBAAwB,OAAO,IAAI,CAAC,CAAC,CAAC,EAAE;CACnD,CAAC;AACF,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,iBAAiB;IAC/B,OAAO;;;;;;;;;;;;;;;CAeR,CAAC;AACF,CAAC"}
|
|
@@ -169,6 +169,57 @@ describe('generator module', () => {
|
|
|
169
169
|
const result = formatStoriesForContext(stories);
|
|
170
170
|
expect(result).not.toContain('Acceptance Criteria');
|
|
171
171
|
});
|
|
172
|
+
it('should include markdown_path reference when set on a story', () => {
|
|
173
|
+
const stories = [
|
|
174
|
+
{
|
|
175
|
+
id: 'STORY-1',
|
|
176
|
+
title: 'Story With Markdown',
|
|
177
|
+
description: 'DB description',
|
|
178
|
+
status: 'in_progress',
|
|
179
|
+
complexity_score: 3,
|
|
180
|
+
story_points: 3,
|
|
181
|
+
team_id: 'team-1',
|
|
182
|
+
requirement_id: null,
|
|
183
|
+
acceptance_criteria: null,
|
|
184
|
+
assigned_agent_id: null,
|
|
185
|
+
branch_name: null,
|
|
186
|
+
pr_url: null,
|
|
187
|
+
jira_issue_key: null,
|
|
188
|
+
jira_issue_id: null,
|
|
189
|
+
markdown_path: '/stories/STORY-1.md',
|
|
190
|
+
created_at: '2024-01-01',
|
|
191
|
+
updated_at: '2024-01-01',
|
|
192
|
+
},
|
|
193
|
+
];
|
|
194
|
+
const result = formatStoriesForContext(stories);
|
|
195
|
+
expect(result).toContain('/stories/STORY-1.md');
|
|
196
|
+
expect(result).toContain('Full Story Details');
|
|
197
|
+
});
|
|
198
|
+
it('should not include markdown reference when markdown_path is null', () => {
|
|
199
|
+
const stories = [
|
|
200
|
+
{
|
|
201
|
+
id: 'STORY-1',
|
|
202
|
+
title: 'Story Without Markdown',
|
|
203
|
+
description: 'DB only description',
|
|
204
|
+
status: 'planned',
|
|
205
|
+
complexity_score: 2,
|
|
206
|
+
story_points: 2,
|
|
207
|
+
team_id: 'team-1',
|
|
208
|
+
requirement_id: null,
|
|
209
|
+
acceptance_criteria: null,
|
|
210
|
+
assigned_agent_id: null,
|
|
211
|
+
branch_name: null,
|
|
212
|
+
pr_url: null,
|
|
213
|
+
jira_issue_key: null,
|
|
214
|
+
jira_issue_id: null,
|
|
215
|
+
markdown_path: null,
|
|
216
|
+
created_at: '2024-01-01',
|
|
217
|
+
updated_at: '2024-01-01',
|
|
218
|
+
},
|
|
219
|
+
];
|
|
220
|
+
const result = formatStoriesForContext(stories);
|
|
221
|
+
expect(result).not.toContain('Full Story Details');
|
|
222
|
+
});
|
|
172
223
|
});
|
|
173
224
|
describe('formatQualityChecks', () => {
|
|
174
225
|
it('should format single command', () => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generator.test.js","sourceRoot":"","sources":["../../src/context-files/generator.test.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"generator.test.js","sourceRoot":"","sources":["../../src/context-files/generator.test.ts"],"names":[],"mappings":"AAAA,6DAA6D;AAE7D,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAE9C,OAAO,EAAE,uBAAuB,EAAE,MAAM,oBAAoB,CAAC;AAC7D,OAAO,EACL,iBAAiB,EACjB,qBAAqB,EACrB,mBAAmB,EACnB,uBAAuB,EACvB,0BAA0B,EAC1B,uBAAuB,GACxB,MAAM,gBAAgB,CAAC;AAGxB,QAAQ,CAAC,kBAAkB,EAAE,GAAG,EAAE;IAChC,QAAQ,CAAC,4BAA4B,EAAE,GAAG,EAAE;QAC1C,MAAM,WAAW,GAAuB;YACtC,IAAI,EAAE;gBACJ,EAAE,EAAE,QAAQ;gBACZ,IAAI,EAAE,WAAW;gBACjB,SAAS,EAAE,eAAe;gBAC1B,QAAQ,EAAE,8BAA8B;gBACxC,UAAU,EAAE,YAAY;aACzB;YACD,OAAO,EAAE,EAAE;YACX,SAAS,EAAE,QAAQ;YACnB,MAAM,EAAE;gBACN,MAAM,EAAE,EAAS;gBACjB,YAAY,EAAE,EAAS;gBACvB,EAAE,EAAE,EAAE,cAAc,EAAE,CAAC,cAAc,CAAC,EAAE,aAAa,EAAE,eAAe,EAAE;aAClE;YACR,OAAO,EAAE,aAAa;SACvB,CAAC;QAEF,EAAE,CAAC,yCAAyC,EAAE,GAAG,EAAE;YACjD,MAAM,OAAO,GAAG,0BAA0B,CAAC,EAAE,GAAG,WAAW,EAAE,OAAO,EAAE,aAAa,EAAE,CAAC,CAAC;YACvF,MAAM,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC;YACzC,MAAM,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;QACzC,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,mCAAmC,EAAE,GAAG,EAAE;YAC3C,MAAM,OAAO,GAAG,0BAA0B,CAAC,EAAE,GAAG,WAAW,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC;YACjF,MAAM,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;YACnC,MAAM,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;QACzC,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,oCAAoC,EAAE,GAAG,EAAE;YAC5C,MAAM,OAAO,GAAG,0BAA0B,CAAC,EAAE,GAAG,WAAW,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC,CAAC;YAClF,MAAM,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;YACpC,MAAM,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;QACzC,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,6CAA6C,EAAE,GAAG,EAAE;YACrD,MAAM,CAAC,GAAG,EAAE,CACV,0BAA0B,CAAC,EAAE,GAAG,WAAW,EAAE,OAAO,EAAE,SAAgB,EAAE,CAAC,CAC1E,CAAC,OAAO,CAAC,uBAAuB,CAAC,CAAC;YACnC,MAAM,CAAC,GAAG,EAAE,CACV,0BAA0B,CAAC,EAAE,GAAG,WAAW,EAAE,OAAO,EAAE,SAAgB,EAAE,CAAC,CAC1E,CAAC,OAAO,CAAC,+BAA+B,CAAC,CAAC;QAC7C,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,yBAAyB,EAAE,GAAG,EAAE;QACvC,EAAE,CAAC,mDAAmD,EAAE,GAAG,EAAE;YAC3D,MAAM,MAAM,GAAG,uBAAuB,CAAC,EAAE,CAAC,CAAC;YAC3C,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;QAC3C,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,sCAAsC,EAAE,GAAG,EAAE;YAC9C,MAAM,OAAO,GAAe;gBAC1B;oBACE,EAAE,EAAE,SAAS;oBACb,KAAK,EAAE,YAAY;oBACnB,WAAW,EAAE,kBAAkB;oBAC/B,MAAM,EAAE,aAAa;oBACrB,gBAAgB,EAAE,CAAC;oBACnB,YAAY,EAAE,CAAC;oBACf,OAAO,EAAE,QAAQ;oBACjB,cAAc,EAAE,IAAI;oBACpB,mBAAmB,EAAE,gCAAgC;oBACrD,iBAAiB,EAAE,IAAI;oBACvB,WAAW,EAAE,IAAI;oBACjB,MAAM,EAAE,IAAI;oBACZ,cAAc,EAAE,IAAI;oBACpB,aAAa,EAAE,IAAI;oBACnB,UAAU,EAAE,YAAY;oBACxB,UAAU,EAAE,YAAY;iBACb;aACd,CAAC;YAEF,MAAM,MAAM,GAAG,uBAAuB,CAAC,OAAO,CAAC,CAAC;YAChD,MAAM,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;YACpC,MAAM,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC;YACvC,MAAM,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC;YACxC,MAAM,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,mBAAmB,CAAC,CAAC;YAC9C,MAAM,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,qBAAqB,CAAC,CAAC;YAChD,MAAM,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC;YACxC,MAAM,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC;QAC1C,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,gCAAgC,EAAE,GAAG,EAAE;YACxC,MAAM,OAAO,GAAe;gBAC1B;oBACE,EAAE,EAAE,SAAS;oBACb,KAAK,EAAE,aAAa;oBACpB,WAAW,EAAE,mBAAmB;oBAChC,MAAM,EAAE,SAAS;oBACjB,gBAAgB,EAAE,CAAC;oBACnB,YAAY,EAAE,CAAC;oBACf,OAAO,EAAE,QAAQ;oBACjB,cAAc,EAAE,IAAI;oBACpB,mBAAmB,EAAE,IAAI;oBACzB,iBAAiB,EAAE,IAAI;oBACvB,WAAW,EAAE,IAAI;oBACjB,MAAM,EAAE,IAAI;oBACZ,cAAc,EAAE,IAAI;oBACpB,aAAa,EAAE,IAAI;oBACnB,UAAU,EAAE,YAAY;oBACxB,UAAU,EAAE,YAAY;iBACb;gBACb;oBACE,EAAE,EAAE,SAAS;oBACb,KAAK,EAAE,cAAc;oBACrB,WAAW,EAAE,oBAAoB;oBACjC,MAAM,EAAE,QAAQ;oBAChB,gBAAgB,EAAE,CAAC;oBACnB,YAAY,EAAE,CAAC;oBACf,OAAO,EAAE,QAAQ;oBACjB,cAAc,EAAE,IAAI;oBACpB,mBAAmB,EAAE,IAAI;oBACzB,iBAAiB,EAAE,IAAI;oBACvB,WAAW,EAAE,IAAI;oBACjB,MAAM,EAAE,IAAI;oBACZ,cAAc,EAAE,IAAI;oBACpB,aAAa,EAAE,IAAI;oBACnB,UAAU,EAAE,YAAY;oBACxB,UAAU,EAAE,YAAY;iBACb;aACd,CAAC;YAEF,MAAM,MAAM,GAAG,uBAAuB,CAAC,OAAO,CAAC,CAAC;YAChD,MAAM,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;YACpC,MAAM,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC;YACxC,MAAM,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;YACpC,MAAM,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC;QAC3C,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,iDAAiD,EAAE,GAAG,EAAE;YACzD,MAAM,OAAO,GAAe;gBAC1B;oBACE,EAAE,EAAE,SAAS;oBACb,KAAK,EAAE,YAAY;oBACnB,WAAW,EAAE,kBAAkB;oBAC/B,MAAM,EAAE,OAAO;oBACf,gBAAgB,EAAE,IAAI;oBACtB,YAAY,EAAE,IAAI;oBAClB,OAAO,EAAE,QAAQ;oBACjB,cAAc,EAAE,IAAI;oBACpB,mBAAmB,EAAE,IAAI;oBACzB,iBAAiB,EAAE,IAAI;oBACvB,WAAW,EAAE,IAAI;oBACjB,MAAM,EAAE,IAAI;oBACZ,cAAc,EAAE,IAAI;oBACpB,aAAa,EAAE,IAAI;oBACnB,UAAU,EAAE,YAAY;oBACxB,UAAU,EAAE,YAAY;iBACb;aACd,CAAC;YAEF,MAAM,MAAM,GAAG,uBAAuB,CAAC,OAAO,CAAC,CAAC;YAChD,MAAM,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,eAAe,CAAC,CAAC;QAC5C,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,mDAAmD,EAAE,GAAG,EAAE;YAC3D,MAAM,OAAO,GAAe;gBAC1B;oBACE,EAAE,EAAE,SAAS;oBACb,KAAK,EAAE,YAAY;oBACnB,WAAW,EAAE,kBAAkB;oBAC/B,MAAM,EAAE,SAAS;oBACjB,gBAAgB,EAAE,CAAC;oBACnB,YAAY,EAAE,CAAC;oBACf,OAAO,EAAE,QAAQ;oBACjB,cAAc,EAAE,IAAI;oBACpB,mBAAmB,EAAE,IAAI;oBACzB,iBAAiB,EAAE,IAAI;oBACvB,WAAW,EAAE,IAAI;oBACjB,MAAM,EAAE,IAAI;oBACZ,cAAc,EAAE,IAAI;oBACpB,aAAa,EAAE,IAAI;oBACnB,UAAU,EAAE,YAAY;oBACxB,UAAU,EAAE,YAAY;iBACb;aACd,CAAC;YAEF,MAAM,MAAM,GAAG,uBAAuB,CAAC,OAAO,CAAC,CAAC;YAChD,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,qBAAqB,CAAC,CAAC;QACtD,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,4DAA4D,EAAE,GAAG,EAAE;YACpE,MAAM,OAAO,GAAe;gBAC1B;oBACE,EAAE,EAAE,SAAS;oBACb,KAAK,EAAE,qBAAqB;oBAC5B,WAAW,EAAE,gBAAgB;oBAC7B,MAAM,EAAE,aAAa;oBACrB,gBAAgB,EAAE,CAAC;oBACnB,YAAY,EAAE,CAAC;oBACf,OAAO,EAAE,QAAQ;oBACjB,cAAc,EAAE,IAAI;oBACpB,mBAAmB,EAAE,IAAI;oBACzB,iBAAiB,EAAE,IAAI;oBACvB,WAAW,EAAE,IAAI;oBACjB,MAAM,EAAE,IAAI;oBACZ,cAAc,EAAE,IAAI;oBACpB,aAAa,EAAE,IAAI;oBACnB,aAAa,EAAE,qBAAqB;oBACpC,UAAU,EAAE,YAAY;oBACxB,UAAU,EAAE,YAAY;iBACb;aACd,CAAC;YAEF,MAAM,MAAM,GAAG,uBAAuB,CAAC,OAAO,CAAC,CAAC;YAChD,MAAM,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,qBAAqB,CAAC,CAAC;YAChD,MAAM,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,oBAAoB,CAAC,CAAC;QACjD,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,kEAAkE,EAAE,GAAG,EAAE;YAC1E,MAAM,OAAO,GAAe;gBAC1B;oBACE,EAAE,EAAE,SAAS;oBACb,KAAK,EAAE,wBAAwB;oBAC/B,WAAW,EAAE,qBAAqB;oBAClC,MAAM,EAAE,SAAS;oBACjB,gBAAgB,EAAE,CAAC;oBACnB,YAAY,EAAE,CAAC;oBACf,OAAO,EAAE,QAAQ;oBACjB,cAAc,EAAE,IAAI;oBACpB,mBAAmB,EAAE,IAAI;oBACzB,iBAAiB,EAAE,IAAI;oBACvB,WAAW,EAAE,IAAI;oBACjB,MAAM,EAAE,IAAI;oBACZ,cAAc,EAAE,IAAI;oBACpB,aAAa,EAAE,IAAI;oBACnB,aAAa,EAAE,IAAI;oBACnB,UAAU,EAAE,YAAY;oBACxB,UAAU,EAAE,YAAY;iBACb;aACd,CAAC;YAEF,MAAM,MAAM,GAAG,uBAAuB,CAAC,OAAO,CAAC,CAAC;YAChD,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,oBAAoB,CAAC,CAAC;QACrD,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,qBAAqB,EAAE,GAAG,EAAE;QACnC,EAAE,CAAC,8BAA8B,EAAE,GAAG,EAAE;YACtC,MAAM,MAAM,GAAG,mBAAmB,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC;YACrD,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;QACxC,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,+CAA+C,EAAE,GAAG,EAAE;YACvD,MAAM,MAAM,GAAG,mBAAmB,CAAC,CAAC,cAAc,EAAE,oBAAoB,EAAE,UAAU,CAAC,CAAC,CAAC;YACvF,MAAM,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,gBAAgB,CAAC,CAAC;YAC3C,MAAM,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,sBAAsB,CAAC,CAAC;YACjD,MAAM,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC;YACvC,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QAC/B,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,2BAA2B,EAAE,GAAG,EAAE;YACnC,MAAM,MAAM,GAAG,mBAAmB,CAAC,EAAE,CAAC,CAAC;YACvC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAC1B,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,yBAAyB,EAAE,GAAG,EAAE;QACvC,EAAE,CAAC,yCAAyC,EAAE,GAAG,EAAE;YACjD,MAAM,MAAM,GAAG,uBAAuB,CAAC,WAAW,CAAC,CAAC;YACpD,MAAM,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;YACtC,MAAM,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,gBAAgB,CAAC,CAAC;QAC7C,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,sCAAsC,EAAE,GAAG,EAAE;YAC9C,MAAM,MAAM,GAAG,uBAAuB,CAAC,QAAQ,CAAC,CAAC;YACjD,MAAM,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,kBAAkB,CAAC,CAAC;YAC7C,MAAM,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,sBAAsB,CAAC,CAAC;QACnD,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,4CAA4C,EAAE,GAAG,EAAE;YACpD,MAAM,MAAM,GAAG,uBAAuB,CAAC,cAAc,CAAC,CAAC;YACvD,MAAM,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,wBAAwB,CAAC,CAAC;YACnD,MAAM,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,qBAAqB,CAAC,CAAC;QAClD,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,sCAAsC,EAAE,GAAG,EAAE;YAC9C,MAAM,MAAM,GAAG,uBAAuB,CAAC,QAAQ,CAAC,CAAC;YACjD,MAAM,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,kBAAkB,CAAC,CAAC;YAC7C,MAAM,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC;QAC3C,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,kCAAkC,EAAE,GAAG,EAAE;YAC1C,MAAM,MAAM,GAAG,uBAAuB,CAAC,IAAI,CAAC,CAAC;YAC7C,MAAM,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;YACrC,MAAM,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,gBAAgB,CAAC,CAAC;QAC7C,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,oDAAoD,EAAE,GAAG,EAAE;YAC5D,MAAM,MAAM,GAAG,uBAAuB,CAAC,cAAc,CAAC,CAAC;YACvD,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;QAC5C,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,uBAAuB,EAAE,GAAG,EAAE;QACrC,EAAE,CAAC,2CAA2C,EAAE,GAAG,EAAE;YACnD,MAAM,MAAM,GAAG,qBAAqB,EAAE,CAAC;YACvC,MAAM,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,eAAe,CAAC,CAAC;YAC1C,MAAM,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,gBAAgB,CAAC,CAAC;YAC3C,MAAM,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,gBAAgB,CAAC,CAAC;QAC7C,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,uCAAuC,EAAE,GAAG,EAAE;YAC/C,MAAM,MAAM,GAAG,qBAAqB,CAAC,WAAW,CAAC,CAAC;YAClD,MAAM,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;YACtC,MAAM,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,eAAe,CAAC,CAAC;QAC5C,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,0CAA0C,EAAE,GAAG,EAAE;YAClD,MAAM,MAAM,GAAG,qBAAqB,EAAE,CAAC;YACvC,MAAM,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,eAAe,CAAC,CAAC;QAC5C,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,8CAA8C,EAAE,GAAG,EAAE;YACtD,MAAM,MAAM,GAAG,qBAAqB,EAAE,CAAC;YACvC,MAAM,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC;QAC1C,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,iDAAiD,EAAE,GAAG,EAAE;YACzD,MAAM,MAAM,GAAG,qBAAqB,EAAE,CAAC;YACvC,MAAM,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,gBAAgB,CAAC,CAAC;QAC7C,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,mBAAmB,EAAE,GAAG,EAAE;QACjC,EAAE,CAAC,6BAA6B,EAAE,GAAG,EAAE;YACrC,MAAM,MAAM,GAAG,iBAAiB,EAAE,CAAC;YACnC,MAAM,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC;YACzC,MAAM,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC;YACvC,MAAM,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;QACvC,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,yCAAyC,EAAE,GAAG,EAAE;YACjD,MAAM,MAAM,GAAG,iBAAiB,EAAE,CAAC;YACnC,MAAM,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;YACrC,MAAM,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;QACvC,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,wCAAwC,EAAE,GAAG,EAAE;YAChD,MAAM,MAAM,GAAG,iBAAiB,EAAE,CAAC;YACnC,MAAM,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;YACtC,MAAM,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC;QAC1C,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,gCAAgC,EAAE,GAAG,EAAE;YACxC,MAAM,MAAM,GAAG,iBAAiB,EAAE,CAAC;YACnC,MAAM,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;YACtC,MAAM,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,iBAAiB,CAAC,CAAC;QAC9C,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,+BAA+B,EAAE,GAAG,EAAE;YACvC,MAAM,MAAM,GAAG,iBAAiB,EAAE,CAAC;YACnC,MAAM,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;YAC/B,MAAM,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;YAC/B,MAAM,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;QACjC,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
|
|
@@ -3,5 +3,5 @@ import type { Database } from 'sql.js';
|
|
|
3
3
|
* Detect and recover orphaned stories (assigned to terminated agents).
|
|
4
4
|
* Returns the story IDs that were recovered.
|
|
5
5
|
*/
|
|
6
|
-
export declare function detectAndRecoverOrphanedStories(db: Database, rootDir: string): string[];
|
|
6
|
+
export declare function detectAndRecoverOrphanedStories(db: Database, rootDir: string, storiesDir?: string): string[];
|
|
7
7
|
//# sourceMappingURL=orphan-recovery.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"orphan-recovery.d.ts","sourceRoot":"","sources":["../../src/orchestrator/orphan-recovery.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAUvC;;;GAGG;AACH,wBAAgB,+BAA+B,
|
|
1
|
+
{"version":3,"file":"orphan-recovery.d.ts","sourceRoot":"","sources":["../../src/orchestrator/orphan-recovery.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAUvC;;;GAGG;AACH,wBAAgB,+BAA+B,CAC7C,EAAE,EAAE,QAAQ,EACZ,OAAO,EAAE,MAAM,EACf,UAAU,CAAC,EAAE,MAAM,GAClB,MAAM,EAAE,CAsGV"}
|
|
@@ -6,7 +6,7 @@ import { getInProgressStoriesWithInconsistentAssignments, getStaleInProgressStor
|
|
|
6
6
|
* Detect and recover orphaned stories (assigned to terminated agents).
|
|
7
7
|
* Returns the story IDs that were recovered.
|
|
8
8
|
*/
|
|
9
|
-
export function detectAndRecoverOrphanedStories(db, rootDir) {
|
|
9
|
+
export function detectAndRecoverOrphanedStories(db, rootDir, storiesDir) {
|
|
10
10
|
const orphanedAssignments = getStoriesWithOrphanedAssignments(db);
|
|
11
11
|
const staleInProgressStories = getStaleInProgressStoriesWithoutAssignment(db);
|
|
12
12
|
const inconsistentInProgressAssignments = getInProgressStoriesWithInconsistentAssignments(db);
|
|
@@ -20,7 +20,7 @@ export function detectAndRecoverOrphanedStories(db, rootDir) {
|
|
|
20
20
|
updateStory(db, assignment.id, {
|
|
21
21
|
assignedAgentId: null,
|
|
22
22
|
status: 'planned',
|
|
23
|
-
});
|
|
23
|
+
}, storiesDir);
|
|
24
24
|
createLog(db, {
|
|
25
25
|
agentId: 'scheduler',
|
|
26
26
|
storyId: assignment.id,
|
|
@@ -43,7 +43,7 @@ export function detectAndRecoverOrphanedStories(db, rootDir) {
|
|
|
43
43
|
updateStory(db, story.id, {
|
|
44
44
|
assignedAgentId: null,
|
|
45
45
|
status: 'planned',
|
|
46
|
-
});
|
|
46
|
+
}, storiesDir);
|
|
47
47
|
createLog(db, {
|
|
48
48
|
agentId: 'scheduler',
|
|
49
49
|
storyId: story.id,
|
|
@@ -66,7 +66,7 @@ export function detectAndRecoverOrphanedStories(db, rootDir) {
|
|
|
66
66
|
updateStory(db, assignment.id, {
|
|
67
67
|
assignedAgentId: null,
|
|
68
68
|
status: 'planned',
|
|
69
|
-
});
|
|
69
|
+
}, storiesDir);
|
|
70
70
|
createLog(db, {
|
|
71
71
|
agentId: 'scheduler',
|
|
72
72
|
storyId: assignment.id,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"orphan-recovery.js","sourceRoot":"","sources":["../../src/orchestrator/orphan-recovery.ts"],"names":[],"mappings":"AAAA,6DAA6D;AAG7D,OAAO,EAAE,kBAAkB,EAAE,MAAM,gDAAgD,CAAC;AACpF,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAClD,OAAO,EACL,+CAA+C,EAC/C,0CAA0C,EAC1C,iCAAiC,EACjC,WAAW,GACZ,MAAM,0BAA0B,CAAC;AAElC;;;GAGG;AACH,MAAM,UAAU,+BAA+B,
|
|
1
|
+
{"version":3,"file":"orphan-recovery.js","sourceRoot":"","sources":["../../src/orchestrator/orphan-recovery.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,6 +3,8 @@ export interface AgentPromptOptions {
|
|
|
3
3
|
includeProgressUpdates?: boolean;
|
|
4
4
|
/** The tech lead tmux session name for messaging. Defaults to 'hive-tech-lead' for backwards compatibility. */
|
|
5
5
|
techLeadSession?: string;
|
|
6
|
+
/** Whether Chrome browser tools are enabled for this agent session. */
|
|
7
|
+
chromeEnabled?: boolean;
|
|
6
8
|
}
|
|
7
9
|
/**
|
|
8
10
|
* Generate Jira-specific instructions for the Tech Lead prompt.
|
|
@@ -26,7 +28,7 @@ export declare function generateJuniorPrompt(teamName: string, repoUrl: string,
|
|
|
26
28
|
/**
|
|
27
29
|
* Generate prompt for QA Engineer agent
|
|
28
30
|
*/
|
|
29
|
-
export declare function generateQAPrompt(teamName: string, repoUrl: string, repoPath: string, sessionName: string, targetBranch?: string): string;
|
|
31
|
+
export declare function generateQAPrompt(teamName: string, repoUrl: string, repoPath: string, sessionName: string, targetBranch?: string, options?: AgentPromptOptions): string;
|
|
30
32
|
/**
|
|
31
33
|
* Generate prompt for Feature Test agent
|
|
32
34
|
* This agent is specialized for running E2E tests against a feature branch during sign-off.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prompt-templates.d.ts","sourceRoot":"","sources":["../../src/orchestrator/prompt-templates.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAEhD,MAAM,WAAW,kBAAkB;IACjC,sBAAsB,CAAC,EAAE,OAAO,CAAC;IACjC,+GAA+G;IAC/G,eAAe,CAAC,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"prompt-templates.d.ts","sourceRoot":"","sources":["../../src/orchestrator/prompt-templates.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAEhD,MAAM,WAAW,kBAAkB;IACjC,sBAAsB,CAAC,EAAE,OAAO,CAAC;IACjC,+GAA+G;IAC/G,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,uEAAuE;IACvE,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB;AAED;;;GAGG;AACH,wBAAgB,gCAAgC,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAmC5F;AAMD,iEAAiE;AACjE,wBAAgB,uBAAuB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAEhE;AAqMD;;GAEG;AACH,wBAAgB,oBAAoB,CAClC,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,QAAQ,EAAE,EACnB,YAAY,GAAE,MAAe,EAC7B,OAAO,CAAC,EAAE,kBAAkB,EAC5B,mBAAmB,CAAC,EAAE,MAAM,GAC3B,MAAM,CAgFR;AAED;;GAEG;AACH,wBAAgB,0BAA0B,CACxC,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,MAAM,EAChB,WAAW,EAAE,MAAM,EACnB,YAAY,GAAE,MAAe,EAC7B,OAAO,CAAC,EAAE,kBAAkB,GAC3B,MAAM,CA6DR;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAClC,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,MAAM,EAChB,WAAW,EAAE,MAAM,EACnB,YAAY,GAAE,MAAe,EAC7B,OAAO,CAAC,EAAE,kBAAkB,GAC3B,MAAM,CA6DR;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAC9B,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,MAAM,EAChB,WAAW,EAAE,MAAM,EACnB,YAAY,GAAE,MAAe,EAC7B,OAAO,CAAC,EAAE,kBAAkB,GAC3B,MAAM,CAoFR;AAED;;;GAGG;AACH,wBAAgB,yBAAyB,CACvC,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,MAAM,EAChB,WAAW,EAAE,MAAM,EACnB,aAAa,EAAE,MAAM,EACrB,aAAa,EAAE,MAAM,EACrB,YAAY,EAAE,MAAM,EACpB,OAAO,CAAC,EAAE,kBAAkB,GAC3B,MAAM,CA8FR;AAED;;;GAGG;AACH,wBAAgB,qBAAqB,CACnC,WAAW,EAAE,MAAM,EACnB,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,MAAM,EACf,OAAO,CAAC,EAAE,kBAAkB,GAC3B,MAAM,CAuFR"}
|
|
@@ -52,6 +52,34 @@ function shouldIncludeProgressUpdates(options) {
|
|
|
52
52
|
function resolveTechLeadSession(options) {
|
|
53
53
|
return options?.techLeadSession || 'hive-tech-lead';
|
|
54
54
|
}
|
|
55
|
+
/**
|
|
56
|
+
* Generate the Chrome tab isolation section for agent prompts.
|
|
57
|
+
* Instructs agents to create a dedicated tab at session start and use it
|
|
58
|
+
* exclusively for all browser operations, preventing tab interference between
|
|
59
|
+
* concurrent agents.
|
|
60
|
+
*/
|
|
61
|
+
function chromeTabIsolationSection() {
|
|
62
|
+
return `# Chrome Browser Tab Isolation
|
|
63
|
+
Chrome browser tools are enabled for this session. Each agent must use its own dedicated tab to prevent interference with other agents running concurrently.
|
|
64
|
+
|
|
65
|
+
## Tab Lifecycle
|
|
66
|
+
|
|
67
|
+
**At session start**, create your dedicated tab immediately:
|
|
68
|
+
\`\`\`
|
|
69
|
+
Use mcp__claude-in-chrome__tabs_create_mcp to create a new tab.
|
|
70
|
+
Store the returned tab ID — you will use it for all browser operations.
|
|
71
|
+
\`\`\`
|
|
72
|
+
|
|
73
|
+
**For all browser operations**, always pass your stored tab ID to every \`mcp__claude-in-chrome__*\` tool call. Never interact with tabs you did not create.
|
|
74
|
+
|
|
75
|
+
**If your tab is closed externally** (tool returns a tab-not-found error):
|
|
76
|
+
\`\`\`
|
|
77
|
+
Call mcp__claude-in-chrome__tabs_create_mcp again to get a new tab ID.
|
|
78
|
+
Update your stored tab ID and continue.
|
|
79
|
+
\`\`\`
|
|
80
|
+
|
|
81
|
+
**At session end**, close your tab using the browser tools to free resources.`;
|
|
82
|
+
}
|
|
55
83
|
function repositorySection(repoPath, repoUrl) {
|
|
56
84
|
return `## Your Repository
|
|
57
85
|
- Local path: ${repoPath}
|
|
@@ -207,13 +235,17 @@ export function generateSeniorPrompt(teamName, repoUrl, repoPath, stories, targe
|
|
|
207
235
|
const externalInfo = s.external_subtask_key
|
|
208
236
|
? ` | External Subtask: ${s.external_subtask_key}`
|
|
209
237
|
: '';
|
|
210
|
-
|
|
238
|
+
const descriptionOrMarkdown = s.markdown_path
|
|
239
|
+
? `For full details, read the story markdown file: \`${s.markdown_path}\``
|
|
240
|
+
: s.description;
|
|
241
|
+
return `- [${s.id}] ${s.title} (complexity: ${s.complexity_score || '?'}${externalInfo})\n ${descriptionOrMarkdown}`;
|
|
211
242
|
})
|
|
212
243
|
.join('\n\n');
|
|
213
244
|
const sessionName = sessionNameOverride || formatSeniorSessionName(teamName);
|
|
245
|
+
const chromeSection = options?.chromeEnabled ? '\n\n' + chromeTabIsolationSection() : '';
|
|
214
246
|
return `You are a Senior Developer on Team ${teamName}.
|
|
215
247
|
Your tmux session: ${sessionName}
|
|
216
|
-
|
|
248
|
+
${chromeSection}
|
|
217
249
|
${repositorySection(repoPath, repoUrl)}
|
|
218
250
|
|
|
219
251
|
## Your Responsibilities
|
|
@@ -281,9 +313,10 @@ export function generateIntermediatePrompt(teamName, repoUrl, repoPath, sessionN
|
|
|
281
313
|
const includeProgressUpdates = shouldIncludeProgressUpdates(options);
|
|
282
314
|
const techLeadSession = resolveTechLeadSession(options);
|
|
283
315
|
const seniorSession = formatSeniorSessionName(teamName);
|
|
316
|
+
const chromeSection = options?.chromeEnabled ? '\n\n' + chromeTabIsolationSection() : '';
|
|
284
317
|
return `You are an Intermediate Developer on Team ${teamName}.
|
|
285
318
|
Your tmux session: ${sessionName}
|
|
286
|
-
|
|
319
|
+
${chromeSection}
|
|
287
320
|
${repositorySection(repoPath, repoUrl)}
|
|
288
321
|
|
|
289
322
|
## Your Responsibilities
|
|
@@ -344,9 +377,10 @@ export function generateJuniorPrompt(teamName, repoUrl, repoPath, sessionName, t
|
|
|
344
377
|
const includeProgressUpdates = shouldIncludeProgressUpdates(options);
|
|
345
378
|
const techLeadSession = resolveTechLeadSession(options);
|
|
346
379
|
const seniorSession = formatSeniorSessionName(teamName);
|
|
380
|
+
const chromeSection = options?.chromeEnabled ? '\n\n' + chromeTabIsolationSection() : '';
|
|
347
381
|
return `You are a Junior Developer on Team ${teamName}.
|
|
348
382
|
Your tmux session: ${sessionName}
|
|
349
|
-
|
|
383
|
+
${chromeSection}
|
|
350
384
|
${repositorySection(repoPath, repoUrl)}
|
|
351
385
|
|
|
352
386
|
## Your Responsibilities
|
|
@@ -403,10 +437,11 @@ ${autonomousWorkflowSection(sessionName, includeProgressUpdates)}`;
|
|
|
403
437
|
/**
|
|
404
438
|
* Generate prompt for QA Engineer agent
|
|
405
439
|
*/
|
|
406
|
-
export function generateQAPrompt(teamName, repoUrl, repoPath, sessionName, targetBranch = 'main') {
|
|
440
|
+
export function generateQAPrompt(teamName, repoUrl, repoPath, sessionName, targetBranch = 'main', options) {
|
|
441
|
+
const chromeSection = options?.chromeEnabled ? '\n\n' + chromeTabIsolationSection() : '';
|
|
407
442
|
return `You are a QA Engineer on Team ${teamName}.
|
|
408
443
|
Your tmux session: ${sessionName}
|
|
409
|
-
|
|
444
|
+
${chromeSection}
|
|
410
445
|
${repositorySection(repoPath, repoUrl)}
|
|
411
446
|
|
|
412
447
|
## Your Responsibilities
|
|
@@ -494,6 +529,7 @@ Start by running \`hive pr queue\` to see PRs waiting for review.`;
|
|
|
494
529
|
export function generateFeatureTestPrompt(teamName, repoUrl, repoPath, sessionName, featureBranch, requirementId, e2eTestsPath, options) {
|
|
495
530
|
const includeProgressUpdates = shouldIncludeProgressUpdates(options);
|
|
496
531
|
const techLeadSession = resolveTechLeadSession(options);
|
|
532
|
+
const chromeSection = options?.chromeEnabled ? '\n\n' + chromeTabIsolationSection() : '';
|
|
497
533
|
const reportResultsSection = includeProgressUpdates
|
|
498
534
|
? `**If all tests pass:**
|
|
499
535
|
\`\`\`bash
|
|
@@ -518,7 +554,7 @@ hive msg send ${techLeadSession} "E2E tests FAILED for ${requirementId} on ${fea
|
|
|
518
554
|
\`\`\``;
|
|
519
555
|
return `You are a Feature Test Agent on Team ${teamName}.
|
|
520
556
|
Your tmux session: ${sessionName}
|
|
521
|
-
|
|
557
|
+
${chromeSection}
|
|
522
558
|
${repositorySection(repoPath, repoUrl)}
|
|
523
559
|
|
|
524
560
|
## Your Mission
|
|
@@ -590,9 +626,10 @@ Start by checking out the feature branch and reading the TESTING.md file.`;
|
|
|
590
626
|
*/
|
|
591
627
|
export function generateAuditorPrompt(sessionName, repoPath, repoUrl, options) {
|
|
592
628
|
const techLeadSession = resolveTechLeadSession(options);
|
|
629
|
+
const chromeSection = options?.chromeEnabled ? '\n\n' + chromeTabIsolationSection() : '';
|
|
593
630
|
return `You are a Hive Auditor Agent.
|
|
594
631
|
Your tmux session: ${sessionName}
|
|
595
|
-
|
|
632
|
+
${chromeSection}
|
|
596
633
|
${repositorySection(repoPath, repoUrl)}
|
|
597
634
|
|
|
598
635
|
## Your Mission
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prompt-templates.js","sourceRoot":"","sources":["../../src/orchestrator/prompt-templates.ts"],"names":[],"mappings":"AAAA,6DAA6D;
|
|
1
|
+
{"version":3,"file":"prompt-templates.js","sourceRoot":"","sources":["../../src/orchestrator/prompt-templates.ts"],"names":[],"mappings":"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"}
|
|
@@ -125,6 +125,78 @@ describe('Prompt Templates', () => {
|
|
|
125
125
|
const prompt = generateSeniorPrompt(teamName, repoUrl, repoPath, stories);
|
|
126
126
|
expect(prompt).toContain('complexity: ?');
|
|
127
127
|
});
|
|
128
|
+
it('should include markdown_path in prompt when set on a story', () => {
|
|
129
|
+
const stories = [
|
|
130
|
+
{
|
|
131
|
+
id: 'STORY-003',
|
|
132
|
+
title: 'Story With Markdown',
|
|
133
|
+
description: 'DB description',
|
|
134
|
+
complexity_score: 3,
|
|
135
|
+
status: 'planned',
|
|
136
|
+
team_id: 'team-1',
|
|
137
|
+
requirement_id: null,
|
|
138
|
+
acceptance_criteria: null,
|
|
139
|
+
story_points: null,
|
|
140
|
+
assigned_agent_id: null,
|
|
141
|
+
branch_name: null,
|
|
142
|
+
pr_url: null,
|
|
143
|
+
jira_issue_key: null,
|
|
144
|
+
jira_issue_id: null,
|
|
145
|
+
jira_project_key: null,
|
|
146
|
+
jira_subtask_key: null,
|
|
147
|
+
jira_subtask_id: null,
|
|
148
|
+
external_issue_key: null,
|
|
149
|
+
external_issue_id: null,
|
|
150
|
+
external_project_key: null,
|
|
151
|
+
external_subtask_key: null,
|
|
152
|
+
external_subtask_id: null,
|
|
153
|
+
external_provider: null,
|
|
154
|
+
in_sprint: 0,
|
|
155
|
+
markdown_path: '/stories/STORY-003.md',
|
|
156
|
+
created_at: '2024-01-01',
|
|
157
|
+
updated_at: '2024-01-01',
|
|
158
|
+
},
|
|
159
|
+
];
|
|
160
|
+
const prompt = generateSeniorPrompt(teamName, repoUrl, repoPath, stories);
|
|
161
|
+
expect(prompt).toContain('/stories/STORY-003.md');
|
|
162
|
+
expect(prompt).toContain('read the story markdown file');
|
|
163
|
+
});
|
|
164
|
+
it('should fall back to DB description when markdown_path is null', () => {
|
|
165
|
+
const stories = [
|
|
166
|
+
{
|
|
167
|
+
id: 'STORY-004',
|
|
168
|
+
title: 'Story Without Markdown',
|
|
169
|
+
description: 'DB only description',
|
|
170
|
+
complexity_score: 2,
|
|
171
|
+
status: 'planned',
|
|
172
|
+
team_id: 'team-1',
|
|
173
|
+
requirement_id: null,
|
|
174
|
+
acceptance_criteria: null,
|
|
175
|
+
story_points: null,
|
|
176
|
+
assigned_agent_id: null,
|
|
177
|
+
branch_name: null,
|
|
178
|
+
pr_url: null,
|
|
179
|
+
jira_issue_key: null,
|
|
180
|
+
jira_issue_id: null,
|
|
181
|
+
jira_project_key: null,
|
|
182
|
+
jira_subtask_key: null,
|
|
183
|
+
jira_subtask_id: null,
|
|
184
|
+
external_issue_key: null,
|
|
185
|
+
external_issue_id: null,
|
|
186
|
+
external_project_key: null,
|
|
187
|
+
external_subtask_key: null,
|
|
188
|
+
external_subtask_id: null,
|
|
189
|
+
external_provider: null,
|
|
190
|
+
in_sprint: 0,
|
|
191
|
+
markdown_path: null,
|
|
192
|
+
created_at: '2024-01-01',
|
|
193
|
+
updated_at: '2024-01-01',
|
|
194
|
+
},
|
|
195
|
+
];
|
|
196
|
+
const prompt = generateSeniorPrompt(teamName, repoUrl, repoPath, stories);
|
|
197
|
+
expect(prompt).toContain('DB only description');
|
|
198
|
+
expect(prompt).not.toContain('read the story markdown file');
|
|
199
|
+
});
|
|
128
200
|
it('should handle empty stories list', () => {
|
|
129
201
|
const stories = [];
|
|
130
202
|
const prompt = generateSeniorPrompt(teamName, repoUrl, repoPath, stories);
|
|
@@ -552,4 +624,142 @@ describe('Prompt Templates', () => {
|
|
|
552
624
|
});
|
|
553
625
|
});
|
|
554
626
|
});
|
|
627
|
+
describe('Chrome Tab Isolation', () => {
|
|
628
|
+
const teamName = 'TestTeam';
|
|
629
|
+
const repoUrl = 'https://github.com/test/repo.git';
|
|
630
|
+
const repoPath = 'repos/test-repo';
|
|
631
|
+
const sessionName = 'hive-test-session';
|
|
632
|
+
const CHROME_TAB_MARKER = 'Chrome Browser Tab Isolation';
|
|
633
|
+
const CHROME_TAB_CREATE = 'tabs_create_mcp';
|
|
634
|
+
describe('generateSeniorPrompt', () => {
|
|
635
|
+
it('should include chrome tab isolation section when chromeEnabled is true', () => {
|
|
636
|
+
const prompt = generateSeniorPrompt(teamName, repoUrl, repoPath, [], 'main', {
|
|
637
|
+
chromeEnabled: true,
|
|
638
|
+
});
|
|
639
|
+
expect(prompt).toContain(CHROME_TAB_MARKER);
|
|
640
|
+
expect(prompt).toContain(CHROME_TAB_CREATE);
|
|
641
|
+
});
|
|
642
|
+
it('should not include chrome tab isolation section when chromeEnabled is false', () => {
|
|
643
|
+
const prompt = generateSeniorPrompt(teamName, repoUrl, repoPath, [], 'main', {
|
|
644
|
+
chromeEnabled: false,
|
|
645
|
+
});
|
|
646
|
+
expect(prompt).not.toContain(CHROME_TAB_MARKER);
|
|
647
|
+
});
|
|
648
|
+
it('should not include chrome tab isolation section when chromeEnabled is not set', () => {
|
|
649
|
+
const prompt = generateSeniorPrompt(teamName, repoUrl, repoPath, []);
|
|
650
|
+
expect(prompt).not.toContain(CHROME_TAB_MARKER);
|
|
651
|
+
});
|
|
652
|
+
});
|
|
653
|
+
describe('generateIntermediatePrompt', () => {
|
|
654
|
+
it('should include chrome tab isolation section when chromeEnabled is true', () => {
|
|
655
|
+
const prompt = generateIntermediatePrompt(teamName, repoUrl, repoPath, sessionName, 'main', {
|
|
656
|
+
chromeEnabled: true,
|
|
657
|
+
});
|
|
658
|
+
expect(prompt).toContain(CHROME_TAB_MARKER);
|
|
659
|
+
expect(prompt).toContain(CHROME_TAB_CREATE);
|
|
660
|
+
});
|
|
661
|
+
it('should not include chrome tab isolation section when chromeEnabled is false', () => {
|
|
662
|
+
const prompt = generateIntermediatePrompt(teamName, repoUrl, repoPath, sessionName, 'main', {
|
|
663
|
+
chromeEnabled: false,
|
|
664
|
+
});
|
|
665
|
+
expect(prompt).not.toContain(CHROME_TAB_MARKER);
|
|
666
|
+
});
|
|
667
|
+
it('should not include chrome tab isolation section when options not provided', () => {
|
|
668
|
+
const prompt = generateIntermediatePrompt(teamName, repoUrl, repoPath, sessionName);
|
|
669
|
+
expect(prompt).not.toContain(CHROME_TAB_MARKER);
|
|
670
|
+
});
|
|
671
|
+
});
|
|
672
|
+
describe('generateJuniorPrompt', () => {
|
|
673
|
+
it('should include chrome tab isolation section when chromeEnabled is true', () => {
|
|
674
|
+
const prompt = generateJuniorPrompt(teamName, repoUrl, repoPath, sessionName, 'main', {
|
|
675
|
+
chromeEnabled: true,
|
|
676
|
+
});
|
|
677
|
+
expect(prompt).toContain(CHROME_TAB_MARKER);
|
|
678
|
+
expect(prompt).toContain(CHROME_TAB_CREATE);
|
|
679
|
+
});
|
|
680
|
+
it('should not include chrome tab isolation section when chromeEnabled is false', () => {
|
|
681
|
+
const prompt = generateJuniorPrompt(teamName, repoUrl, repoPath, sessionName, 'main', {
|
|
682
|
+
chromeEnabled: false,
|
|
683
|
+
});
|
|
684
|
+
expect(prompt).not.toContain(CHROME_TAB_MARKER);
|
|
685
|
+
});
|
|
686
|
+
it('should not include chrome tab isolation section when options not provided', () => {
|
|
687
|
+
const prompt = generateJuniorPrompt(teamName, repoUrl, repoPath, sessionName);
|
|
688
|
+
expect(prompt).not.toContain(CHROME_TAB_MARKER);
|
|
689
|
+
});
|
|
690
|
+
});
|
|
691
|
+
describe('generateQAPrompt', () => {
|
|
692
|
+
it('should include chrome tab isolation section when chromeEnabled is true', () => {
|
|
693
|
+
const prompt = generateQAPrompt(teamName, repoUrl, repoPath, sessionName, 'main', {
|
|
694
|
+
chromeEnabled: true,
|
|
695
|
+
});
|
|
696
|
+
expect(prompt).toContain(CHROME_TAB_MARKER);
|
|
697
|
+
expect(prompt).toContain(CHROME_TAB_CREATE);
|
|
698
|
+
});
|
|
699
|
+
it('should not include chrome tab isolation section when chromeEnabled is false', () => {
|
|
700
|
+
const prompt = generateQAPrompt(teamName, repoUrl, repoPath, sessionName, 'main', {
|
|
701
|
+
chromeEnabled: false,
|
|
702
|
+
});
|
|
703
|
+
expect(prompt).not.toContain(CHROME_TAB_MARKER);
|
|
704
|
+
});
|
|
705
|
+
it('should not include chrome tab isolation section when options not provided', () => {
|
|
706
|
+
const prompt = generateQAPrompt(teamName, repoUrl, repoPath, sessionName);
|
|
707
|
+
expect(prompt).not.toContain(CHROME_TAB_MARKER);
|
|
708
|
+
});
|
|
709
|
+
});
|
|
710
|
+
describe('generateFeatureTestPrompt', () => {
|
|
711
|
+
it('should include chrome tab isolation section when chromeEnabled is true', () => {
|
|
712
|
+
const prompt = generateFeatureTestPrompt(teamName, repoUrl, repoPath, sessionName, 'feature/test', 'REQ-001', 'e2e/tests', { chromeEnabled: true });
|
|
713
|
+
expect(prompt).toContain(CHROME_TAB_MARKER);
|
|
714
|
+
expect(prompt).toContain(CHROME_TAB_CREATE);
|
|
715
|
+
});
|
|
716
|
+
it('should not include chrome tab isolation section when chromeEnabled is false', () => {
|
|
717
|
+
const prompt = generateFeatureTestPrompt(teamName, repoUrl, repoPath, sessionName, 'feature/test', 'REQ-001', 'e2e/tests', { chromeEnabled: false });
|
|
718
|
+
expect(prompt).not.toContain(CHROME_TAB_MARKER);
|
|
719
|
+
});
|
|
720
|
+
it('should not include chrome tab isolation section when options not provided', () => {
|
|
721
|
+
const prompt = generateFeatureTestPrompt(teamName, repoUrl, repoPath, sessionName, 'feature/test', 'REQ-001', 'e2e/tests');
|
|
722
|
+
expect(prompt).not.toContain(CHROME_TAB_MARKER);
|
|
723
|
+
});
|
|
724
|
+
});
|
|
725
|
+
describe('generateAuditorPrompt', () => {
|
|
726
|
+
it('should include chrome tab isolation section when chromeEnabled is true', () => {
|
|
727
|
+
const prompt = generateAuditorPrompt(sessionName, repoPath, repoUrl, {
|
|
728
|
+
chromeEnabled: true,
|
|
729
|
+
});
|
|
730
|
+
expect(prompt).toContain(CHROME_TAB_MARKER);
|
|
731
|
+
expect(prompt).toContain(CHROME_TAB_CREATE);
|
|
732
|
+
});
|
|
733
|
+
it('should not include chrome tab isolation section when chromeEnabled is false', () => {
|
|
734
|
+
const prompt = generateAuditorPrompt(sessionName, repoPath, repoUrl, {
|
|
735
|
+
chromeEnabled: false,
|
|
736
|
+
});
|
|
737
|
+
expect(prompt).not.toContain(CHROME_TAB_MARKER);
|
|
738
|
+
});
|
|
739
|
+
it('should not include chrome tab isolation section when options not provided', () => {
|
|
740
|
+
const prompt = generateAuditorPrompt(sessionName, repoPath, repoUrl);
|
|
741
|
+
expect(prompt).not.toContain(CHROME_TAB_MARKER);
|
|
742
|
+
});
|
|
743
|
+
});
|
|
744
|
+
describe('tab isolation instructions content', () => {
|
|
745
|
+
it('should instruct agents to store and reuse tab ID', () => {
|
|
746
|
+
const prompt = generateIntermediatePrompt(teamName, repoUrl, repoPath, sessionName, 'main', {
|
|
747
|
+
chromeEnabled: true,
|
|
748
|
+
});
|
|
749
|
+
expect(prompt).toContain('tab ID');
|
|
750
|
+
});
|
|
751
|
+
it('should instruct agents to recreate tab when closed externally', () => {
|
|
752
|
+
const prompt = generateIntermediatePrompt(teamName, repoUrl, repoPath, sessionName, 'main', {
|
|
753
|
+
chromeEnabled: true,
|
|
754
|
+
});
|
|
755
|
+
expect(prompt).toContain('closed externally');
|
|
756
|
+
});
|
|
757
|
+
it('should warn agents not to use other agents tabs', () => {
|
|
758
|
+
const prompt = generateIntermediatePrompt(teamName, repoUrl, repoPath, sessionName, 'main', {
|
|
759
|
+
chromeEnabled: true,
|
|
760
|
+
});
|
|
761
|
+
expect(prompt).toContain('Never interact with tabs you did not create');
|
|
762
|
+
});
|
|
763
|
+
});
|
|
764
|
+
});
|
|
555
765
|
//# sourceMappingURL=prompt-templates.test.js.map
|