@dendelion/paper-camp 0.7.0 → 0.9.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 (107) hide show
  1. package/dist/app/assets/index-C0wWs5ba.js +2 -0
  2. package/dist/app/assets/index-C0wWs5ba.js.map +1 -0
  3. package/dist/app/assets/index-D-nmg_4I.js +2 -0
  4. package/dist/app/assets/index-D-nmg_4I.js.map +1 -0
  5. package/dist/app/assets/index-Djq8LvrZ.js +3 -0
  6. package/dist/app/assets/index-Djq8LvrZ.js.map +1 -0
  7. package/dist/app/assets/main-BA1w2y_E.css +1 -0
  8. package/dist/app/assets/main-DUy5DFoq.js +218 -0
  9. package/dist/app/assets/main-DUy5DFoq.js.map +1 -0
  10. package/dist/app/assets/sidebar-section-mXpllayv.js +2 -0
  11. package/dist/app/assets/sidebar-section-mXpllayv.js.map +1 -0
  12. package/dist/app/img/paper-logo.png +0 -0
  13. package/dist/app/img/paper-logo.svg +7 -0
  14. package/dist/app/index.html +7 -3
  15. package/dist/app/manifest.json +13 -0
  16. package/dist/chunks/{serializer.DiYtNSka.js → serializer.DqcFa2e1.js} +1778 -1397
  17. package/dist/chunks/serializer.DqcFa2e1.js.map +1 -0
  18. package/dist/cli/index.js +6743 -6301
  19. package/dist/cli/index.js.map +1 -1
  20. package/dist/core/env.d.ts +0 -5
  21. package/dist/core/env.d.ts.map +1 -1
  22. package/dist/core/git-pr/branch.d.ts +4 -0
  23. package/dist/core/git-pr/branch.d.ts.map +1 -0
  24. package/dist/core/git-pr/index.d.ts +4 -0
  25. package/dist/core/git-pr/index.d.ts.map +1 -0
  26. package/dist/core/git-pr/pr-lookup.d.ts +16 -0
  27. package/dist/core/git-pr/pr-lookup.d.ts.map +1 -0
  28. package/dist/core/git-pr/pr.d.ts +25 -0
  29. package/dist/core/git-pr/pr.d.ts.map +1 -0
  30. package/dist/core/{pr.test.d.ts.map → git-pr/pr.test.d.ts.map} +1 -1
  31. package/dist/core/git-pr/scopes.d.ts +2 -0
  32. package/dist/core/git-pr/scopes.d.ts.map +1 -0
  33. package/dist/core/index.d.ts +3 -3
  34. package/dist/core/index.d.ts.map +1 -1
  35. package/dist/core/index.js +77 -55
  36. package/dist/core/parse/entity.test.d.ts.map +1 -0
  37. package/dist/core/parse/frontmatter-schemas.d.ts +3 -0
  38. package/dist/core/parse/frontmatter-schemas.d.ts.map +1 -0
  39. package/dist/core/parse/frontmatter.test.d.ts.map +1 -0
  40. package/dist/core/parse/index.d.ts +3 -0
  41. package/dist/core/parse/index.d.ts.map +1 -0
  42. package/dist/core/parse/parser.d.ts +22 -0
  43. package/dist/core/parse/parser.d.ts.map +1 -0
  44. package/dist/core/parse/parser.test.d.ts.map +1 -0
  45. package/dist/core/parse/schemas.d.ts.map +1 -0
  46. package/dist/core/readers.d.ts +0 -19
  47. package/dist/core/readers.d.ts.map +1 -1
  48. package/dist/core/scaffold/index.d.ts +3 -0
  49. package/dist/core/scaffold/index.d.ts.map +1 -0
  50. package/dist/core/{scaffold.d.ts → scaffold/scaffold.d.ts} +0 -6
  51. package/dist/core/scaffold/scaffold.d.ts.map +1 -0
  52. package/dist/core/scaffold/scaffold.test.d.ts.map +1 -0
  53. package/dist/core/{templates.d.ts → scaffold/templates.d.ts} +0 -6
  54. package/dist/core/scaffold/templates.d.ts.map +1 -0
  55. package/dist/core/serialize/content-hash.d.ts +8 -0
  56. package/dist/core/serialize/content-hash.d.ts.map +1 -0
  57. package/dist/core/serialize/content-hash.test.d.ts.map +1 -0
  58. package/dist/core/serialize/index.d.ts +3 -0
  59. package/dist/core/serialize/index.d.ts.map +1 -0
  60. package/dist/core/{serializer.d.ts → serialize/serializer.d.ts} +2 -50
  61. package/dist/core/serialize/serializer.d.ts.map +1 -0
  62. package/dist/core/status/index.d.ts +2 -0
  63. package/dist/core/status/index.d.ts.map +1 -0
  64. package/dist/core/status/status.d.ts +8 -0
  65. package/dist/core/status/status.d.ts.map +1 -0
  66. package/dist/core/status/status.test.d.ts.map +1 -0
  67. package/dist/img/paper-logo.png +0 -0
  68. package/dist/img/paper-logo.svg +7 -0
  69. package/dist/manifest.json +13 -0
  70. package/dist/types/index.d.ts +36 -9
  71. package/dist/types/index.d.ts.map +1 -1
  72. package/dist/types/index.js.map +1 -1
  73. package/package.json +7 -2
  74. package/dist/app/assets/main-5JSkR2Qf.js +0 -182
  75. package/dist/app/assets/main-5JSkR2Qf.js.map +0 -1
  76. package/dist/app/assets/main-B8HU5n_F.css +0 -1
  77. package/dist/chunks/serializer.DiYtNSka.js.map +0 -1
  78. package/dist/core/branch.d.ts +0 -8
  79. package/dist/core/branch.d.ts.map +0 -1
  80. package/dist/core/content-hash.d.ts +0 -14
  81. package/dist/core/content-hash.d.ts.map +0 -1
  82. package/dist/core/content-hash.test.d.ts.map +0 -1
  83. package/dist/core/entity.test.d.ts.map +0 -1
  84. package/dist/core/frontmatter-schemas.d.ts +0 -11
  85. package/dist/core/frontmatter-schemas.d.ts.map +0 -1
  86. package/dist/core/frontmatter.test.d.ts.map +0 -1
  87. package/dist/core/parser.d.ts +0 -45
  88. package/dist/core/parser.d.ts.map +0 -1
  89. package/dist/core/parser.test.d.ts.map +0 -1
  90. package/dist/core/pr.d.ts +0 -27
  91. package/dist/core/pr.d.ts.map +0 -1
  92. package/dist/core/scaffold.d.ts.map +0 -1
  93. package/dist/core/scaffold.test.d.ts.map +0 -1
  94. package/dist/core/schemas.d.ts.map +0 -1
  95. package/dist/core/serializer.d.ts.map +0 -1
  96. package/dist/core/status.d.ts +0 -27
  97. package/dist/core/status.d.ts.map +0 -1
  98. package/dist/core/status.test.d.ts.map +0 -1
  99. package/dist/core/templates.d.ts.map +0 -1
  100. /package/dist/core/{pr.test.d.ts → git-pr/pr.test.d.ts} +0 -0
  101. /package/dist/core/{entity.test.d.ts → parse/entity.test.d.ts} +0 -0
  102. /package/dist/core/{frontmatter.test.d.ts → parse/frontmatter.test.d.ts} +0 -0
  103. /package/dist/core/{parser.test.d.ts → parse/parser.test.d.ts} +0 -0
  104. /package/dist/core/{schemas.d.ts → parse/schemas.d.ts} +0 -0
  105. /package/dist/core/{scaffold.test.d.ts → scaffold/scaffold.test.d.ts} +0 -0
  106. /package/dist/core/{content-hash.test.d.ts → serialize/content-hash.test.d.ts} +0 -0
  107. /package/dist/core/{status.test.d.ts → status/status.test.d.ts} +0 -0
@@ -1,8 +0,0 @@
1
- /**
2
- * Feature-branch name for an entity, matching the `kind/id-slug` convention
3
- * that `branchEntityId`/`getFeatureBranchPlanId` parse back out. Shared so
4
- * branch creation (`ensureBranch`) and PR resolution (`resolvePrMerged`)
5
- * target the exact same name.
6
- */
7
- export declare function branchName(id: string | undefined, type: string | undefined, title: string): string | undefined;
8
- //# sourceMappingURL=branch.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"branch.d.ts","sourceRoot":"","sources":["../../src/core/branch.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,wBAAgB,UAAU,CACxB,EAAE,EAAE,MAAM,GAAG,SAAS,EACtB,IAAI,EAAE,MAAM,GAAG,SAAS,EACxB,KAAK,EAAE,MAAM,GACZ,MAAM,GAAG,SAAS,CAQpB"}
@@ -1,14 +0,0 @@
1
- import { PhaseItem } from '../types/index';
2
- interface PlanContentInput {
3
- body: string;
4
- phases: PhaseItem[];
5
- }
6
- /**
7
- * Hashes a plan's meaningful content (phases + body prose), deliberately
8
- * ignoring `audited`/`audited-hash` and any other metadata so that
9
- * stamping the audit fields never changes the hash of the content it
10
- * describes.
11
- */
12
- export declare function computePlanContentHash(plan: PlanContentInput): string;
13
- export {};
14
- //# sourceMappingURL=content-hash.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"content-hash.d.ts","sourceRoot":"","sources":["../../src/core/content-hash.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAEhD,UAAU,gBAAgB;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,SAAS,EAAE,CAAC;CACrB;AAED;;;;;GAKG;AACH,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,gBAAgB,GAAG,MAAM,CAWrE"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"content-hash.test.d.ts","sourceRoot":"","sources":["../../src/core/content-hash.test.ts"],"names":[],"mappings":""}
@@ -1 +0,0 @@
1
- {"version":3,"file":"entity.test.d.ts","sourceRoot":"","sources":["../../src/core/entity.test.ts"],"names":[],"mappings":""}
@@ -1,11 +0,0 @@
1
- /**
2
- * Re-exports from `schemas.ts` for backwards compatibility.
3
- *
4
- * This file is referenced by `papercamp/about.md` as the "single source of truth"
5
- * for the frontmatter format. Keeping it as a thin barrel means existing docs/links
6
- * don't break while the actual schemas live alongside their field-based counterparts
7
- * in one file.
8
- */
9
- export { dateString, planFrontmatterSchema, ideaFrontmatterSchema, } from './schemas';
10
- export type { PlanFrontmatter, IdeaFrontmatter } from './schemas';
11
- //# sourceMappingURL=frontmatter-schemas.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"frontmatter-schemas.d.ts","sourceRoot":"","sources":["../../src/core/frontmatter-schemas.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,OAAO,EACL,UAAU,EACV,qBAAqB,EACrB,qBAAqB,GACtB,MAAM,WAAW,CAAC;AACnB,YAAY,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"frontmatter.test.d.ts","sourceRoot":"","sources":["../../src/core/frontmatter.test.ts"],"names":[],"mappings":""}
@@ -1,45 +0,0 @@
1
- import { z } from 'zod';
2
- import { ConsistencyIssue, DecisionEntry, EntityEntry, IdeaEntry, OpenQuestionEntry, ParseResult, ParseWarning, PlanEntry, ProgressEntry, RawEntry } from '../types/index';
3
- export declare function parseRawEntries(markdown: string): RawEntry[];
4
- export declare function parsePlans(markdown: string): ParseResult<PlanEntry>;
5
- export declare function parseDecisions(markdown: string): ParseResult<DecisionEntry>;
6
- export declare function parseOpenQuestions(markdown: string): ParseResult<OpenQuestionEntry>;
7
- /**
8
- * Extracts and validates YAML frontmatter from a markdown string.
9
- * Returns the parsed data + body without warnings on success.
10
- * Returns partial data + warnings when frontmatter is absent, malformed,
11
- * or fails schema validation — never throws.
12
- */
13
- export declare function parseFrontmatter<T>(content: string, schema: z.ZodType<T>): {
14
- data: T | null;
15
- body: string;
16
- warnings: ParseWarning[];
17
- };
18
- /**
19
- * Parse a single per-plan file with YAML frontmatter.
20
- * The body after frontmatter is scanned for ### Phases and ### Log sections,
21
- * same as the monolithic parser.
22
- */
23
- /**
24
- * Parses a unified entity file (FEAT-42 phases 7+): one file per entity — an
25
- * "idea" for its whole life, plan as an optional `### Phases` body section.
26
- * Same body pipeline as parsePlanFile (Phases/Log/Clarifications extraction);
27
- * the frontmatter differs: `type` instead of `kind`, no `idea:` backlink, and
28
- * the note/status asymmetry from the idea schema folded in.
29
- */
30
- export declare function parseEntityFile(content: string): ParseResult<EntityEntry>;
31
- export declare function parsePlanFile(content: string): ParseResult<PlanEntry>;
32
- /**
33
- * Parse a single per-idea file with YAML frontmatter.
34
- */
35
- export declare function parseIdeaFile(content: string): ParseResult<IdeaEntry>;
36
- /** ideas.md is split into sections by `---` separators. Each section has an optional
37
- * `## IDEA-N:` heading prefix followed by a short title, and a prose body. */
38
- export declare function parseIdeas(markdown: string): IdeaEntry[];
39
- /** Read-only cross-reference checks over already-parsed decisions/open-questions/plans —
40
- * dangling `resolved-by`/`superseded-by` titles, and open questions blocking an
41
- * already-active plan. */
42
- export declare function findConsistencyIssues(decisions: DecisionEntry[], openQuestions: OpenQuestionEntry[], plans: PlanEntry[]): ConsistencyIssue[];
43
- /** progress.md is an append-only date log, not a record-based file — no fields, no validation. */
44
- export declare function parseProgress(markdown: string): ProgressEntry[];
45
- //# sourceMappingURL=parser.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"parser.d.ts","sourceRoot":"","sources":["../../src/core/parser.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAC7B,OAAO,KAAK,EACV,gBAAgB,EAChB,aAAa,EACb,WAAW,EACX,SAAS,EAET,iBAAiB,EACjB,WAAW,EACX,YAAY,EAEZ,SAAS,EACT,aAAa,EACb,QAAQ,EACT,MAAM,gBAAgB,CAAC;AAuHxB,wBAAgB,eAAe,CAAC,QAAQ,EAAE,MAAM,GAAG,QAAQ,EAAE,CAwC5D;AAED,wBAAgB,UAAU,CAAC,QAAQ,EAAE,MAAM,GAAG,WAAW,CAAC,SAAS,CAAC,CAqCnE;AAED,wBAAgB,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,WAAW,CAAC,aAAa,CAAC,CAwB3E;AAED,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,MAAM,GAAG,WAAW,CAAC,iBAAiB,CAAC,CAyBnF;AAQD;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,CAAC,EAChC,OAAO,EAAE,MAAM,EACf,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GACnB;IAAE,IAAI,EAAE,CAAC,GAAG,IAAI,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,YAAY,EAAE,CAAA;CAAE,CAyC5D;AAED;;;;GAIG;AACH;;;;;;GAMG;AACH,wBAAgB,eAAe,CAAC,OAAO,EAAE,MAAM,GAAG,WAAW,CAAC,WAAW,CAAC,CA+CzE;AAED,wBAAgB,aAAa,CAAC,OAAO,EAAE,MAAM,GAAG,WAAW,CAAC,SAAS,CAAC,CAwCrE;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,OAAO,EAAE,MAAM,GAAG,WAAW,CAAC,SAAS,CAAC,CAuBrE;AAMD;8EAC8E;AAC9E,wBAAgB,UAAU,CAAC,QAAQ,EAAE,MAAM,GAAG,SAAS,EAAE,CAYxD;AAED;;0BAE0B;AAC1B,wBAAgB,qBAAqB,CACnC,SAAS,EAAE,aAAa,EAAE,EAC1B,aAAa,EAAE,iBAAiB,EAAE,EAClC,KAAK,EAAE,SAAS,EAAE,GACjB,gBAAgB,EAAE,CA0CpB;AAKD,kGAAkG;AAClG,wBAAgB,aAAa,CAAC,QAAQ,EAAE,MAAM,GAAG,aAAa,EAAE,CAwB/D"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"parser.test.d.ts","sourceRoot":"","sources":["../../src/core/parser.test.ts"],"names":[],"mappings":""}
package/dist/core/pr.d.ts DELETED
@@ -1,27 +0,0 @@
1
- import { PrInfo, ReviewThread } from '../types/index';
2
- /**
3
- * Cache window for the resolved PR set — long enough that a worklist read doesn't
4
- * re-shell out to `gh` on every request, short enough that a merge or state
5
- * change shows up within the same working session.
6
- */
7
- export declare const PR_CACHE_TTL_MS: number;
8
- /**
9
- * Per-comment detail for a PR's unresolved review threads, for the fix-review
10
- * launch path (`POST /api/agent/launch-fix-review`) to hand to
11
- * `buildFixReviewPrompt`. Each thread is represented by its first comment, since
12
- * that's the one that states what needs fixing. Best-effort: resolves `[]` on
13
- * any failure so a launch with no readable threads falls back to
14
- * `buildFixReviewPrompt`'s own empty-threads guard rather than erroring out.
15
- */
16
- export declare function fetchUnresolvedThreads(root: string, url: string): Promise<ReviewThread[]>;
17
- /**
18
- * Every PR in the repo indexed by the entity id it references, resolved via a
19
- * single `gh pr list` and cached for `ttlMs` — see IDEA-56's PR-driven status
20
- * derivation. `undefined` when the lookup can't resolve at all (no `gh`, not
21
- * authenticated, offline, no GitHub remote); callers fall back to stored status.
22
- * An entity simply absent from the returned map has no PR (a confirmed answer).
23
- */
24
- export declare function resolvePrsByEntity(root: string, ttlMs?: number): Promise<Map<string, PrInfo> | undefined>;
25
- /** Test-only: clears the module-level PR cache between test cases. */
26
- export declare function clearPrCache(): void;
27
- //# sourceMappingURL=pr.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"pr.d.ts","sourceRoot":"","sources":["../../src/core/pr.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAAkB,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAW3E;;;;GAIG;AACH,eAAO,MAAM,eAAe,QAAgB,CAAC;AAkM7C;;;;;;;GAOG;AACH,wBAAsB,sBAAsB,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC,CAiB/F;AAoED;;;;;;GAMG;AACH,wBAAsB,kBAAkB,CACtC,IAAI,EAAE,MAAM,EACZ,KAAK,SAAkB,GACtB,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,SAAS,CAAC,CAS1C;AAED,sEAAsE;AACtE,wBAAgB,YAAY,IAAI,IAAI,CAEnC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"scaffold.d.ts","sourceRoot":"","sources":["../../src/core/scaffold.ts"],"names":[],"mappings":"AAMA,eAAO,MAAM,kBAAkB,UAAU,CAAC;AAE1C,qBAAa,uBAAwB,SAAQ,KAAK;gBACpC,SAAS,EAAE,MAAM;CAG9B;AAaD,MAAM,WAAW,WAAW;IAC1B,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;;;;GAKG;AACH,wBAAsB,WAAW,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CA2CxF"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"scaffold.test.d.ts","sourceRoot":"","sources":["../../src/core/scaffold.test.ts"],"names":[],"mappings":""}
@@ -1 +0,0 @@
1
- {"version":3,"file":"schemas.d.ts","sourceRoot":"","sources":["../../src/core/schemas.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,eAAO,MAAM,iBAAiB;;;;;;;kBAO7B,CAAC;AAEF,eAAO,MAAM,UAAU,aAAiE,CAAC;AAQzF,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;iBAS3B,CAAC;AAEH,eAAO,MAAM,oBAAoB;;;;;;;iBAI/B,CAAC;AAEH,eAAO,MAAM,wBAAwB;;;;;;;;iBAKnC,CAAC;AAYH,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAmBhC,CAAC;AAEH,eAAO,MAAM,qBAAqB;;;;;;;;;;;;iBAgB9B,CAAC;AASL,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBA+ChC,CAAC;AAEL,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBA0BhC,CAAC;AAEH,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAC1D,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAClE,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAC;AAC1E,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AACpE,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AACpE,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"serializer.d.ts","sourceRoot":"","sources":["../../src/core/serializer.ts"],"names":[],"mappings":"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"}
@@ -1,27 +0,0 @@
1
- import { EntityStatus, PhaseItem, PrInfo } from '../types/index';
2
- /** The subset of an entity's shape the status ladder needs to look at. */
3
- export interface StatusDerivationInput {
4
- kind?: 'note';
5
- status?: EntityStatus;
6
- phases: PhaseItem[];
7
- }
8
- /**
9
- * Derives lifecycle status from the entity's phases and its GitHub PR instead of
10
- * trusting the stored `status` field, so it can't drift from reality — see
11
- * IDEA-56. Tracking keys off the PR (matched by id), not a local branch: the PR
12
- * is canonical across clones and survives the branch being deleted after merge.
13
- *
14
- * Ladder: idea (no phases) -> planned (phases, no PR) -> in-progress (PR open or
15
- * draft) -> review (PR open/draft AND every phase checked) -> done (PR merged).
16
- * A closed-unmerged PR reads as `dropped`. `dropped` can never be derived
17
- * (abandonment leaves no trace), so a stored `dropped` always passes through;
18
- * notes track open/done/dropped by hand and pass through unchanged.
19
- *
20
- * `pr` is the entity's resolved PR, or `undefined` when it has none / the lookup
21
- * couldn't run. `prLookupResolved` says which: `false` (no `gh`, offline) falls
22
- * the PR-backed rungs back to the stored override or a phases-only `planned`;
23
- * `true` with no PR is a confirmed "no PR", so it derives `planned`/`idea` (a
24
- * stored terminal `done` from an unmatchable legacy PR is still trusted).
25
- */
26
- export declare function deriveStatus(entity: StatusDerivationInput, pr: PrInfo | undefined, prLookupResolved: boolean): EntityStatus | undefined;
27
- //# sourceMappingURL=status.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"status.d.ts","sourceRoot":"","sources":["../../src/core/status.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AAEtE,0EAA0E;AAC1E,MAAM,WAAW,qBAAqB;IACpC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,YAAY,CAAC;IACtB,MAAM,EAAE,SAAS,EAAE,CAAC;CACrB;AAMD;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,YAAY,CAC1B,MAAM,EAAE,qBAAqB,EAC7B,EAAE,EAAE,MAAM,GAAG,SAAS,EACtB,gBAAgB,EAAE,OAAO,GACxB,YAAY,GAAG,SAAS,CAgB1B"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"status.test.d.ts","sourceRoot":"","sources":["../../src/core/status.test.ts"],"names":[],"mappings":""}
@@ -1 +0,0 @@
1
- {"version":3,"file":"templates.d.ts","sourceRoot":"","sources":["../../src/core/templates.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,eAAO,MAAM,gBAAgB,0pIA2E5B,CAAC;AAIF,eAAO,MAAM,oBAAoB,QAmB5B,CAAC"}
File without changes
File without changes