@dendelion/paper-camp 0.39.0 → 0.41.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.
Files changed (66) hide show
  1. package/dist/chunks/{daemon-state.BeDnhzBY.js → daemon-state.Evil_jr0.js} +93 -104
  2. package/dist/chunks/daemon-state.Evil_jr0.js.map +1 -0
  3. package/dist/chunks/needs.CUNwDixH.js +3516 -0
  4. package/dist/chunks/needs.CUNwDixH.js.map +1 -0
  5. package/dist/cli/index.js +4389 -4134
  6. package/dist/cli/index.js.map +1 -1
  7. package/dist/core/chat-file.d.ts +1 -0
  8. package/dist/core/chat-file.d.ts.map +1 -1
  9. package/dist/core/ci/ci-release.d.ts +5 -0
  10. package/dist/core/ci/ci-release.d.ts.map +1 -1
  11. package/dist/core/daemon-state/daemon-state.d.ts +3 -11
  12. package/dist/core/daemon-state/daemon-state.d.ts.map +1 -1
  13. package/dist/core/decision-text.d.ts +9 -0
  14. package/dist/core/decision-text.d.ts.map +1 -0
  15. package/dist/core/decision-text.test.d.ts +2 -0
  16. package/dist/core/decision-text.test.d.ts.map +1 -0
  17. package/dist/core/desk-discovery/evidence.d.ts +1 -0
  18. package/dist/core/desk-discovery/evidence.d.ts.map +1 -1
  19. package/dist/core/doctor/checks/tooling.d.ts.map +1 -1
  20. package/dist/core/doctor/doctor.d.ts +2 -0
  21. package/dist/core/doctor/doctor.d.ts.map +1 -1
  22. package/dist/core/doctor/fix.d.ts +1 -1
  23. package/dist/core/doctor/fix.d.ts.map +1 -1
  24. package/dist/core/doctor/rules.d.ts +10 -0
  25. package/dist/core/doctor/rules.d.ts.map +1 -1
  26. package/dist/core/entity-view.d.ts.map +1 -1
  27. package/dist/core/index.d.ts +1 -0
  28. package/dist/core/index.d.ts.map +1 -1
  29. package/dist/core/index.js +192 -178
  30. package/dist/core/needs-status.d.ts +4 -0
  31. package/dist/core/needs-status.d.ts.map +1 -0
  32. package/dist/core/needs.d.ts +32 -0
  33. package/dist/core/needs.d.ts.map +1 -0
  34. package/dist/core/needs.test.d.ts +2 -0
  35. package/dist/core/needs.test.d.ts.map +1 -0
  36. package/dist/core/parked-questions.d.ts +0 -1
  37. package/dist/core/parked-questions.d.ts.map +1 -1
  38. package/dist/core/parse/parser.d.ts.map +1 -1
  39. package/dist/core/parse/schemas.d.ts +4 -0
  40. package/dist/core/parse/schemas.d.ts.map +1 -1
  41. package/dist/core/roadmap.d.ts.map +1 -1
  42. package/dist/core/run-filters.d.ts +2 -0
  43. package/dist/core/run-filters.d.ts.map +1 -1
  44. package/dist/core/run-order.d.ts +5 -1
  45. package/dist/core/run-order.d.ts.map +1 -1
  46. package/dist/core/run-rows.d.ts.map +1 -1
  47. package/dist/core/scaffold/scaffold.d.ts +1 -0
  48. package/dist/core/scaffold/scaffold.d.ts.map +1 -1
  49. package/dist/core/scaffold/templates.d.ts +6 -0
  50. package/dist/core/scaffold/templates.d.ts.map +1 -1
  51. package/dist/core/sections.d.ts.map +1 -1
  52. package/dist/core/sections.test.d.ts +2 -0
  53. package/dist/core/sections.test.d.ts.map +1 -0
  54. package/dist/core/serialize/entity-file.d.ts +6 -2
  55. package/dist/core/serialize/entity-file.d.ts.map +1 -1
  56. package/dist/toolbar/toolbar.js +3192 -3187
  57. package/dist/toolbar/toolbar.js.map +1 -1
  58. package/dist/types/index.d.ts +59 -0
  59. package/dist/types/index.d.ts.map +1 -1
  60. package/dist/types/index.js +16 -15
  61. package/dist/types/index.js.map +1 -1
  62. package/dist/vite/index.js +1 -1
  63. package/package.json +6 -2
  64. package/dist/chunks/daemon-state.BeDnhzBY.js.map +0 -1
  65. package/dist/chunks/phase-progress.2akB88O9.js +0 -3178
  66. package/dist/chunks/phase-progress.2akB88O9.js.map +0 -1
@@ -1,6 +1,7 @@
1
1
  import { ThreadMessage } from '../types/index';
2
2
  export declare function parseChatFile(content: string): ThreadMessage[];
3
3
  export declare function formatChatFile(messages: ThreadMessage[]): string;
4
+ export declare function isUnansweredQuestion(message: ThreadMessage): boolean;
4
5
  /** Trims to the last 50 messages and to nothing older than 14 days, whichever leaves
5
6
  * fewer, but keeps every unanswered question regardless of age or position — it is
6
7
  * the one inbox for the agent's questions and a trim must never silently drop one. */
@@ -1 +1 @@
1
- {"version":3,"file":"chat-file.d.ts","sourceRoot":"","sources":["../../src/core/chat-file.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAMpD,wBAAgB,aAAa,CAAC,OAAO,EAAE,MAAM,GAAG,aAAa,EAAE,CAG9D;AAED,wBAAgB,cAAc,CAAC,QAAQ,EAAE,aAAa,EAAE,GAAG,MAAM,CAGhE;AAMD;;sFAEsF;AACtF,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,aAAa,EAAE,EAAE,GAAG,EAAE,IAAI,GAAG,aAAa,EAAE,CAUtF;AAED,wBAAgB,iBAAiB,CAC/B,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,aAAa,EACtB,GAAG,GAAE,IAAiB,GACrB,MAAM,CAER"}
1
+ {"version":3,"file":"chat-file.d.ts","sourceRoot":"","sources":["../../src/core/chat-file.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAMpD,wBAAgB,aAAa,CAAC,OAAO,EAAE,MAAM,GAAG,aAAa,EAAE,CAG9D;AAED,wBAAgB,cAAc,CAAC,QAAQ,EAAE,aAAa,EAAE,GAAG,MAAM,CAGhE;AAED,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAEpE;AAED;;sFAEsF;AACtF,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,aAAa,EAAE,EAAE,GAAG,EAAE,IAAI,GAAG,aAAa,EAAE,CAUtF;AAED,wBAAgB,iBAAiB,CAC/B,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,aAAa,EACtB,GAAG,GAAE,IAAiB,GACrB,MAAM,CAER"}
@@ -20,6 +20,9 @@ interface GhPrRow {
20
20
  name: string;
21
21
  }[];
22
22
  }
23
+ interface GhSecretRow {
24
+ name: string;
25
+ }
23
26
  export declare function mapRunStatus(status: string, conclusion: string): CiRunStatus;
24
27
  export declare function parseVersion(text: string): string | null;
25
28
  export declare function latestRunPerWorkflow(rows: GhRunRow[], branch: string): (CiRun & {
@@ -27,6 +30,8 @@ export declare function latestRunPerWorkflow(rows: GhRunRow[], branch: string):
27
30
  })[];
28
31
  export declare function failedJobNames(jobs: GhJobRow[]): string[];
29
32
  export declare function pickReleasePr(rows: GhPrRow[]): ReleasePr | null;
33
+ export declare function latestDraftPrRun(rows: GhRunRow[]): CiRun | null;
34
+ export declare function hasSecret(rows: GhSecretRow[], name: string): boolean;
30
35
  export declare function clearCiCache(): void;
31
36
  export declare function fetchCiReleaseState(ci: DeskCi, ttlMs?: number): Promise<CiReleaseState>;
32
37
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"ci-release.d.ts","sourceRoot":"","sources":["../../../src/core/ci/ci-release.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAK/F,UAAU,QAAQ;IAChB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;IACnB,GAAG,EAAE,MAAM,CAAC;IACZ,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,UAAU,QAAQ;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,UAAU,OAAO;IACf,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,EAAE,MAAM,CAAC;IACZ,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE;QAAE,IAAI,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;CAC5B;AA2CD,wBAAgB,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,WAAW,CAqB5E;AAED,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAGxD;AAED,wBAAgB,oBAAoB,CAClC,IAAI,EAAE,QAAQ,EAAE,EAChB,MAAM,EAAE,MAAM,GACb,CAAC,KAAK,GAAG;IAAE,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,EAAE,CAchC;AAED,wBAAgB,cAAc,CAAC,IAAI,EAAE,QAAQ,EAAE,GAAG,MAAM,EAAE,CAEzD;AAyBD,wBAAgB,aAAa,CAAC,IAAI,EAAE,OAAO,EAAE,GAAG,SAAS,GAAG,IAAI,CAa/D;AAID,wBAAgB,YAAY,IAAI,IAAI,CAEnC;AAED,wBAAsB,mBAAmB,CACvC,EAAE,EAAE,MAAM,EACV,KAAK,SAAkB,GACtB,OAAO,CAAC,cAAc,CAAC,CAkDzB"}
1
+ {"version":3,"file":"ci-release.d.ts","sourceRoot":"","sources":["../../../src/core/ci/ci-release.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,cAAc,EACd,KAAK,EACL,WAAW,EACX,MAAM,EAEN,SAAS,EACV,MAAM,mBAAmB,CAAC;AAO3B,UAAU,QAAQ;IAChB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;IACnB,GAAG,EAAE,MAAM,CAAC;IACZ,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,UAAU,QAAQ;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,UAAU,OAAO;IACf,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,EAAE,MAAM,CAAC;IACZ,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE;QAAE,IAAI,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;CAC5B;AAOD,UAAU,WAAW;IACnB,IAAI,EAAE,MAAM,CAAC;CACd;AAsCD,wBAAgB,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,WAAW,CAqB5E;AAED,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAGxD;AAED,wBAAgB,oBAAoB,CAClC,IAAI,EAAE,QAAQ,EAAE,EAChB,MAAM,EAAE,MAAM,GACb,CAAC,KAAK,GAAG;IAAE,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,EAAE,CAchC;AAED,wBAAgB,cAAc,CAAC,IAAI,EAAE,QAAQ,EAAE,GAAG,MAAM,EAAE,CAEzD;AAyBD,wBAAgB,aAAa,CAAC,IAAI,EAAE,OAAO,EAAE,GAAG,SAAS,GAAG,IAAI,CAa/D;AAID,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,QAAQ,EAAE,GAAG,KAAK,GAAG,IAAI,CAQ/D;AAED,wBAAgB,SAAS,CAAC,IAAI,EAAE,WAAW,EAAE,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAEpE;AAID,wBAAgB,YAAY,IAAI,IAAI,CAEnC;AAED,wBAAsB,mBAAmB,CACvC,EAAE,EAAE,MAAM,EACV,KAAK,SAAkB,GACtB,OAAO,CAAC,cAAc,CAAC,CA4EzB"}
@@ -1,11 +1,4 @@
1
1
  import { MachineNightGateResponse, MachineProjectSummary } from '../../types/index';
2
- export interface DaemonLinks {
3
- host: string;
4
- network?: string;
5
- tailnet?: string;
6
- tunnel?: string;
7
- }
8
- export declare function qrEligibleLink(links: DaemonLinks): string | undefined;
9
2
  export type UpdateEvent = {
10
3
  kind: 'hooked';
11
4
  version: string;
@@ -26,7 +19,7 @@ export interface DaemonState {
26
19
  tailnet: boolean;
27
20
  updateEvent?: UpdateEvent;
28
21
  updatePendingVersion?: string | null;
29
- links?: DaemonLinks;
22
+ tailnetName?: string;
30
23
  }
31
24
  export declare function daemonStatePath(): string;
32
25
  export declare function daemonLogPath(): string;
@@ -42,9 +35,8 @@ export declare function fetchMachineNightGate(port: number): Promise<MachineNigh
42
35
  export declare function readRunningDaemonState(path: string): Promise<DaemonState | null>;
43
36
  export declare function formatDaemonStatusLine(state: DaemonState): string;
44
37
  export declare function formatUpdateStatusLine(state: DaemonState): string;
45
- /** Unlike the daemon banner, which prints only the single best way in, status
46
- * lists every link this machine has on offer. */
47
- export declare function formatDaemonLinks(links: DaemonLinks): string;
38
+ export declare const PAIR_HINT = "Run `paper-camp pair` to connect a device.";
39
+ export declare function formatDaemonTailnetLine(tailnetName: string | undefined): string;
48
40
  /** Written to a sibling temp path and renamed into place, so a crash mid-write
49
41
  * never leaves a stale-file reader a truncated file to trip over. */
50
42
  export declare function writeDaemonState(path: string, state: DaemonState): Promise<void>;
@@ -1 +1 @@
1
- {"version":3,"file":"daemon-state.d.ts","sourceRoot":"","sources":["../../../src/core/daemon-state/daemon-state.ts"],"names":[],"mappings":"AAGA,OAAO,EAGL,KAAK,wBAAwB,EAC7B,KAAK,qBAAqB,EAC3B,MAAM,mBAAmB,CAAC;AAI3B,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,wBAAgB,cAAc,CAAC,KAAK,EAAE,WAAW,GAAG,MAAM,GAAG,SAAS,CAErE;AAED,MAAM,MAAM,WAAW,GACnB;IAAE,IAAI,EAAE,QAAQ,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,EAAE,EAAE,MAAM,CAAA;CAAE,GAC/C;IAAE,IAAI,EAAE,oBAAoB,CAAA;CAAE,GAC9B;IAAE,IAAI,EAAE,QAAQ,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC;AAExD,MAAM,WAAW,WAAW;IAC1B,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,OAAO,CAAC;IACf,OAAO,EAAE,OAAO,CAAC;IACjB,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,oBAAoB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACrC,KAAK,CAAC,EAAE,WAAW,CAAC;CACrB;AAED,wBAAgB,eAAe,IAAI,MAAM,CAExC;AAED,wBAAgB,aAAa,IAAI,MAAM,CAEtC;AAqED,wBAAgB,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAOnD;AAID,wBAAsB,oBAAoB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,qBAAqB,EAAE,GAAG,IAAI,CAAC,CAWhG;AAED;2DAC2D;AAC3D,wBAAsB,oBAAoB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAEzE;AAED,wBAAsB,qBAAqB,CACzC,IAAI,EAAE,MAAM,GACX,OAAO,CAAC,wBAAwB,GAAG,IAAI,CAAC,CAU1C;AAED;;wCAEwC;AACxC,wBAAsB,sBAAsB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,GAAG,IAAI,CAAC,CAStF;AAED,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,WAAW,GAAG,MAAM,CAOjE;AAQD,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,WAAW,GAAG,MAAM,CAcjE;AAED;iDACiD;AACjD,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,WAAW,GAAG,MAAM,CAU5D;AAED;qEACqE;AACrE,wBAAsB,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAKtF;AAED,wBAAsB,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAEnE"}
1
+ {"version":3,"file":"daemon-state.d.ts","sourceRoot":"","sources":["../../../src/core/daemon-state/daemon-state.ts"],"names":[],"mappings":"AAGA,OAAO,EAGL,KAAK,wBAAwB,EAC7B,KAAK,qBAAqB,EAC3B,MAAM,mBAAmB,CAAC;AAI3B,MAAM,MAAM,WAAW,GACnB;IAAE,IAAI,EAAE,QAAQ,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,EAAE,EAAE,MAAM,CAAA;CAAE,GAC/C;IAAE,IAAI,EAAE,oBAAoB,CAAA;CAAE,GAC9B;IAAE,IAAI,EAAE,QAAQ,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC;AAExD,MAAM,WAAW,WAAW;IAC1B,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,OAAO,CAAC;IACf,OAAO,EAAE,OAAO,CAAC;IACjB,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,oBAAoB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACrC,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,wBAAgB,eAAe,IAAI,MAAM,CAExC;AAED,wBAAgB,aAAa,IAAI,MAAM,CAEtC;AAyDD,wBAAgB,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAOnD;AAID,wBAAsB,oBAAoB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,qBAAqB,EAAE,GAAG,IAAI,CAAC,CAWhG;AAED;2DAC2D;AAC3D,wBAAsB,oBAAoB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAEzE;AAED,wBAAsB,qBAAqB,CACzC,IAAI,EAAE,MAAM,GACX,OAAO,CAAC,wBAAwB,GAAG,IAAI,CAAC,CAU1C;AAED;;wCAEwC;AACxC,wBAAsB,sBAAsB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,GAAG,IAAI,CAAC,CAStF;AAED,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,WAAW,GAAG,MAAM,CAOjE;AAQD,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,WAAW,GAAG,MAAM,CAcjE;AAED,eAAO,MAAM,SAAS,+CAA+C,CAAC;AAEtE,wBAAgB,uBAAuB,CAAC,WAAW,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,CAI/E;AAED;qEACqE;AACrE,wBAAsB,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAKtF;AAED,wBAAsB,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAEnE"}
@@ -0,0 +1,9 @@
1
+ /** `escalateToLog` composes a `[question]` message's `text` as a phase-context
2
+ * lead-in followed by the bare question (agent.ts); split it back apart so a
3
+ * bell notification can show the question alone and a card can show the
4
+ * lead-in muted above it. */
5
+ export declare function splitQuestionText(text: string): {
6
+ phaseLine?: string;
7
+ question: string;
8
+ };
9
+ //# sourceMappingURL=decision-text.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"decision-text.d.ts","sourceRoot":"","sources":["../../src/core/decision-text.ts"],"names":[],"mappings":"AAEA;;;6BAG6B;AAC7B,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG;IAAE,SAAS,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,CAWxF"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=decision-text.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"decision-text.test.d.ts","sourceRoot":"","sources":["../../src/core/decision-text.test.ts"],"names":[],"mappings":""}
@@ -24,6 +24,7 @@ export interface ProjectEvidence {
24
24
  * commitlint over a PR range, say — can still be offered as a desk check. */
25
25
  ciSteps: CiStep[];
26
26
  hasReleasePlease: boolean;
27
+ hasDraftPrWorkflow: boolean;
27
28
  nonJsManifests: NonJsManifest[];
28
29
  }
29
30
  export declare function detectPackageManager(root: string): PackageManager | null;
@@ -1 +1 @@
1
- {"version":3,"file":"evidence.d.ts","sourceRoot":"","sources":["../../../src/core/desk-discovery/evidence.ts"],"names":[],"mappings":"AAMA,MAAM,MAAM,cAAc,GAAG,KAAK,GAAG,MAAM,GAAG,MAAM,GAAG,KAAK,CAAC;AAE7D,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;CACb;AAED,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,OAAO,GAAG,QAAQ,GAAG,IAAI,GAAG,MAAM,CAAC;IACzC,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,EAAE,CAAC;CACnB;AAED,MAAM,WAAW,MAAM;IACrB,QAAQ,EAAE,MAAM,CAAC;IACjB,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;CACb;AAED,MAAM,WAAW,eAAe;IAC9B,cAAc,EAAE,cAAc,GAAG,IAAI,CAAC;IACtC,OAAO,EAAE,aAAa,EAAE,CAAC;IACzB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,cAAc,EAAE,OAAO,CAAC;IACxB;kFAC8E;IAC9E,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,gBAAgB,EAAE,OAAO,CAAC;IAC1B,cAAc,EAAE,aAAa,EAAE,CAAC;CACjC;AAsCD,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,MAAM,GAAG,cAAc,GAAG,IAAI,CAKxE;AAqLD,wBAAsB,qBAAqB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,CAAC,CAkBlF"}
1
+ {"version":3,"file":"evidence.d.ts","sourceRoot":"","sources":["../../../src/core/desk-discovery/evidence.ts"],"names":[],"mappings":"AAMA,MAAM,MAAM,cAAc,GAAG,KAAK,GAAG,MAAM,GAAG,MAAM,GAAG,KAAK,CAAC;AAE7D,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;CACb;AAED,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,OAAO,GAAG,QAAQ,GAAG,IAAI,GAAG,MAAM,CAAC;IACzC,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,EAAE,CAAC;CACnB;AAED,MAAM,WAAW,MAAM;IACrB,QAAQ,EAAE,MAAM,CAAC;IACjB,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;CACb;AAED,MAAM,WAAW,eAAe;IAC9B,cAAc,EAAE,cAAc,GAAG,IAAI,CAAC;IACtC,OAAO,EAAE,aAAa,EAAE,CAAC;IACzB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,cAAc,EAAE,OAAO,CAAC;IACxB;kFAC8E;IAC9E,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,gBAAgB,EAAE,OAAO,CAAC;IAC1B,kBAAkB,EAAE,OAAO,CAAC;IAC5B,cAAc,EAAE,aAAa,EAAE,CAAC;CACjC;AAsCD,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,MAAM,GAAG,cAAc,GAAG,IAAI,CAKxE;AAyLD,wBAAsB,qBAAqB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,CAAC,CAmBlF"}
@@ -1 +1 @@
1
- {"version":3,"file":"tooling.d.ts","sourceRoot":"","sources":["../../../../src/core/doctor/checks/tooling.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AA8B7C,eAAO,MAAM,aAAa,EAAE,WAAW,EAGtC,CAAC"}
1
+ {"version":3,"file":"tooling.d.ts","sourceRoot":"","sources":["../../../../src/core/doctor/checks/tooling.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAmF7C,eAAO,MAAM,aAAa,EAAE,WAAW,EAItC,CAAC"}
@@ -10,6 +10,8 @@ export interface DoctorContext {
10
10
  files: DoctorEntityFile[];
11
11
  config: PaperCampConfig | null;
12
12
  hasPermissionsAllow?: boolean;
13
+ draftPrWorkflowContent?: string | null;
14
+ pullRequestTemplateContent?: string | null;
13
15
  }
14
16
  export type DoctorCheck = (context: DoctorContext) => DoctorFinding[];
15
17
  export declare const DOCTOR_CHECKS: DoctorCheck[];
@@ -1 +1 @@
1
- {"version":3,"file":"doctor.d.ts","sourceRoot":"","sources":["../../../src/core/doctor/doctor.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAIzD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAE/C,MAAM,WAAW,gBAAgB;IAC/B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,OAAO,CAAC;CACnB;AAED,MAAM,WAAW,aAAa;IAC5B,KAAK,EAAE,gBAAgB,EAAE,CAAC;IAC1B,MAAM,EAAE,eAAe,GAAG,IAAI,CAAC;IAC/B,mBAAmB,CAAC,EAAE,OAAO,CAAC;CAC/B;AAED,MAAM,MAAM,WAAW,GAAG,CAAC,OAAO,EAAE,aAAa,KAAK,aAAa,EAAE,CAAC;AAEtE,eAAO,MAAM,aAAa,EAAE,WAAW,EAItC,CAAC;AAgDF,wBAAsB,oBAAoB,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC,CA8BvF;AAED,wBAAgB,eAAe,CAAC,OAAO,EAAE,aAAa,GAAG,aAAa,EAAE,CAEvE;AAED,wBAAsB,SAAS,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC,CAE9E"}
1
+ {"version":3,"file":"doctor.d.ts","sourceRoot":"","sources":["../../../src/core/doctor/doctor.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAIzD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAE/C,MAAM,WAAW,gBAAgB;IAC/B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,OAAO,CAAC;CACnB;AAED,MAAM,WAAW,aAAa;IAC5B,KAAK,EAAE,gBAAgB,EAAE,CAAC;IAC1B,MAAM,EAAE,eAAe,GAAG,IAAI,CAAC;IAC/B,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,sBAAsB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACvC,0BAA0B,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAC5C;AAED,MAAM,MAAM,WAAW,GAAG,CAAC,OAAO,EAAE,aAAa,KAAK,aAAa,EAAE,CAAC;AAEtE,eAAO,MAAM,aAAa,EAAE,WAAW,EAItC,CAAC;AAyDF,wBAAsB,oBAAoB,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC,CAqCvF;AAED,wBAAgB,eAAe,CAAC,OAAO,EAAE,aAAa,GAAG,aAAa,EAAE,CAEvE;AAED,wBAAsB,SAAS,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC,CAE9E"}
@@ -12,7 +12,7 @@ export type DoctorFixAction = {
12
12
  };
13
13
  export interface DoctorFixer {
14
14
  rule: DoctorRuleId;
15
- fix: (finding: DoctorFinding, file: DoctorEntityFile) => DoctorFixAction | null;
15
+ fix: (finding: DoctorFinding, file?: DoctorEntityFile) => DoctorFixAction | null;
16
16
  }
17
17
  export declare const DOCTOR_FIXERS: DoctorFixer[];
18
18
  export interface DoctorFixPlan {
@@ -1 +1 @@
1
- {"version":3,"file":"fix.d.ts","sourceRoot":"","sources":["../../../src/core/doctor/fix.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAChE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAC/C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAE5C,MAAM,MAAM,eAAe,GACvB;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,EAAE,EAAE,MAAM,CAAA;CAAE,GAC1C;IAAE,IAAI,EAAE,SAAS,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC;AAEvD,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,YAAY,CAAC;IACnB,GAAG,EAAE,CAAC,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,gBAAgB,KAAK,eAAe,GAAG,IAAI,CAAC;CACjF;AAaD,eAAO,MAAM,aAAa,EAAE,WAAW,EAA4B,CAAC;AAMpE,MAAM,WAAW,aAAa;IAC5B,OAAO,EAAE,eAAe,EAAE,CAAC;IAC3B,KAAK,EAAE,aAAa,EAAE,CAAC;IACvB,SAAS,EAAE,aAAa,EAAE,CAAC;IAC3B,QAAQ,EAAE,aAAa,EAAE,CAAC;CAC3B;AAED,wBAAgB,eAAe,CAAC,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,aAAa,EAAE,GAAG,aAAa,CA0BhG"}
1
+ {"version":3,"file":"fix.d.ts","sourceRoot":"","sources":["../../../src/core/doctor/fix.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAChE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAC/C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAE5C,MAAM,MAAM,eAAe,GACvB;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,EAAE,EAAE,MAAM,CAAA;CAAE,GAC1C;IAAE,IAAI,EAAE,SAAS,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC;AAEvD,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,YAAY,CAAC;IACnB,GAAG,EAAE,CAAC,OAAO,EAAE,aAAa,EAAE,IAAI,CAAC,EAAE,gBAAgB,KAAK,eAAe,GAAG,IAAI,CAAC;CAClF;AA6BD,eAAO,MAAM,aAAa,EAAE,WAAW,EAAkD,CAAC;AAM1F,MAAM,WAAW,aAAa;IAC5B,OAAO,EAAE,eAAe,EAAE,CAAC;IAC3B,KAAK,EAAE,aAAa,EAAE,CAAC;IACvB,SAAS,EAAE,aAAa,EAAE,CAAC;IAC3B,QAAQ,EAAE,aAAa,EAAE,CAAC;CAC3B;AAED,wBAAgB,eAAe,CAAC,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,aAAa,EAAE,GAAG,aAAa,CA0BhG"}
@@ -71,6 +71,16 @@ export declare const DOCTOR_RULES: readonly [{
71
71
  readonly category: "tooling";
72
72
  readonly severity: "warning";
73
73
  readonly summary: "config.json has no defaultAgents, so every run uses the built-in agent and model — choose them in Settings → General so a project never runs on a fallback it did not pick.";
74
+ }, {
75
+ readonly id: "draft-pr-template-outdated";
76
+ readonly category: "tooling";
77
+ readonly severity: "warning";
78
+ readonly summary: "desk.ci.draftPr is on but .github/workflows/draft-pr.yml or .github/pull_request_template.md is missing or carries an older paper-camp template version — run `paper-camp doctor --fix` to rewrite it.";
79
+ }, {
80
+ readonly id: "draft-pr-template-unmanaged";
81
+ readonly category: "tooling";
82
+ readonly severity: "warning";
83
+ readonly summary: "desk.ci.draftPr is on but the workflow or PR template file has no paper-camp template header, so it looks hand-written — paper-camp will not overwrite it.";
74
84
  }];
75
85
  export type DoctorRuleId = (typeof DOCTOR_RULES)[number]['id'];
76
86
  export declare const DOCTOR_RULES_BY_ID: Record<DoctorRuleId, DoctorRule>;
@@ -1 +1 @@
1
- {"version":3,"file":"rules.d.ts","sourceRoot":"","sources":["../../../src/core/doctor/rules.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,cAAc,GAAG,OAAO,GAAG,SAAS,CAAC;AAEjD,MAAM,MAAM,cAAc,GAAG,UAAU,GAAG,YAAY,GAAG,SAAS,CAAC;AAEnE,MAAM,WAAW,UAAU;IACzB,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,EAAE,cAAc,CAAC;IACzB,QAAQ,EAAE,cAAc,CAAC;IACzB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAwFiB,CAAC;AAE3C,MAAM,MAAM,YAAY,GAAG,CAAC,OAAO,YAAY,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC;AAE/D,eAAO,MAAM,kBAAkB,EAAE,MAAM,CAAC,YAAY,EAAE,UAAU,CAE3B,CAAC"}
1
+ {"version":3,"file":"rules.d.ts","sourceRoot":"","sources":["../../../src/core/doctor/rules.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,cAAc,GAAG,OAAO,GAAG,SAAS,CAAC;AAEjD,MAAM,MAAM,cAAc,GAAG,UAAU,GAAG,YAAY,GAAG,SAAS,CAAC;AAEnE,MAAM,WAAW,UAAU;IACzB,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,EAAE,cAAc,CAAC;IACzB,QAAQ,EAAE,cAAc,CAAC;IACzB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAsGiB,CAAC;AAE3C,MAAM,MAAM,YAAY,GAAG,CAAC,OAAO,YAAY,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC;AAE/D,eAAO,MAAM,kBAAkB,EAAE,MAAM,CAAC,YAAY,EAAE,UAAU,CAE3B,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"entity-view.d.ts","sourceRoot":"","sources":["../../src/core/entity-view.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,WAAW,EACX,SAAS,EAET,SAAS,EAET,MAAM,EACP,MAAM,gBAAgB,CAAC;AASxB;uGACuG;AACvG,wBAAgB,YAAY,CAC1B,CAAC,EAAE,WAAW,EACd,EAAE,CAAC,EAAE,MAAM,EACX,gBAAgB,UAAQ,EACxB,eAAe,UAAQ,GACtB,SAAS,CA+BX;AAED,wBAAgB,YAAY,CAAC,CAAC,EAAE,WAAW,GAAG,SAAS,CAYtD"}
1
+ {"version":3,"file":"entity-view.d.ts","sourceRoot":"","sources":["../../src/core/entity-view.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,WAAW,EACX,SAAS,EAET,SAAS,EAET,MAAM,EACP,MAAM,gBAAgB,CAAC;AASxB;uGACuG;AACvG,wBAAgB,YAAY,CAC1B,CAAC,EAAE,WAAW,EACd,EAAE,CAAC,EAAE,MAAM,EACX,gBAAgB,UAAQ,EACxB,eAAe,UAAQ,GACtB,SAAS,CAgCX;AAED,wBAAgB,YAAY,CAAC,CAAC,EAAE,WAAW,GAAG,SAAS,CAYtD"}
@@ -11,6 +11,7 @@ export * from './trail';
11
11
  export * from './parked-questions';
12
12
  export * from './phase-progress';
13
13
  export * from './machine-registry';
14
+ export * from './needs';
14
15
  export * from './daemon-state';
15
16
  export * from '../types/index';
16
17
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/core/index.ts"],"names":[],"mappings":"AAAA,cAAc,OAAO,CAAC;AACtB,cAAc,WAAW,CAAC;AAC1B,cAAc,SAAS,CAAC;AACxB,cAAc,UAAU,CAAC;AACzB,cAAc,UAAU,CAAC;AACzB,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,cAAc,iBAAiB,CAAC;AAChC,cAAc,WAAW,CAAC;AAC1B,cAAc,SAAS,CAAC;AACxB,cAAc,oBAAoB,CAAC;AACnC,cAAc,kBAAkB,CAAC;AACjC,cAAc,oBAAoB,CAAC;AACnC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,gBAAgB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/core/index.ts"],"names":[],"mappings":"AAAA,cAAc,OAAO,CAAC;AACtB,cAAc,WAAW,CAAC;AAC1B,cAAc,SAAS,CAAC;AACxB,cAAc,UAAU,CAAC;AACzB,cAAc,UAAU,CAAC;AACzB,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,cAAc,iBAAiB,CAAC;AAChC,cAAc,WAAW,CAAC;AAC1B,cAAc,SAAS,CAAC;AACxB,cAAc,oBAAoB,CAAC;AACnC,cAAc,kBAAkB,CAAC;AACjC,cAAc,oBAAoB,CAAC;AACnC,cAAc,SAAS,CAAC;AACxB,cAAc,gBAAgB,CAAC;AAC/B,cAAc,gBAAgB,CAAC"}
@@ -1,188 +1,202 @@
1
- import { A as s, C as t, a as r, D as i, b as n, c as o, d, e as c, M as l, P as m, f as S, g as P, S as h, h as E, i as T, j as I, k as C, l as g, m as p, n as R, o as _, p as N, q as b, r as y, s as A, t as u, u as f, v, w as F, x as D, y as O, z as L, B as M, E as k, F as G, G as H, H as w, I as j, J as U, K, L as B, N as x, O as q, Q as W, R as J, T as Q, U as X, V as z, W as V, X as Y, Y as Z, Z as $, _ as aa, $ as ea, a0 as sa, a1 as ta, a2 as ra, a3 as ia, a4 as na, a5 as oa, a6 as da, a7 as ca, a8 as la, a9 as ma, aa as Sa, ab as Pa, ac as ha, ad as Ea, ae as Ta, af as Ia, ag as Ca, ah as ga, ai as pa, aj as Ra, ak as _a, al as Na, am as ba, an as ya, ao as Aa, ap as ua, aq as fa, ar as va, as as Fa, at as Da, au as Oa, av as La, aw as Ma, ax as ka, ay as Ga, az as Ha, aA as wa, aB as ja, aC as Ua, aD as Ka, aE as Ba, aF as xa, aG as qa, aH as Wa, aI as Ja, aJ as Qa, aK as Xa, aL as za, aM as Va, aN as Ya, aO as Za, aP as $a, aQ as ae, aR as ee, aS as se, aT as te, aU as re, aV as ie, aW as ne, aX as oe, aY as de, aZ as ce, a_ as le, a$ as me, b0 as Se, b1 as Pe, b2 as he, b3 as Ee, b4 as Te, b5 as Ie, b6 as Ce, b7 as ge, b8 as pe, b9 as Re, ba as _e, bb as Ne, bc as be, bd as ye, be as Ae, bf as ue, bg as fe, bh as ve, bi as Fe, bj as De, bk as Oe, bl as Le } from "../chunks/phase-progress.2akB88O9.js";
2
- import { a as ke, c as Ge, d as He, b as we, e as je, f as Ue, g as Ke, h as Be, i as xe, j as qe, k as We, l as Je, m as Qe, n as Xe, o as ze, p as Ve, q as Ye, r as Ze, s as $e, t as as, u as es, v as ss, w as ts, x as rs, y as is } from "../chunks/daemon-state.BeDnhzBY.js";
3
- import { AGENT_IDS as os, AGENT_LABELS as ds, AGENT_OPTIONS as cs, DEFAULT_AGENTS as ls, DEFAULT_NIGHT_CONFIG as ms, DEFAULT_NOTIFICATION_KINDS as Ss, MACHINE_NIGHT_PATH as Ps, MACHINE_PROJECTS_PATH as hs, MACHINE_UPDATE_PATH as Es, NIGHT_CHECK_IDS as Ts, NOTIFICATION_SETTING_KINDS as Is, PAIRING_TOKEN_HEADER as Cs, PLAN_KINDS as gs, PLAN_STATUSES as ps, TOOLBAR_SEGMENT_IDS as Rs, agentConfigsEqual as _s, coerceAgentConfig as Ns } from "../types/index.js";
1
+ import { A as s, C as t, a as r, D as o, b as i, c as n, d, e as c, f as l, g as m, h as P, M as T, P as E, i as S, j as h, k as R, l as _, S as I, m as C, n as N, o as g, p, q as b, r as A, s as f, t as u, u as F, v, w as y, x as D, y as O, z as L, B as M, E as k, F as H, G, H as w, I as U, J as j, K, L as B, N as W, O as x, Q as q, R as Q, T as V, U as J, V as X, W as z, X as Y, Y as Z, Z as $, _ as aa, $ as ea, a0 as sa, a1 as ta, a2 as ra, a3 as oa, a4 as ia, a5 as na, a6 as da, a7 as ca, a8 as la, a9 as ma, aa as Pa, ab as Ta, ac as Ea, ad as Sa, ae as ha, af as Ra, ag as _a, ah as Ia, ai as Ca, aj as Na, ak as ga, al as pa, am as ba, an as Aa, ao as fa, ap as ua, aq as Fa, ar as va, as as ya, at as Da, au as Oa, av as La, aw as Ma, ax as ka, ay as Ha, az as Ga, aA as wa, aB as Ua, aC as ja, aD as Ka, aE as Ba, aF as Wa, aG as xa, aH as qa, aI as Qa, aJ as Va, aK as Ja, aL as Xa, aM as za, aN as Ya, aO as Za, aP as $a, aQ as ae, aR as ee, aS as se, aT as te, aU as re, aV as oe, aW as ie, aX as ne, aY as de, aZ as ce, a_ as le, a$ as me, b0 as Pe, b1 as Te, b2 as Ee, b3 as Se, b4 as he, b5 as Re, b6 as _e, b7 as Ie, b8 as Ce, b9 as Ne, ba as ge, bb as pe, bc as be, bd as Ae, be as fe, bf as ue, bg as Fe, bh as ve, bi as ye, bj as De, bk as Oe, bl as Le, bm as Me, bn as ke, bo as He, bp as Ge, bq as we, br as Ue, bs as je, bt as Ke, bu as Be, bv as We, bw as xe, bx as qe, by as Qe } from "../chunks/needs.CUNwDixH.js";
2
+ import { P as Je, a as Xe, c as ze, d as Ye, b as Ze, e as $e, f as as, g as es, h as ss, i as ts, j as rs, k as os, l as is, m as ns, n as ds, o as cs, p as ls, r as ms, q as Ps, s as Ts, t as Es, u as Ss, v as hs, w as Rs, x as _s } from "../chunks/daemon-state.Evil_jr0.js";
3
+ import { AGENT_IDS as Cs, AGENT_LABELS as Ns, AGENT_OPTIONS as gs, DEFAULT_AGENTS as ps, DEFAULT_NIGHT_CONFIG as bs, DEFAULT_NOTIFICATION_KINDS as As, MACHINE_NIGHT_PATH as fs, MACHINE_PAIR_CODE_PATH as us, MACHINE_PROJECTS_PATH as Fs, MACHINE_UPDATE_PATH as vs, NIGHT_CHECK_IDS as ys, NOTIFICATION_SETTING_KINDS as Ds, PAIRING_TOKEN_HEADER as Os, PLAN_KINDS as Ls, PLAN_STATUSES as Ms, TOOLBAR_SEGMENT_IDS as ks, agentConfigsEqual as Hs, coerceAgentConfig as Gs } from "../types/index.js";
4
4
  export {
5
- os as AGENT_IDS,
6
- ds as AGENT_LABELS,
7
- cs as AGENT_OPTIONS,
5
+ Cs as AGENT_IDS,
6
+ Ns as AGENT_LABELS,
7
+ gs as AGENT_OPTIONS,
8
8
  s as AlreadyInitializedError,
9
9
  t as COMMIT_SCOPES,
10
10
  r as COMMIT_SHA_RE,
11
- i as DAEMON_GITIGNORE_ENTRIES,
12
- ls as DEFAULT_AGENTS,
13
- ms as DEFAULT_NIGHT_CONFIG,
14
- Ss as DEFAULT_NOTIFICATION_KINDS,
15
- n as DOCTOR_CHECKS,
16
- o as DOCTOR_FIXERS,
11
+ o as DAEMON_GITIGNORE_ENTRIES,
12
+ ps as DEFAULT_AGENTS,
13
+ bs as DEFAULT_NIGHT_CONFIG,
14
+ As as DEFAULT_NOTIFICATION_KINDS,
15
+ i as DOCTOR_CHECKS,
16
+ n as DOCTOR_FIXERS,
17
17
  d as DOCTOR_RULES,
18
18
  c as DOCTOR_RULES_BY_ID,
19
- Ps as MACHINE_NIGHT_PATH,
20
- hs as MACHINE_PROJECTS_PATH,
21
- Es as MACHINE_UPDATE_PATH,
22
- l as MAX_TITLE_LENGTH,
23
- Ts as NIGHT_CHECK_IDS,
24
- Is as NOTIFICATION_SETTING_KINDS,
25
- Cs as PAIRING_TOKEN_HEADER,
26
- m as PAPER_CAMP_VERSION,
19
+ l as DRAFT_PR_TEMPLATE_VERSION,
20
+ m as DRAFT_PR_WORKFLOW_CONTENT,
21
+ P as DRAFT_PR_WORKFLOW_HEADER,
22
+ fs as MACHINE_NIGHT_PATH,
23
+ us as MACHINE_PAIR_CODE_PATH,
24
+ Fs as MACHINE_PROJECTS_PATH,
25
+ vs as MACHINE_UPDATE_PATH,
26
+ T as MAX_TITLE_LENGTH,
27
+ ys as NIGHT_CHECK_IDS,
28
+ Ds as NOTIFICATION_SETTING_KINDS,
29
+ Os as PAIRING_TOKEN_HEADER,
30
+ Je as PAIR_HINT,
31
+ E as PAPER_CAMP_VERSION,
27
32
  S as PHASE_MAX_FRACTION,
28
- P as PHASE_STALL_MS,
29
- gs as PLAN_KINDS,
30
- ps as PLAN_STATUSES,
31
- h as SKILL_MD_CONTENT,
32
- E as SUGGESTION_ENTRY_RE,
33
- Rs as TOOLBAR_SEGMENT_IDS,
34
- ke as addProject,
35
- T as addRoadmapCandidate,
36
- I as addRoadmapItem,
37
- C as advanceAnchor,
38
- g as agentConfigSchema,
39
- _s as agentConfigsEqual,
40
- p as agentThreadMessage,
41
- R as applyEnvEntries,
42
- _ as archiveEntityFile,
43
- N as assignEntityId,
44
- b as assignPlanId,
33
+ h as PHASE_STALL_MS,
34
+ Ls as PLAN_KINDS,
35
+ Ms as PLAN_STATUSES,
36
+ R as PULL_REQUEST_TEMPLATE_CONTENT,
37
+ _ as PULL_REQUEST_TEMPLATE_HEADER,
38
+ I as SKILL_MD_CONTENT,
39
+ C as SUGGESTION_ENTRY_RE,
40
+ ks as TOOLBAR_SEGMENT_IDS,
41
+ Xe as addProject,
42
+ N as addRoadmapCandidate,
43
+ g as addRoadmapItem,
44
+ p as advanceAnchor,
45
+ b as agentConfigSchema,
46
+ Hs as agentConfigsEqual,
47
+ A as agentThreadMessage,
48
+ f as applyEnvEntries,
49
+ u as archiveEntityFile,
50
+ F as assignEntityId,
51
+ v as assignPlanId,
45
52
  y as assignTicketId,
46
- A as branchName,
47
- u as buildClaudeSettingsJson,
48
- f as buildPermissionsAllow,
49
- v as buildSessionStartCommand,
50
- F as classifyAnchor,
51
- Ge as clearNightProject,
52
- D as clearPrCache,
53
- Ns as coerceAgentConfig,
54
- O as collectDoctorContext,
55
- L as collectParkedQuestions,
56
- M as computePlanContentHash,
57
- k as computePrTitle,
58
- G as createPrReview,
59
- He as daemonLogPath,
60
- we as daemonStatePath,
61
- H as dateString,
62
- je as defaultRegistryPath,
63
- w as derivePrLabels,
64
- j as deriveSubjectVocabulary,
65
- U as describeFindings,
66
- K as deskCheckSchema,
67
- B as deskCiSchema,
68
- x as deskConfigSchema,
69
- q as deskServiceSchema,
70
- W as detectPackageManager,
71
- J as dispatchPrReview,
72
- Q as ensureSubject,
73
- X as entitiesWithNewChangesRequested,
74
- z as entityFrontmatterKnownKeys,
75
- V as entityFrontmatterSchema,
76
- Y as entityToIdea,
77
- Z as entityToPlan,
78
- Ue as fetchMachineNightGate,
79
- Ke as fetchMachineProjects,
80
- $ as fetchPrDiff,
81
- aa as fetchUnresolvedThreads,
82
- ea as findArchivableIdeas,
83
- sa as findConsistencyIssues,
84
- ta as findReleaseLineForId,
85
- ra as findingSeverity,
86
- Be as formatDaemonLinks,
87
- xe as formatDaemonStatusLine,
88
- ia as formatEntityFile,
89
- na as formatIdeaFile,
90
- oa as formatPlanEntry,
91
- da as formatPlanFile,
92
- ca as formatReleaseNotesMarkdown,
93
- qe as formatUpdateStatusLine,
94
- la as getPrMapFetchedAt,
95
- ma as hasPaperCampDependency,
96
- Sa as ideaFrontmatterSchema,
97
- Pa as initProject,
98
- ha as isClosedEntity,
99
- Ea as isConventionalPrTitle,
100
- Ta as isPhaseStalled,
101
- We as isProcessAlive,
102
- Je as isProjectMissing,
103
- Ia as linkRoadmapItem,
104
- Qe as listProjects,
105
- Xe as loadRegistry,
106
- ze as machineConfigDir,
107
- Ca as medianSegmentMs,
108
- ga as mergeClaudeSettingsJson,
109
- pa as moveRoadmapItem,
110
- Ra as nightConfigSchema,
111
- _a as nightCustomCheckSchema,
112
- Na as nightWindowSchema,
113
- ba as notificationsConfigSchema,
114
- ya as paperCampConfigSchema,
115
- Aa as parseEntityFile,
116
- ua as parseEnv,
117
- fa as parseFrontmatter,
118
- va as parseIdeaFile,
119
- Fa as parseIdeas,
120
- Da as parseNotificationLog,
121
- Oa as parsePlanFile,
122
- La as parsePlans,
123
- Ma as parseRawEntries,
124
- ka as parseRoadmap,
125
- Ga as parseSuggestions,
126
- Ha as peekCachedPrs,
127
- wa as phaseFraction,
128
- ja as planDoctorFixes,
129
- Ua as planFieldsSchema,
130
- Ka as planFrontmatterSchema,
131
- Ve as probeMachineEndpoint,
132
- Ba as pushSubscribeBodySchema,
133
- xa as pushUnsubscribeBodySchema,
134
- Ye as qrEligibleLink,
135
- qa as readEntities,
136
- Wa as readEntitiesWithDerivedStatus,
137
- Ja as readFileMaybe,
138
- Qa as readNoteEntries,
139
- Xa as readParkedQuestions,
140
- Ze as readRunningDaemonState,
141
- za as readTaskLog,
142
- Va as readWorkEntries,
143
- $e as removeDaemonState,
144
- as as removeProject,
145
- Ya as removeRoadmapItem,
146
- Za as removeSuggestionLine,
147
- $a as renderConsistencyComment,
148
- ae as renderPlanPhasesIntoBody,
149
- ee as replyToReviewThread,
150
- se as reportFindings,
151
- te as resolveClosedIdeaQuestions,
152
- re as resolveEntityIdForCommit,
153
- ie as resolveEntityTrail,
154
- ne as resolveIdFromCommitMessage,
155
- oe as resolveIdeasForRelease,
156
- de as resolvePlanForPrRef,
157
- ce as resolvePrimaryScope,
158
- le as resolvePrsByEntity,
159
- me as resolveReleaseNotes,
160
- Se as resolveReleaseRanges,
161
- Pe as resolveReviewThread,
162
- he as resolveRoadmap,
163
- Ee as runDoctor,
164
- Te as runDoctorChecks,
165
- es as saveRegistry,
166
- Ie as scaffoldClaudeCodeIntegration,
167
- ss as scanForProjects,
168
- Ce as scoutReviewFooter,
169
- ge as serializeFrontmatter,
170
- ts as setNightPause,
171
- rs as setNightProject,
172
- pe as setRoadmapItemShipped,
173
- Re as sortFindings,
174
- _e as squashMergePr,
175
- Ne as storedNotificationSchema,
176
- be as syncConsistencyCommentToPr,
177
- ye as syncPlanPhasesToPr,
178
- Ae as syncPrLabelsToPr,
179
- ue as syncPrReadinessToPr,
180
- fe as syncPrTitleToPr,
181
- ve as todayDateString,
182
- Fe as unarchiveEntityFile,
183
- De as updateRoadmapItem,
184
- Oe as validatePrTitle,
185
- Le as webPushSubscriptionSchema,
186
- is as writeDaemonState
53
+ D as attachResolvedNeeds,
54
+ O as branchName,
55
+ L as buildClaudeSettingsJson,
56
+ M as buildPermissionsAllow,
57
+ k as buildSessionStartCommand,
58
+ H as checkNeedsForRun,
59
+ G as classifyAnchor,
60
+ ze as clearNightProject,
61
+ w as clearPrCache,
62
+ Gs as coerceAgentConfig,
63
+ U as collectDoctorContext,
64
+ j as collectParkedQuestions,
65
+ K as computeNeedsBlockedIds,
66
+ B as computePlanContentHash,
67
+ W as computePrTitle,
68
+ x as createPrReview,
69
+ Ye as daemonLogPath,
70
+ Ze as daemonStatePath,
71
+ q as dateString,
72
+ $e as defaultRegistryPath,
73
+ Q as derivePrLabels,
74
+ V as deriveSubjectVocabulary,
75
+ J as describeFindings,
76
+ X as deskCheckSchema,
77
+ z as deskCiSchema,
78
+ Y as deskConfigSchema,
79
+ Z as deskServiceSchema,
80
+ $ as detectPackageManager,
81
+ aa as dispatchPrReview,
82
+ ea as draftPrTemplateVersion,
83
+ sa as ensureSubject,
84
+ ta as entitiesWithNewChangesRequested,
85
+ ra as entityFrontmatterKnownKeys,
86
+ oa as entityFrontmatterSchema,
87
+ ia as entityToIdea,
88
+ na as entityToPlan,
89
+ as as fetchMachineNightGate,
90
+ es as fetchMachineProjects,
91
+ da as fetchPrDiff,
92
+ ca as fetchUnresolvedThreads,
93
+ la as findArchivableIdeas,
94
+ ma as findConsistencyIssues,
95
+ Pa as findReleaseLineForId,
96
+ Ta as findingSeverity,
97
+ ss as formatDaemonStatusLine,
98
+ ts as formatDaemonTailnetLine,
99
+ Ea as formatEntityFile,
100
+ Sa as formatIdeaFile,
101
+ ha as formatPlanEntry,
102
+ Ra as formatPlanFile,
103
+ _a as formatReleaseNotesMarkdown,
104
+ rs as formatUpdateStatusLine,
105
+ Ia as getPrMapFetchedAt,
106
+ Ca as hasBlockingNeed,
107
+ Na as hasPaperCampDependency,
108
+ ga as ideaFrontmatterSchema,
109
+ pa as initProject,
110
+ ba as isBlockingNeed,
111
+ Aa as isConventionalPrTitle,
112
+ fa as isPhaseStalled,
113
+ os as isProcessAlive,
114
+ is as isProjectMissing,
115
+ ua as linkRoadmapItem,
116
+ ns as listProjects,
117
+ ds as loadRegistry,
118
+ cs as machineConfigDir,
119
+ Fa as medianSegmentMs,
120
+ va as mergeClaudeSettingsJson,
121
+ ya as moveRoadmapItem,
122
+ Da as nightConfigSchema,
123
+ Oa as nightCustomCheckSchema,
124
+ La as nightWindowSchema,
125
+ Ma as notificationsConfigSchema,
126
+ ka as paperCampConfigSchema,
127
+ Ha as parseEntityFile,
128
+ Ga as parseEnv,
129
+ wa as parseFrontmatter,
130
+ Ua as parseIdeaFile,
131
+ ja as parseIdeas,
132
+ Ka as parseNeedsRef,
133
+ Ba as parseNotificationLog,
134
+ Wa as parsePlanFile,
135
+ xa as parsePlans,
136
+ qa as parseRawEntries,
137
+ Qa as parseRoadmap,
138
+ Va as parseSuggestions,
139
+ Ja as peekCachedPrs,
140
+ Xa as phaseFraction,
141
+ za as planDoctorFixes,
142
+ Ya as planFieldsSchema,
143
+ Za as planFrontmatterSchema,
144
+ ls as probeMachineEndpoint,
145
+ $a as pushSubscribeBodySchema,
146
+ ae as pushUnsubscribeBodySchema,
147
+ ee as readEntities,
148
+ se as readEntitiesWithDerivedStatus,
149
+ te as readFileMaybe,
150
+ re as readNoteEntries,
151
+ oe as readParkedQuestions,
152
+ ms as readRunningDaemonState,
153
+ ie as readTaskLog,
154
+ ne as readWorkEntries,
155
+ Ps as removeDaemonState,
156
+ Ts as removeProject,
157
+ de as removeRoadmapItem,
158
+ ce as removeSuggestionLine,
159
+ le as renderConsistencyComment,
160
+ me as renderPlanPhasesIntoBody,
161
+ Pe as replyToReviewThread,
162
+ Te as reportFindings,
163
+ Ee as resolveClosedIdeaQuestions,
164
+ Se as resolveEntityIdForCommit,
165
+ he as resolveEntityTrail,
166
+ Re as resolveIdFromCommitMessage,
167
+ _e as resolveIdeasForRelease,
168
+ Ie as resolveNeedsRefs,
169
+ Ce as resolvePlanForPrRef,
170
+ Ne as resolvePrimaryScope,
171
+ ge as resolvePrsByEntity,
172
+ pe as resolveReleaseNotes,
173
+ be as resolveReleaseRanges,
174
+ Ae as resolveReviewThread,
175
+ fe as resolveRoadmap,
176
+ ue as runDoctor,
177
+ Fe as runDoctorChecks,
178
+ Es as saveRegistry,
179
+ ve as scaffoldClaudeCodeIntegration,
180
+ ye as scaffoldDraftPrIntegration,
181
+ Ss as scanForProjects,
182
+ De as scoutReviewFooter,
183
+ Oe as serializeFrontmatter,
184
+ hs as setNightPause,
185
+ Rs as setNightProject,
186
+ Le as setRoadmapItemShipped,
187
+ Me as sortFindings,
188
+ ke as squashMergePr,
189
+ He as storedNotificationSchema,
190
+ Ge as syncConsistencyCommentToPr,
191
+ we as syncPlanPhasesToPr,
192
+ Ue as syncPrLabelsToPr,
193
+ je as syncPrReadinessToPr,
194
+ Ke as syncPrTitleToPr,
195
+ Be as todayDateString,
196
+ We as unarchiveEntityFile,
197
+ xe as updateRoadmapItem,
198
+ qe as validatePrTitle,
199
+ Qe as webPushSubscriptionSchema,
200
+ _s as writeDaemonState
187
201
  };
188
202
  //# sourceMappingURL=index.js.map
@@ -0,0 +1,4 @@
1
+ import { ResolvedNeed } from '../types/index';
2
+ export declare function isBlockingNeed(need: ResolvedNeed): boolean;
3
+ export declare function hasBlockingNeed(resolvedNeeds?: ResolvedNeed[]): boolean;
4
+ //# sourceMappingURL=needs-status.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"needs-status.d.ts","sourceRoot":"","sources":["../../src/core/needs-status.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAEnD,wBAAgB,cAAc,CAAC,IAAI,EAAE,YAAY,GAAG,OAAO,CAE1D;AAED,wBAAgB,eAAe,CAAC,aAAa,CAAC,EAAE,YAAY,EAAE,GAAG,OAAO,CAEvE"}