@xdevops/issue-auto-finish 1.0.97 → 1.0.98

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (37) hide show
  1. package/dist/{PtyRunner-XMWDMH3L.js → PtyRunner-AVP7C4HC.js} +2 -2
  2. package/dist/ai-runner/AIRunner.d.ts +2 -0
  3. package/dist/ai-runner/AIRunner.d.ts.map +1 -1
  4. package/dist/ai-runner/PlanFileResolver.d.ts +20 -2
  5. package/dist/ai-runner/PlanFileResolver.d.ts.map +1 -1
  6. package/dist/ai-runner/PtyRunner.d.ts.map +1 -1
  7. package/dist/{ai-runner-S2ATTGWX.js → ai-runner-GPHHQKUT.js} +2 -2
  8. package/dist/{analyze-DAVYPBHK.js → analyze-SYJXCCU7.js} +2 -2
  9. package/dist/{braindump-A4R3A4QT.js → braindump-QIUTH777.js} +2 -2
  10. package/dist/{chunk-BPVRMZU4.js → chunk-APROB5LF.js} +9 -9
  11. package/dist/{chunk-SNSEW7DS.js → chunk-CKYGI2V2.js} +1 -1
  12. package/dist/{chunk-OPWP73PW.js → chunk-DUQUGPMI.js} +3 -2
  13. package/dist/chunk-DUQUGPMI.js.map +1 -0
  14. package/dist/{chunk-2XACBKPB.js → chunk-URL4HZ66.js} +2 -2
  15. package/dist/{chunk-HD6V7KPE.js → chunk-XOOKCEAK.js} +112 -37
  16. package/dist/chunk-XOOKCEAK.js.map +1 -0
  17. package/dist/cli.js +5 -5
  18. package/dist/index.js +4 -4
  19. package/dist/{init-OD7CLRWK.js → init-FDXIJNXF.js} +2 -2
  20. package/dist/lib.js +2 -2
  21. package/dist/phases/BasePhase.d.ts.map +1 -1
  22. package/dist/{restart-JVVOYC6C.js → restart-BRO6NIID.js} +2 -2
  23. package/dist/run.js +4 -4
  24. package/dist/{start-INU24RRG.js → start-ZIJDXV56.js} +2 -2
  25. package/package.json +1 -1
  26. package/dist/chunk-HD6V7KPE.js.map +0 -1
  27. package/dist/chunk-OPWP73PW.js.map +0 -1
  28. /package/dist/{PtyRunner-XMWDMH3L.js.map → PtyRunner-AVP7C4HC.js.map} +0 -0
  29. /package/dist/{ai-runner-S2ATTGWX.js.map → ai-runner-GPHHQKUT.js.map} +0 -0
  30. /package/dist/{analyze-DAVYPBHK.js.map → analyze-SYJXCCU7.js.map} +0 -0
  31. /package/dist/{braindump-A4R3A4QT.js.map → braindump-QIUTH777.js.map} +0 -0
  32. /package/dist/{chunk-BPVRMZU4.js.map → chunk-APROB5LF.js.map} +0 -0
  33. /package/dist/{chunk-SNSEW7DS.js.map → chunk-CKYGI2V2.js.map} +0 -0
  34. /package/dist/{chunk-2XACBKPB.js.map → chunk-URL4HZ66.js.map} +0 -0
  35. /package/dist/{init-OD7CLRWK.js.map → init-FDXIJNXF.js.map} +0 -0
  36. /package/dist/{restart-JVVOYC6C.js.map → restart-BRO6NIID.js.map} +0 -0
  37. /package/dist/{start-INU24RRG.js.map → start-ZIJDXV56.js.map} +0 -0
@@ -12,7 +12,7 @@ import {
12
12
  isTuiNoise,
13
13
  parseInteractiveDialog,
14
14
  stripAnsi
15
- } from "./chunk-HD6V7KPE.js";
15
+ } from "./chunk-XOOKCEAK.js";
16
16
  import "./chunk-TFEPHOVE.js";
17
17
  import "./chunk-G7QI5WDI.js";
18
18
  import "./chunk-2RWGZPNF.js";
@@ -32,4 +32,4 @@ export {
32
32
  parseInteractiveDialog,
33
33
  stripAnsi
34
34
  };
35
- //# sourceMappingURL=PtyRunner-XMWDMH3L.js.map
35
+ //# sourceMappingURL=PtyRunner-AVP7C4HC.js.map
@@ -26,6 +26,8 @@ export interface RunOptions {
26
26
  mode?: string;
27
27
  /** Current pipeline phase name — used by PtyRunner for per-phase agent selection */
28
28
  phaseName?: string;
29
+ /** Issue title — used by PlanFileResolver for content-based plan file matching */
30
+ issueTitle?: string;
29
31
  /** PTY 产物门控:返回 true 表示预期产物已就绪,false 时 PtyRunner 不会声明完成 */
30
32
  artifactCheck?: () => boolean;
31
33
  /** 预期产物文件的完整路径列表(用于 PtyRunner 原生 plan mode 的 commit 步骤) */
@@ -1 +1 @@
1
- {"version":3,"file":"AIRunner.d.ts","sourceRoot":"","sources":["../../src/ai-runner/AIRunner.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,OAAO,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,eAAe,GAAG,oBAAoB,GAAG,SAAS,CAAC;IACzD,OAAO,EAAE,MAAM,CAAC;IAChB,4EAA4E;IAC5E,OAAO,CAAC,EAAE,YAAY,EAAE,CAAC;CAC1B;AAED,MAAM,WAAW,UAAU;IACzB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,oFAAoF;IACpF,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,0DAA0D;IAC1D,aAAa,CAAC,EAAE,MAAM,OAAO,CAAC;IAC9B,2DAA2D;IAC3D,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;IACzB,uGAAuG;IACvG,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,sFAAsF;IACtF,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,gEAAgE;IAChE,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B;2EACuE;IACvE,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,WAAW,KAAK,IAAI,CAAC;IAC7C,eAAe,CAAC,EAAE,CAAC,OAAO,EAAE,YAAY,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;CAC9D;AAED,MAAM,WAAW,SAAS;IACxB,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,qDAAqD;IACrD,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,WAAW,CAAC,EAAE,YAAY,GAAG,MAAM,CAAC;IACpC;oFACgF;IAChF,kBAAkB,CAAC,EAAE,OAAO,CAAC;CAC9B;AAED,MAAM,WAAW,QAAQ;IACvB,GAAG,CAAC,OAAO,EAAE,UAAU,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC;IAC7C,OAAO,IAAI,IAAI,CAAC;IAChB,aAAa,CAAC,aAAa,EAAE,MAAM,GAAG,MAAM,CAAC;IAC7C,gFAAgF;IAChF,kBAAkB,CAAC,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC;CACrD"}
1
+ {"version":3,"file":"AIRunner.d.ts","sourceRoot":"","sources":["../../src/ai-runner/AIRunner.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,OAAO,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,eAAe,GAAG,oBAAoB,GAAG,SAAS,CAAC;IACzD,OAAO,EAAE,MAAM,CAAC;IAChB,4EAA4E;IAC5E,OAAO,CAAC,EAAE,YAAY,EAAE,CAAC;CAC1B;AAED,MAAM,WAAW,UAAU;IACzB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,oFAAoF;IACpF,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,kFAAkF;IAClF,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,0DAA0D;IAC1D,aAAa,CAAC,EAAE,MAAM,OAAO,CAAC;IAC9B,2DAA2D;IAC3D,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;IACzB,uGAAuG;IACvG,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,sFAAsF;IACtF,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,gEAAgE;IAChE,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B;2EACuE;IACvE,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,WAAW,KAAK,IAAI,CAAC;IAC7C,eAAe,CAAC,EAAE,CAAC,OAAO,EAAE,YAAY,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;CAC9D;AAED,MAAM,WAAW,SAAS;IACxB,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,qDAAqD;IACrD,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,WAAW,CAAC,EAAE,YAAY,GAAG,MAAM,CAAC;IACpC;oFACgF;IAChF,kBAAkB,CAAC,EAAE,OAAO,CAAC;CAC9B;AAED,MAAM,WAAW,QAAQ;IACvB,GAAG,CAAC,OAAO,EAAE,UAAU,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC;IAC7C,OAAO,IAAI,IAAI,CAAC;IAChB,aAAa,CAAC,aAAa,EAAE,MAAM,GAAG,MAAM,CAAC;IAC7C,gFAAgF;IAChF,kBAAkB,CAAC,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC;CACrD"}
@@ -10,13 +10,26 @@ export interface ResolvedPlanFile {
10
10
  * optional content-based validation to handle concurrent plan generation.
11
11
  */
12
12
  export declare class PlanFileResolver {
13
+ /** Plan files older than this are removed before snapshot (2 hours). */
14
+ static readonly STALE_THRESHOLD_MS: number;
15
+ /** Resolved plan files shorter than this are considered empty/fragment. */
16
+ static readonly MIN_PLAN_BYTES = 200;
13
17
  private readonly plansDir;
14
18
  private beforeFiles;
15
19
  constructor(plansDir?: string);
16
20
  /** Create a resolver for a specific runner mode (e.g. 'claude-internal', 'codebuddy'). */
17
21
  static forRunner(agentMode: string): PlanFileResolver;
18
- /** Take a snapshot of existing plan files before the plan phase starts. */
19
- takeBeforeSnapshot(): void;
22
+ /**
23
+ * Take a snapshot of existing plan files before the plan phase starts.
24
+ * Optionally removes stale files (older than STALE_THRESHOLD_MS) to reduce
25
+ * noise in the snapshot diff.
26
+ */
27
+ takeBeforeSnapshot(cleanStale?: boolean): void;
28
+ /**
29
+ * Remove plan files older than STALE_THRESHOLD_MS to prevent accumulation
30
+ * that confuses snapshot-based resolution on long-lived machines.
31
+ */
32
+ private removeStaleFiles;
20
33
  /**
21
34
  * Check if any new or modified plan files exist since the before-snapshot.
22
35
  * Used as an artifact gate by detectCompletion to prevent premature
@@ -48,6 +61,11 @@ export declare class PlanFileResolver {
48
61
  private fallbackByMtime;
49
62
  private matchByContent;
50
63
  private contentMatches;
64
+ /**
65
+ * Read and validate a candidate, warning if content is below MIN_PLAN_BYTES.
66
+ * Returns the file even if short (caller may still use it as best-effort).
67
+ */
68
+ private readAndValidate;
51
69
  private readCandidate;
52
70
  }
53
71
  //# sourceMappingURL=PlanFileResolver.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"PlanFileResolver.d.ts","sourceRoot":"","sources":["../../src/ai-runner/PlanFileResolver.ts"],"names":[],"mappings":"AAOA,MAAM,WAAW,gBAAgB;IAC/B,gEAAgE;IAChE,UAAU,EAAE,MAAM,CAAC;IACnB,mBAAmB;IACnB,OAAO,EAAE,MAAM,CAAC;CACjB;AAQD;;;;GAIG;AACH,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAS;IAClC,OAAO,CAAC,WAAW,CAAkC;gBAEzC,QAAQ,CAAC,EAAE,MAAM;IAI7B,0FAA0F;IAC1F,MAAM,CAAC,SAAS,CAAC,SAAS,EAAE,MAAM,GAAG,gBAAgB;IAKrD,2EAA2E;IAC3E,kBAAkB,IAAI,IAAI;IAQ1B;;;;OAIG;IACH,qBAAqB,IAAI,OAAO;IAShC;;;;;;;;;;OAUG;IACH,OAAO,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,gBAAgB,GAAG,IAAI;IAqCtD;;OAEG;IACH,MAAM,CAAC,gBAAgB,CAAC,QAAQ,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,MAAM;IAMtE,OAAO,CAAC,SAAS;IAwBjB,OAAO,CAAC,YAAY;IAUpB;;;OAGG;IACH,OAAO,CAAC,eAAe;IAgCvB,OAAO,CAAC,cAAc;IAqBtB,OAAO,CAAC,cAAc;IAKtB,OAAO,CAAC,aAAa;CActB"}
1
+ {"version":3,"file":"PlanFileResolver.d.ts","sourceRoot":"","sources":["../../src/ai-runner/PlanFileResolver.ts"],"names":[],"mappings":"AAOA,MAAM,WAAW,gBAAgB;IAC/B,gEAAgE;IAChE,UAAU,EAAE,MAAM,CAAC;IACnB,mBAAmB;IACnB,OAAO,EAAE,MAAM,CAAC;CACjB;AAQD;;;;GAIG;AACH,qBAAa,gBAAgB;IAC3B,wEAAwE;IACxE,MAAM,CAAC,QAAQ,CAAC,kBAAkB,SAAsB;IACxD,2EAA2E;IAC3E,MAAM,CAAC,QAAQ,CAAC,cAAc,OAAO;IAErC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAS;IAClC,OAAO,CAAC,WAAW,CAAkC;gBAEzC,QAAQ,CAAC,EAAE,MAAM;IAI7B,0FAA0F;IAC1F,MAAM,CAAC,SAAS,CAAC,SAAS,EAAE,MAAM,GAAG,gBAAgB;IAKrD;;;;OAIG;IACH,kBAAkB,CAAC,UAAU,UAAO,GAAG,IAAI;IAW3C;;;OAGG;IACH,OAAO,CAAC,gBAAgB;IA2BxB;;;;OAIG;IACH,qBAAqB,IAAI,OAAO;IAShC;;;;;;;;;;OAUG;IACH,OAAO,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,gBAAgB,GAAG,IAAI;IAqCtD;;OAEG;IACH,MAAM,CAAC,gBAAgB,CAAC,QAAQ,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,MAAM;IAMtE,OAAO,CAAC,SAAS;IAwBjB,OAAO,CAAC,YAAY;IAUpB;;;OAGG;IACH,OAAO,CAAC,eAAe;IAgCvB,OAAO,CAAC,cAAc;IAqBtB,OAAO,CAAC,cAAc;IAKtB;;;OAGG;IACH,OAAO,CAAC,eAAe;IAYvB,OAAO,CAAC,aAAa;CActB"}
@@ -1 +1 @@
1
- {"version":3,"file":"PtyRunner.d.ts","sourceRoot":"","sources":["../../src/ai-runner/PtyRunner.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"PtyRunner.d.ts","sourceRoot":"","sources":["../../src/ai-runner/PtyRunner.ts"],"names":[],"mappings":"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"}
@@ -2,7 +2,7 @@ import "./chunk-MSL7ROVK.js";
2
2
  import {
3
3
  PlanFileResolver,
4
4
  PtyRunner
5
- } from "./chunk-HD6V7KPE.js";
5
+ } from "./chunk-XOOKCEAK.js";
6
6
  import {
7
7
  SdkRunner
8
8
  } from "./chunk-R32Q3RGK.js";
@@ -54,4 +54,4 @@ export {
54
54
  usesDeterministicPlanCopy,
55
55
  validateRunnerRegistry
56
56
  };
57
- //# sourceMappingURL=ai-runner-S2ATTGWX.js.map
57
+ //# sourceMappingURL=ai-runner-GPHHQKUT.js.map
@@ -1,5 +1,5 @@
1
1
  import "./chunk-MSL7ROVK.js";
2
- import "./chunk-HD6V7KPE.js";
2
+ import "./chunk-XOOKCEAK.js";
3
3
  import "./chunk-R32Q3RGK.js";
4
4
  import {
5
5
  analyze
@@ -77,4 +77,4 @@ async function analyzeCommand(opts) {
77
77
  export {
78
78
  analyzeCommand
79
79
  };
80
- //# sourceMappingURL=analyze-DAVYPBHK.js.map
80
+ //# sourceMappingURL=analyze-SYJXCCU7.js.map
@@ -15,7 +15,7 @@ import {
15
15
  GitOperations
16
16
  } from "./chunk-GPZX4DSY.js";
17
17
  import "./chunk-MSL7ROVK.js";
18
- import "./chunk-HD6V7KPE.js";
18
+ import "./chunk-XOOKCEAK.js";
19
19
  import "./chunk-R32Q3RGK.js";
20
20
  import "./chunk-ACVOOHAR.js";
21
21
  import "./chunk-B7TVVODN.js";
@@ -209,4 +209,4 @@ ${bold("\u786E\u8BA4\u6267\u884C\uFF1F")} (${green("y")}=\u786E\u8BA4 / ${red("q
209
209
  export {
210
210
  braindumpCommand
211
211
  };
212
- //# sourceMappingURL=braindump-A4R3A4QT.js.map
212
+ //# sourceMappingURL=braindump-QIUTH777.js.map
@@ -4,7 +4,7 @@ import {
4
4
  } from "./chunk-5M5SB6ZA.js";
5
5
  import {
6
6
  createSetupRouter
7
- } from "./chunk-2XACBKPB.js";
7
+ } from "./chunk-URL4HZ66.js";
8
8
  import {
9
9
  buildLockNoteBody,
10
10
  buildReleaseNoteBody,
@@ -38,7 +38,7 @@ import {
38
38
  setE2eOverride,
39
39
  setNoteSyncOverride,
40
40
  validatePhaseRegistry
41
- } from "./chunk-OPWP73PW.js";
41
+ } from "./chunk-DUQUGPMI.js";
42
42
  import {
43
43
  AsyncMutex,
44
44
  BaseTracker,
@@ -2458,7 +2458,7 @@ function createKnowledgeRouter(deps) {
2458
2458
  heartbeat = setInterval(() => {
2459
2459
  sendProgress({ step: "analyzing", current: 2, total, message: "AI \u5206\u6790\u4E2D...", elapsed: Date.now() - aiStart });
2460
2460
  }, 3e3);
2461
- const { createAIRunner: createAIRunner2 } = await import("./ai-runner-S2ATTGWX.js");
2461
+ const { createAIRunner: createAIRunner2 } = await import("./ai-runner-GPHHQKUT.js");
2462
2462
  const runner = createAIRunner2(config.ai);
2463
2463
  const { analyze } = await import("./KnowledgeAnalyzer-MTTTSSHX.js");
2464
2464
  const knowledge = await analyze({ workDir, aiRunner: runner, syncToProject: config.sync.knowledgeToProject });
@@ -2503,7 +2503,7 @@ function createKnowledgeRouter(deps) {
2503
2503
  (async () => {
2504
2504
  try {
2505
2505
  sendProgress({ step: "collecting", current: 1, total, message: "\u68C0\u6D4B\u53D8\u66F4\u5E76\u6536\u96C6\u4FE1\u606F..." });
2506
- const { createAIRunner: createAIRunner2 } = await import("./ai-runner-S2ATTGWX.js");
2506
+ const { createAIRunner: createAIRunner2 } = await import("./ai-runner-GPHHQKUT.js");
2507
2507
  const { analyzeIncremental } = await import("./KnowledgeAnalyzer-MTTTSSHX.js");
2508
2508
  const runner = createAIRunner2(config.ai);
2509
2509
  sendProgress({ step: "analyzing", current: 2, total, message: "\u589E\u91CF\u5206\u6790\u4E2D..." });
@@ -2787,7 +2787,7 @@ function createDomainModelRouter(deps) {
2787
2787
  }
2788
2788
  (async () => {
2789
2789
  try {
2790
- const { createAIRunner: createAIRunner2 } = await import("./ai-runner-S2ATTGWX.js");
2790
+ const { createAIRunner: createAIRunner2 } = await import("./ai-runner-GPHHQKUT.js");
2791
2791
  const runner = createAIRunner2(config.ai);
2792
2792
  const model = await analyzer.analyze({
2793
2793
  workDir: config.project.workDir,
@@ -3001,7 +3001,7 @@ function createSystemUseCaseRouter(deps) {
3001
3001
  }
3002
3002
  (async () => {
3003
3003
  try {
3004
- const { createAIRunner: createAIRunner2 } = await import("./ai-runner-S2ATTGWX.js");
3004
+ const { createAIRunner: createAIRunner2 } = await import("./ai-runner-GPHHQKUT.js");
3005
3005
  const runner = createAIRunner2(config.ai);
3006
3006
  const model = await analyzer.analyze({
3007
3007
  workDir: config.project.workDir,
@@ -3191,7 +3191,7 @@ function createSystemUseCaseRouter(deps) {
3191
3191
  res.status(404).json({ error: "No domain model loaded \u2014 run domain analysis first" });
3192
3192
  return;
3193
3193
  }
3194
- const { createAIRunner: createAIRunner2 } = await import("./ai-runner-S2ATTGWX.js");
3194
+ const { createAIRunner: createAIRunner2 } = await import("./ai-runner-GPHHQKUT.js");
3195
3195
  const runner = createAIRunner2(config.ai);
3196
3196
  const associations = await analyzer.suggestDomainAssociations(
3197
3197
  useCaseModel,
@@ -8883,7 +8883,7 @@ async function main() {
8883
8883
  let sharedTerminalManager;
8884
8884
  if (config.ai.mode === "pty") {
8885
8885
  const { TerminalManager: TerminalManager2 } = await import("./TerminalManager-RT2N7N5R.js");
8886
- const { PtyRunner } = await import("./PtyRunner-XMWDMH3L.js");
8886
+ const { PtyRunner } = await import("./PtyRunner-AVP7C4HC.js");
8887
8887
  const { registerAIRunner: regRunner, getPtyProfile } = await import("./AIRunnerRegistry-CFDNWSXC.js");
8888
8888
  const allPtyAgents = /* @__PURE__ */ new Set([
8889
8889
  config.pty.defaultAgent,
@@ -9303,4 +9303,4 @@ function migrateKnowledgeDir(srcDir, destDir) {
9303
9303
  export {
9304
9304
  main
9305
9305
  };
9306
- //# sourceMappingURL=chunk-BPVRMZU4.js.map
9306
+ //# sourceMappingURL=chunk-APROB5LF.js.map
@@ -110,4 +110,4 @@ async function startDaemon(configPath) {
110
110
  export {
111
111
  startCommand
112
112
  };
113
- //# sourceMappingURL=chunk-SNSEW7DS.js.map
113
+ //# sourceMappingURL=chunk-CKYGI2V2.js.map
@@ -20,7 +20,7 @@ import {
20
20
  } from "./chunk-GPZX4DSY.js";
21
21
  import {
22
22
  HookInjector
23
- } from "./chunk-HD6V7KPE.js";
23
+ } from "./chunk-XOOKCEAK.js";
24
24
  import {
25
25
  getProjectKnowledge
26
26
  } from "./chunk-ACVOOHAR.js";
@@ -1902,6 +1902,7 @@ ${t("basePhase.rulesSection", { rules })}`;
1902
1902
  timeoutMaxExtensions: this.config.ai.timeoutMaxExtensions,
1903
1903
  mode: this.getRunMode(),
1904
1904
  phaseName: this.phaseName,
1905
+ issueTitle: ctx?.demand.title,
1905
1906
  artifactCheck,
1906
1907
  artifactPaths,
1907
1908
  sessionId: options?.sessionId,
@@ -6073,4 +6074,4 @@ export {
6073
6074
  PipelineOrchestrator,
6074
6075
  BrainstormService
6075
6076
  };
6076
- //# sourceMappingURL=chunk-OPWP73PW.js.map
6077
+ //# sourceMappingURL=chunk-DUQUGPMI.js.map