@agent-plan/core 0.2.25 → 0.2.27

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/description-freshness.d.ts +37 -0
  2. package/dist/description-freshness.d.ts.map +1 -0
  3. package/dist/description-freshness.js +84 -0
  4. package/dist/display-status.d.ts +3 -3
  5. package/dist/display-status.d.ts.map +1 -1
  6. package/dist/display-status.js +5 -4
  7. package/dist/handoff-context.d.ts +222 -1
  8. package/dist/handoff-context.d.ts.map +1 -1
  9. package/dist/handoff-context.js +461 -11
  10. package/dist/index.d.ts +8 -1
  11. package/dist/index.d.ts.map +1 -1
  12. package/dist/index.js +8 -1
  13. package/dist/naming.d.ts +3 -0
  14. package/dist/naming.d.ts.map +1 -1
  15. package/dist/naming.js +7 -0
  16. package/dist/package-version.d.ts +2 -0
  17. package/dist/package-version.d.ts.map +1 -1
  18. package/dist/package-version.js +1 -1
  19. package/dist/payload-fallback.d.ts +38 -0
  20. package/dist/payload-fallback.d.ts.map +1 -0
  21. package/dist/payload-fallback.js +79 -0
  22. package/dist/plan-store.d.ts +192 -36
  23. package/dist/plan-store.d.ts.map +1 -1
  24. package/dist/plan-store.js +1048 -126
  25. package/dist/planner-rules.d.ts.map +1 -1
  26. package/dist/planner-rules.js +9 -3
  27. package/dist/planner-skill.d.ts +24 -0
  28. package/dist/planner-skill.d.ts.map +1 -0
  29. package/dist/planner-skill.js +113 -0
  30. package/dist/project-context-migration.d.ts +47 -0
  31. package/dist/project-context-migration.d.ts.map +1 -0
  32. package/dist/project-context-migration.js +168 -0
  33. package/dist/read-tracking.d.ts +47 -13
  34. package/dist/read-tracking.d.ts.map +1 -1
  35. package/dist/read-tracking.js +88 -33
  36. package/dist/recap.d.ts.map +1 -1
  37. package/dist/recap.js +34 -9
  38. package/dist/refs.d.ts +6 -1
  39. package/dist/refs.d.ts.map +1 -1
  40. package/dist/refs.js +25 -0
  41. package/dist/renderer.d.ts.map +1 -1
  42. package/dist/renderer.js +24 -2
  43. package/dist/requirement-macro-tasks.d.ts +18 -0
  44. package/dist/requirement-macro-tasks.d.ts.map +1 -0
  45. package/dist/requirement-macro-tasks.js +55 -0
  46. package/dist/runtime-diagnostics.d.ts +34 -0
  47. package/dist/runtime-diagnostics.d.ts.map +1 -0
  48. package/dist/runtime-diagnostics.js +39 -0
  49. package/dist/schema.d.ts +1575 -290
  50. package/dist/schema.d.ts.map +1 -1
  51. package/dist/schema.js +89 -4
  52. package/dist/task-context.d.ts +41 -2
  53. package/dist/task-context.d.ts.map +1 -1
  54. package/dist/task-context.js +102 -4
  55. package/dist/task-selection.d.ts +44 -1
  56. package/dist/task-selection.d.ts.map +1 -1
  57. package/dist/task-selection.js +158 -7
  58. package/dist/task-start-outcome.d.ts +1 -1
  59. package/dist/task-start-outcome.d.ts.map +1 -1
  60. package/dist/task-start-outcome.js +1 -0
  61. package/dist/write-coordination.d.ts +27 -0
  62. package/dist/write-coordination.d.ts.map +1 -0
  63. package/dist/write-coordination.js +223 -0
  64. package/package.json +3 -1
  65. package/planner-skill.md +226 -0
  66. package/skills/grill-me/SKILL.md +10 -0
@@ -18,7 +18,7 @@ export function packageVersionFromModule(moduleUrlOrPath, expectedName) {
18
18
  if (typeof manifest.version !== "string" || !manifest.version.trim()) {
19
19
  throw new Error(`Package ${expectedName} has no valid version in ${manifestPath}.`);
20
20
  }
21
- return { name: expectedName, version: manifest.version };
21
+ return { name: expectedName, version: manifest.version, packageJsonPath: manifestPath };
22
22
  }
23
23
  }
24
24
  const parent = dirname(current);
@@ -0,0 +1,38 @@
1
+ export type PlannerPayloadEntity = "project" | "feature" | "phase" | "task" | "requirement" | "idea" | "acceptedDecision";
2
+ export type PlannerPayloadOperation = "update" | "discuss";
3
+ export type PlannerPayloadFailureCode = "NO_MUTABLE_FIELDS_RECEIVED" | "DESCRIPTION_MARKDOWN_FALLBACK_REQUIRED";
4
+ export interface DescriptionFallbackInput {
5
+ entityId?: string;
6
+ inputField: string;
7
+ storedField: string;
8
+ descriptionRefField: string;
9
+ }
10
+ export interface NoMutableFieldsReceivedInput {
11
+ entity: PlannerPayloadEntity;
12
+ ref: string;
13
+ operation: PlannerPayloadOperation;
14
+ mutableFields: readonly string[];
15
+ retryCommand: string;
16
+ readBackCommand?: string;
17
+ descriptionFallback?: DescriptionFallbackInput;
18
+ }
19
+ export interface NoMutableFieldsReceivedResult {
20
+ updated: false;
21
+ discussed?: false;
22
+ reason: "no-mutable-fields";
23
+ errorCode: PlannerPayloadFailureCode;
24
+ suspectedLongTextPayloadLoss: boolean;
25
+ entity: PlannerPayloadEntity;
26
+ ref: string;
27
+ operation: PlannerPayloadOperation;
28
+ mutableFields: string[];
29
+ fallbackDocPath?: string;
30
+ fallbackDescriptionTemplate?: string;
31
+ nextActions: string[];
32
+ message: string;
33
+ }
34
+ export declare function normalizeDescriptionRef(value: string | undefined): string | undefined;
35
+ export declare function isPlannerDescriptionRef(value: string): boolean;
36
+ export declare function suggestedDescriptionRefPath(entity: PlannerPayloadEntity, entityId?: string): string;
37
+ export declare function noMutableFieldsReceived(input: NoMutableFieldsReceivedInput): NoMutableFieldsReceivedResult;
38
+ //# sourceMappingURL=payload-fallback.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"payload-fallback.d.ts","sourceRoot":"","sources":["../src/payload-fallback.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,oBAAoB,GAAG,SAAS,GAAG,SAAS,GAAG,OAAO,GAAG,MAAM,GAAG,aAAa,GAAG,MAAM,GAAG,kBAAkB,CAAC;AAC1H,MAAM,MAAM,uBAAuB,GAAG,QAAQ,GAAG,SAAS,CAAC;AAC3D,MAAM,MAAM,yBAAyB,GAAG,4BAA4B,GAAG,wCAAwC,CAAC;AAEhH,MAAM,WAAW,wBAAwB;IACvC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,mBAAmB,EAAE,MAAM,CAAC;CAC7B;AAED,MAAM,WAAW,4BAA4B;IAC3C,MAAM,EAAE,oBAAoB,CAAC;IAC7B,GAAG,EAAE,MAAM,CAAC;IACZ,SAAS,EAAE,uBAAuB,CAAC;IACnC,aAAa,EAAE,SAAS,MAAM,EAAE,CAAC;IACjC,YAAY,EAAE,MAAM,CAAC;IACrB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,mBAAmB,CAAC,EAAE,wBAAwB,CAAC;CAChD;AAED,MAAM,WAAW,6BAA6B;IAC5C,OAAO,EAAE,KAAK,CAAC;IACf,SAAS,CAAC,EAAE,KAAK,CAAC;IAClB,MAAM,EAAE,mBAAmB,CAAC;IAC5B,SAAS,EAAE,yBAAyB,CAAC;IACrC,4BAA4B,EAAE,OAAO,CAAC;IACtC,MAAM,EAAE,oBAAoB,CAAC;IAC7B,GAAG,EAAE,MAAM,CAAC;IACZ,SAAS,EAAE,uBAAuB,CAAC;IACnC,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,2BAA2B,CAAC,EAAE,MAAM,CAAC;IACrC,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,CAGrF;AAED,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAO9D;AAED,wBAAgB,2BAA2B,CAAC,MAAM,EAAE,oBAAoB,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,CAiBnG;AAED,wBAAgB,uBAAuB,CACrC,KAAK,EAAE,4BAA4B,GAClC,6BAA6B,CAgD/B"}
@@ -0,0 +1,79 @@
1
+ export function normalizeDescriptionRef(value) {
2
+ const trimmed = value?.trim();
3
+ return trimmed ? trimmed : undefined;
4
+ }
5
+ export function isPlannerDescriptionRef(value) {
6
+ if (!value.startsWith(".planner/docs/"))
7
+ return false;
8
+ if (value.includes("\\") || value.includes("\0"))
9
+ return false;
10
+ const parts = value.split("/");
11
+ if (parts.length < 4)
12
+ return false;
13
+ if (parts[0] !== ".planner" || parts[1] !== "docs")
14
+ return false;
15
+ return parts.slice(2).every((part) => part.length > 0 && part !== "." && part !== "..");
16
+ }
17
+ export function suggestedDescriptionRefPath(entity, entityId) {
18
+ switch (entity) {
19
+ case "project":
20
+ return ".planner/docs/project/description.md";
21
+ case "feature":
22
+ return `.planner/docs/features/${entityId ?? "feature"}.md`;
23
+ case "phase":
24
+ return `.planner/docs/phases/${entityId ?? "phase"}.md`;
25
+ case "task":
26
+ return `.planner/docs/tasks/${entityId ?? "task"}.md`;
27
+ case "requirement":
28
+ return `.planner/docs/requirements/${entityId ?? "requirement"}.md`;
29
+ case "idea":
30
+ return `.planner/docs/ideas/${entityId ?? "idea"}.md`;
31
+ case "acceptedDecision":
32
+ return `.planner/docs/accepted-decisions/${entityId ?? "accepted-decision"}.md`;
33
+ }
34
+ }
35
+ export function noMutableFieldsReceived(input) {
36
+ const mutableFields = [...input.mutableFields];
37
+ const fallbackDocPath = input.descriptionFallback
38
+ ? suggestedDescriptionRefPath(input.entity, input.descriptionFallback.entityId)
39
+ : undefined;
40
+ const nextActions = input.descriptionFallback && fallbackDocPath
41
+ ? [
42
+ `Create a committed markdown file at ${fallbackDocPath} containing the full intended ${input.descriptionFallback.storedField}.`,
43
+ `Retry ${input.retryCommand} with a concise ${input.descriptionFallback.inputField} summary and ${input.descriptionFallback.descriptionRefField} set to ${fallbackDocPath}.`,
44
+ ...(input.readBackCommand
45
+ ? [`Read back ${input.readBackCommand} and confirm the summary plus ${input.descriptionFallback.descriptionRefField} survived.`]
46
+ : []),
47
+ "Continue only after the read-back confirms the markdown reference persisted.",
48
+ ]
49
+ : [
50
+ `Retry ${input.retryCommand} with at least one mutable field: ${mutableFields.join(", ")}.`,
51
+ ];
52
+ const fallbackDescriptionTemplate = fallbackDocPath
53
+ ? `Concise summary here. Full description is stored in ${fallbackDocPath}.`
54
+ : undefined;
55
+ const message = [
56
+ "Not updated — no mutable fields were received.",
57
+ "No planner data was changed.",
58
+ input.descriptionFallback
59
+ ? `If you attempted to send a long ${input.descriptionFallback.inputField}, it may have exceeded the tool payload limit before reaching the planner.`
60
+ : `Provide at least one mutable field for this ${input.operation} operation.`,
61
+ "Next required actions:",
62
+ ...nextActions.map((action, index) => `${index + 1}. ${action}`),
63
+ ].join("\n");
64
+ return {
65
+ updated: false,
66
+ ...(input.operation === "discuss" ? { discussed: false } : {}),
67
+ reason: "no-mutable-fields",
68
+ errorCode: input.descriptionFallback ? "DESCRIPTION_MARKDOWN_FALLBACK_REQUIRED" : "NO_MUTABLE_FIELDS_RECEIVED",
69
+ suspectedLongTextPayloadLoss: Boolean(input.descriptionFallback),
70
+ entity: input.entity,
71
+ ref: input.ref,
72
+ operation: input.operation,
73
+ mutableFields,
74
+ ...(fallbackDocPath ? { fallbackDocPath } : {}),
75
+ ...(fallbackDescriptionTemplate ? { fallbackDescriptionTemplate } : {}),
76
+ nextActions,
77
+ message,
78
+ };
79
+ }
@@ -1,7 +1,10 @@
1
- import { z } from "zod";
2
- import { type Feature, type FeaturesDocument, type Manifest, type Phase, type Task, type TaskPauseSnapshot, type PlanWorkspace, type Project, type RequirementsDocument, type Requirement, type ActivityEntry, type ActivityLog, type CodebaseProfile, type ResumeFocus, type WorkDeviation } from "./schema.js";
1
+ import { type Feature, type FeaturesDocument, type Manifest, type Phase, type Task, type Subtask, type TaskPauseSnapshot, type PlanWorkspace, type Project, type AcceptedDecision, type RequirementsDocument, type Requirement, type Idea, type IdeasDocument, type IdeaPromotionTargetType, type ActivityEntry, type ActivityLog, type CodebaseProfile, type ResumeFocus, type WorkDeviation } from "./schema.js";
3
2
  import { type ParentDisplay } from "./display-status.js";
4
- import { type PhaseHandoffAudit, type RefreshPhaseHandoffInput, type RefreshPhaseHandoffResult } from "./handoff-context.js";
3
+ import { type HierarchicalDescriptionFreshness } from "./description-freshness.js";
4
+ import { type PlannerSkillSyncResult } from "./planner-skill.js";
5
+ import { type LegacyProjectContextMigrationPreview, type LegacyProjectContextMigrationResult, type PlannerSessionPreparationResult } from "./project-context-migration.js";
6
+ import { type PhaseHandoffAudit, type RefreshPhaseHandoffInput, type RefreshPhaseHandoffResult, type VerifyPhaseHandoffReadBackInput, type VerifyPhaseHandoffReadBackResult } from "./handoff-context.js";
7
+ import { type AllocationKind } from "./runtime-diagnostics.js";
5
8
  export interface RecordContextReadInput {
6
9
  sessionId: string;
7
10
  phaseId: string;
@@ -16,6 +19,44 @@ export interface RecordContextReadResult {
16
19
  requirements: Requirement[];
17
20
  createdAt: string;
18
21
  }
22
+ export interface IdeaCreateInput {
23
+ title: string;
24
+ description?: string;
25
+ }
26
+ export interface IdeaUpdateInput {
27
+ title?: string;
28
+ description?: string;
29
+ }
30
+ export interface IdeaPromotionTargetInput {
31
+ targetType: IdeaPromotionTargetType;
32
+ targetId: string;
33
+ promotedAt?: string;
34
+ }
35
+ export type AcceptedDecisionOwner = {
36
+ kind: "project";
37
+ } | {
38
+ kind: "feature";
39
+ featureId: string;
40
+ } | {
41
+ kind: "phase";
42
+ phaseId: string;
43
+ } | {
44
+ kind: "task";
45
+ phaseId: string;
46
+ taskId: string;
47
+ };
48
+ export interface AcceptedDecisionCreateInput {
49
+ title: string;
50
+ decision?: string;
51
+ rationale?: string;
52
+ implementationNotes?: string;
53
+ }
54
+ export interface AcceptedDecisionUpdateInput {
55
+ title?: string;
56
+ decision?: string;
57
+ rationale?: string;
58
+ implementationNotes?: string;
59
+ }
19
60
  export interface PlanStoreErrorDetails {
20
61
  path?: string;
21
62
  operation?: string;
@@ -38,13 +79,27 @@ export declare class PlanStoreError extends Error {
38
79
  readonly details?: PlanStoreErrorDetails | undefined;
39
80
  constructor(message: string, cause?: unknown | undefined, details?: PlanStoreErrorDetails | undefined);
40
81
  }
82
+ export interface PlanStaleWriteDetails extends PlanStoreErrorDetails {
83
+ errorCode: "PLAN_STALE_WRITE";
84
+ entity: "project" | "feature" | "phase" | "task" | "requirement" | "idea";
85
+ entityId: string;
86
+ expectedUpdatedAt: string;
87
+ actualUpdatedAt: string;
88
+ }
89
+ /** Optimistic-concurrency failure for a mutation based on an obsolete entity
90
+ * snapshot. Callers must reload, reapply only the intended fields, and retry. */
91
+ export declare class PlanStaleWriteError extends PlanStoreError {
92
+ readonly details: PlanStaleWriteDetails;
93
+ readonly code = "PLAN_STALE_WRITE";
94
+ constructor(details: PlanStaleWriteDetails);
95
+ }
96
+ export declare function assertPlannerRevision(entity: PlanStaleWriteDetails["entity"], entityId: string, expectedUpdatedAt: string | undefined, actualUpdatedAt: string): void;
97
+ export declare class PlanUnsupportedAllocationKindError extends PlanStoreError {
98
+ readonly code = "PLAN_UNSUPPORTED_ALLOCATION_KIND";
99
+ constructor(kind: string);
100
+ }
41
101
  export declare function setWriteBusyHook(hook: ((busy: boolean) => void) | undefined): void;
42
102
  export declare function setWriteNotifyHook(hook: (() => void) | undefined): void;
43
- /** Allocation registry is deliberately outside the versioned plan. Git worktrees
44
- * share their common git dir, so reservations are serialized across branches
45
- * without rewriting project.json or unrelated planner entities. */
46
- declare const AllocationKindSchema: z.ZodEnum<["feature", "phase", "task"]>;
47
- type AllocationKind = z.infer<typeof AllocationKindSchema>;
48
103
  export declare function withFeatureLock<T>(featureId: string, fn: () => Promise<T>): Promise<T>;
49
104
  /** Summary of a phase that has a non-empty pending handoff, for the
50
105
  * listHandoffs() API. Completed/canceled phases are never returned here. */
@@ -58,9 +113,17 @@ export interface PhaseHandoffSummary {
58
113
  updatedAt: string;
59
114
  /** First non-empty line of the handoff, leading markdown headers stripped, ~80 chars. */
60
115
  firstLine: string;
61
- /** Full handoff content (phase.handoff) lets the /handoff viewer render
62
- * inline without a per-phase fetch. */
63
- content: string;
116
+ /** Full content is omitted by default so agent list transports stay bounded.
117
+ * Request includeContent only for trusted UI/API consumers. */
118
+ content?: string | undefined;
119
+ auditVersion: number | null;
120
+ contentLength: number;
121
+ contentHash: string;
122
+ /** Structural write-time validation timestamp. */
123
+ verifiedAt: string;
124
+ /** True only after separate persisted read-back/source reconciliation. */
125
+ resumeReady: boolean;
126
+ resumeReadyAt: string;
64
127
  }
65
128
  /** Summary of an archived handoff. The content remains recoverable under
66
129
  * `.planner/.local/handoff-archive/` but is not part of the active handoff
@@ -126,9 +189,9 @@ export declare class PlanStore {
126
189
  private runAsBatch;
127
190
  /** Public batch wrapper used by the module-level migrateToUuids helper. */
128
191
  runBatchForMigration<T>(fn: () => Promise<T>): Promise<T>;
129
- /** Public batch wrapper: suspend autoSync (status rollup) for a sequence of
130
- * writes. Use for priority-only reorders so they don't recompute phase/feature
131
- * status (a reorder must not flip a partially-done feature to in-progress). */
192
+ /** Public root-scoped write transaction. It serializes the whole sequence
193
+ * across processes and suspends autoSync for nested writes. Use for composite
194
+ * mutations and priority reorders that must not be interleaved. */
132
195
  runBatch<T>(fn: () => Promise<T>): Promise<T>;
133
196
  private maybeAutoSync;
134
197
  private normalizeTasks;
@@ -138,6 +201,7 @@ export declare class PlanStore {
138
201
  * Legacy entities cannot reveal their historical description-edit time, so
139
202
  * their creation time is the earliest truthful fallback. */
140
203
  private stampDescriptionUpdatedAt;
204
+ private stampProjectGuidelinesUpdatedAt;
141
205
  private normalizeFeaturesDocument;
142
206
  private normalizePhaseDocument;
143
207
  private normalizeStructureSnapshot;
@@ -159,6 +223,7 @@ export declare class PlanStore {
159
223
  private manifestPath;
160
224
  private projectPath;
161
225
  private requirementsPath;
226
+ private ideasPath;
162
227
  private featuresPath;
163
228
  private featuresDir;
164
229
  private featurePath;
@@ -197,6 +262,16 @@ export declare class PlanStore {
197
262
  * worktrees/branches.
198
263
  */
199
264
  extensionRules(): Promise<string[]>;
265
+ /**
266
+ * Create or safely refresh the project-local planner usage skill. Explicit
267
+ * planner-load surfaces call this so unmodified managed copies follow the
268
+ * installed Agent Plan version while project customizations are preserved.
269
+ */
270
+ syncPlannerSkill(): Promise<PlannerSkillSyncResult>;
271
+ /** Safely create or refresh the project-local grill-me skill for Ideas. */
272
+ syncGrillMeSkill(): Promise<PlannerSkillSyncResult>;
273
+ /** Load grill-me instructions only when an Ideas discussion requests them. */
274
+ ideaDiscussionSkill(): Promise<string>;
200
275
  /** Idempotently ensure `.planner/.gitignore` ignores `.local/` (and the
201
276
  * canonical transient/derived patterns). Projects initialized before the
202
277
  * `.local/` move either have no `.planner/.gitignore` or one with stale
@@ -213,7 +288,7 @@ export declare class PlanStore {
213
288
  * Worktrees in the same clone share `.git/agent-plan/allocations`, guarded by
214
289
  * the same cross-process lock used for atomic writes. The registry reserves
215
290
  * numbers/short IDs before an entity file is written, so parallel branches
216
- * cannot allocate the same F/P/T or shortId. Existing entities are never
291
+ * cannot allocate the same F/P/T/I or shortId. Existing entities are never
217
292
  * rewritten; cross-clone coordination requires a shared allocator service.
218
293
  */
219
294
  allocateEntityIdentity(kind: AllocationKind, entityId: string): Promise<{
@@ -225,6 +300,7 @@ export declare class PlanStore {
225
300
  allocFeatureNumber(): Promise<number>;
226
301
  allocPhaseNumber(): Promise<number>;
227
302
  allocTaskNumber(): Promise<number>;
303
+ allocIdeaNumber(): Promise<number>;
228
304
  private allocateLegacyNumber;
229
305
  loadPhase(phaseId: string): Promise<Phase>;
230
306
  /** Read raw feature files WITHOUT the derived `status` field. Used
@@ -252,6 +328,7 @@ export declare class PlanStore {
252
328
  /** Derive an up-to-date resume focus from the current workspace state. */
253
329
  refreshResume(notes?: string, lastSessionSummary?: string): Promise<ResumeFocus>;
254
330
  loadRequirements(): Promise<RequirementsDocument>;
331
+ loadIdeas(): Promise<IdeasDocument>;
255
332
  linkedRequirementsForPhase(phaseId: string): Promise<Requirement[]>;
256
333
  /** Requirements linked to any phase belonging to a feature, deduplicated by ID. */
257
334
  linkedRequirementsForFeature(featureId: string): Promise<Requirement[]>;
@@ -270,6 +347,11 @@ export declare class PlanStore {
270
347
  * time, then mapped via fromCanonicalStatus). Pure, non-persisting. */
271
348
  loadFeatureDisplay(featureId: string): Promise<ParentDisplay>;
272
349
  loadAll(): Promise<PlanWorkspace>;
350
+ /**
351
+ * Preview child-to-parent description drift without rewriting user-authored
352
+ * feature or phase prose. Callers decide whether to reconcile each parent.
353
+ */
354
+ previewDescriptionReconciliation(): Promise<HierarchicalDescriptionFreshness>;
273
355
  /** Migrate legacy non-feature-scoped phase ids to feature-scoped ids and repair
274
356
  * dangling feature.phaseIds references. Idempotent. */
275
357
  migratePhaseIds(): Promise<{
@@ -335,30 +417,59 @@ export declare class PlanStore {
335
417
  danglingPhaseIds: string[];
336
418
  duplicateShortIds: string[];
337
419
  }>;
338
- /** A handoff remains active while any task needs work. Its automatic end-of-
339
- * phase lifecycle is deliberately narrower than canonical display status:
340
- * every task must be done or canceled (not merely derived "rejected"). */
341
- private hasCompletedHandoffLifecycle;
420
+ /** Return the archive reason for a canonical terminal phase outcome. Handoff
421
+ * lifecycle follows the derived phase status, so rejected tasks cannot leave
422
+ * an operational handoff active or merely hidden from the active list. */
423
+ private terminalHandoffReason;
342
424
  private derivePhaseStatus;
343
425
  private deriveFeatureStatus;
344
426
  syncStatuses(): Promise<string[]>;
345
- /** Auto-clear a phase's handoff only when every task is terminal as done or
346
- * canceled. This covers an all-canceled phase too, whose legacy canonical
347
- * derived status is "rejected". Returns the composite ref when cleared. */
427
+ /** Auto-clear a phase's handoff for every canonical terminal derived status.
428
+ * Returns the composite ref when an active handoff was archived. */
348
429
  syncTaskStatusRollup(phaseId: string): Promise<string | null>;
349
- updateProject(updater: (p: Project) => Project): Promise<Project>;
430
+ updateProject(updater: (p: Project) => Project, options?: {
431
+ expectedGuidelinesUpdatedAt?: string;
432
+ }): Promise<Project>;
433
+ /** Preview the explicit, lossless migration from legacy project rule and
434
+ * decision fields into Project Guidelines and structured accepted decisions. */
435
+ previewLegacyProjectContextMigration(): Promise<LegacyProjectContextMigrationPreview>;
436
+ /** Prepare an explicit planner session before recap/context delivery.
437
+ * Ordinary entity reads remain non-mutating. */
438
+ preparePlannerSession(): Promise<PlannerSessionPreparationResult>;
439
+ /** Apply and verify the legacy project-context migration. Callers must invoke
440
+ * this only from an explicit preparation or compatibility-recovery flow. */
441
+ migrateLegacyProjectContext(): Promise<LegacyProjectContextMigrationResult>;
350
442
  /** Persist an explicitly approved work deviation without coupling it to a harness. */
351
443
  addWorkDeviation(deviation: WorkDeviation): Promise<Project>;
352
444
  /** Advance a deviation while retaining its complete audit and return stack. */
353
445
  setWorkDeviationState(id: string, state: "active" | "resume-required" | "resolved" | "resumed" | "canceled", timestamp?: string): Promise<Project>;
354
446
  updateFeatures(updater: (f: FeaturesDocument) => FeaturesDocument): Promise<FeaturesDocument>;
447
+ /** Field-scoped feature mutation against the lock-reloaded canonical document. */
448
+ updateFeature(featureId: string, updater: (feature: Feature) => Feature, options?: {
449
+ expectedUpdatedAt?: string;
450
+ }): Promise<Feature>;
355
451
  updateRequirements(updater: (r: RequirementsDocument) => RequirementsDocument): Promise<RequirementsDocument>;
452
+ /** Field-scoped requirement mutation against the lock-reloaded canonical document. */
453
+ updateRequirement(requirementId: string, updater: (requirement: Requirement) => Requirement, options?: {
454
+ expectedUpdatedAt?: string;
455
+ }): Promise<Requirement>;
456
+ private ensureIdeasFileForWrite;
457
+ updateIdeas(updater: (ideas: IdeasDocument) => IdeasDocument): Promise<IdeasDocument>;
458
+ createIdea(input: IdeaCreateInput, timestamp?: string): Promise<Idea>;
459
+ updateIdea(ideaId: string, input: IdeaUpdateInput, timestamp?: string): Promise<Idea>;
460
+ deleteIdea(ideaId: string): Promise<boolean>;
461
+ private resolveIdeaPromotionTarget;
462
+ promoteIdea(ideaId: string, input: IdeaPromotionTargetInput): Promise<Idea>;
356
463
  /**
357
464
  * Persist completion of one full task → phase → feature → requirements read
358
465
  * sequence. Session metadata is deliberately the only changed entity field:
359
466
  * semantic updatedAt/descriptionUpdatedAt values are preserved exactly.
360
467
  */
361
468
  recordContextRead(input: RecordContextReadInput): Promise<RecordContextReadResult>;
469
+ recordProjectGuidelinesRead(input: {
470
+ sessionId: string;
471
+ createdAt?: string;
472
+ }): Promise<Project>;
362
473
  saveProject(project: Project): Promise<void>;
363
474
  saveFeatures(features: FeaturesDocument): Promise<void>;
364
475
  /** Per-file write of all features + orphan reconcile. No lock (caller holds withFeaturesLock). */
@@ -366,17 +477,57 @@ export declare class PlanStore {
366
477
  /** Granular single-feature write (per-file lock; parallel-safe across features). */
367
478
  saveFeature(feature: Feature): Promise<void>;
368
479
  saveRequirements(reqs: RequirementsDocument): Promise<void>;
369
- savePhase(phase: Phase): Promise<void>;
480
+ saveIdeas(ideas: IdeasDocument): Promise<void>;
481
+ savePhase(phase: Phase, options?: {
482
+ expectedUpdatedAt?: string;
483
+ }): Promise<void>;
370
484
  /** Atomic read-modify-write on a single phase file. Serializes concurrent
371
485
  * task_create / phase_update calls on the SAME phaseId so batch operations
372
486
  * don't lose tasks (last-write-wins race condition). */
373
- updatePhase(phaseId: string, updater: (phase: Phase) => Phase): Promise<Phase>;
487
+ updatePhase(phaseId: string, updater: (phase: Phase) => Phase, options?: {
488
+ expectedUpdatedAt?: string;
489
+ }): Promise<Phase>;
490
+ /** Field-scoped task mutation against the lock-reloaded canonical phase. */
491
+ updateTask(phaseId: string, taskId: string, updater: (task: Task) => Task, options?: {
492
+ expectedUpdatedAt?: string;
493
+ }): Promise<{
494
+ phase: Phase;
495
+ task: Task;
496
+ }>;
497
+ createAcceptedDecision(owner: AcceptedDecisionOwner, input: AcceptedDecisionCreateInput, acceptedAt?: string): Promise<AcceptedDecision>;
498
+ updateAcceptedDecision(owner: AcceptedDecisionOwner, decisionId: string, input: AcceptedDecisionUpdateInput): Promise<AcceptedDecision>;
499
+ deleteAcceptedDecision(owner: AcceptedDecisionOwner, decisionId: string): Promise<AcceptedDecision>;
374
500
  /** Save a durable resume checkpoint without introducing a separate canonical task status. */
375
501
  pauseTask(phaseId: string, taskId: string, input: TaskPauseSnapshot): Promise<Task>;
376
502
  /** Resume a checkpointed task without resetting its original startedAt. */
377
- resumeTask(phaseId: string, taskId: string, timestamp?: string): Promise<Task>;
503
+ resumeTask(phaseId: string, taskId: string, timestamp?: string, ownerSessionId?: string): Promise<Task>;
504
+ /** Reopen a completed task atomically without changing any other task.
505
+ * Completion evidence remains in the description and status log; completedAt is
506
+ * cleared because the task is once again active work. */
507
+ reopenTask(phaseId: string, taskId: string, options: {
508
+ confirmed: boolean;
509
+ ownerSessionId?: string;
510
+ timestamp?: string;
511
+ }): Promise<Task>;
512
+ /** Add a validated dependency edge from one task to another. */
513
+ addTaskDependency(phaseId: string, taskId: string, dependencyId: string, timestamp?: string): Promise<Task>;
514
+ /** Remove a dependency edge without affecting either task. */
515
+ deleteTaskDependency(phaseId: string, taskId: string, dependencyId: string): Promise<Task>;
516
+ /** Create a planner-owned subtask with a stable ID under a task. */
517
+ createSubtask(phaseId: string, taskId: string, input: {
518
+ title: string;
519
+ description?: string;
520
+ status?: Subtask["status"];
521
+ }, timestamp?: string): Promise<Subtask>;
522
+ /** Update a subtask by its parent task and planner-owned ID. */
523
+ updateSubtask(phaseId: string, taskId: string, subtaskId: string, input: Partial<Pick<Subtask, "title" | "description" | "status">>, timestamp?: string): Promise<Subtask>;
524
+ /** Delete a subtask by its planner-owned ID. */
525
+ deleteSubtask(phaseId: string, taskId: string, subtaskId: string): Promise<void>;
526
+ /** Reorder subtasks without changing their stable identities. */
527
+ reorderSubtasks(phaseId: string, taskId: string, orderedIds: string[]): Promise<Subtask[]>;
378
528
  /** Get the handoff text for a phase ("" if none). Throws if phase missing. */
379
529
  getPhaseHandoff(phaseId: string): Promise<string>;
530
+ private validateHandoffSupportingDocuments;
380
531
  /** Audit one exact phase before preparing a handoff refresh. */
381
532
  preparePhaseHandoff(phaseId: string): Promise<PhaseHandoffAudit>;
382
533
  /** Refresh the single active handoff and synchronize durable task/phase/feature
@@ -384,9 +535,12 @@ export declare class PlanStore {
384
535
  * previous active body: callers must reconcile it using the optimistic
385
536
  * handoffUpdatedAt token returned by preparePhaseHandoff(). */
386
537
  refreshPhaseHandoff(phaseId: string, input: RefreshPhaseHandoffInput): Promise<RefreshPhaseHandoffResult>;
387
- /** Set the handoff text for a phase + stamp handoffUpdatedAt. A completed or
388
- * canceled phase cannot receive a new operational handoff. Replacing an
389
- * existing handoff archives the previous content as `superseded` first. */
538
+ /** Mark a persisted handoff resume-ready only after a separate full read-back
539
+ * has reconciled every required source and found no omissions. */
540
+ verifyPhaseHandoffReadBack(phaseId: string, input: VerifyPhaseHandoffReadBackInput): Promise<VerifyPhaseHandoffReadBackResult>;
541
+ /** Set the handoff text for a phase + stamp handoffUpdatedAt. A terminal
542
+ * phase cannot receive a new operational handoff. Replacing an existing
543
+ * handoff archives the previous content as `superseded` first. */
390
544
  setPhaseHandoff(phaseId: string, text: string): Promise<void>;
391
545
  /** Mark the phase handoff as read/acknowledged on recap (sets handoffReadAt).
392
546
  * Does NOT clear it: read/load/show are non-mutating resume operations. */
@@ -407,16 +561,19 @@ export declare class PlanStore {
407
561
  * metadata entry { file, clearedAt, reason } is prepended to handoffHistory
408
562
  * (capped at 5; oldest file is deleted when trimmed). handoffUpdatedAt is
409
563
  * left unchanged as an audit trail. If the handoff is empty, this is a no-op.
410
- * reason: "phase-done" | "manual" | "superseded" | "imported". */
564
+ * reason: "phase-done" | "phase-rejected" | "phase-canceled" |
565
+ * "manual" | "superseded" | "imported". */
411
566
  clearPhaseHandoff(phaseId: string, reason?: string): Promise<void>;
412
- /** Archive stale handoffs only after every task in their phase is done or
413
- * canceled. Idempotent: only non-empty phase.handoff values are moved. */
567
+ /** Archive stale handoffs for every canonical terminal phase outcome.
568
+ * Idempotent: only non-empty phase.handoff values are moved. */
414
569
  private archiveStaleHandoffs;
415
570
  /** Public maintenance operation for retroactively archiving stale handoffs. */
416
571
  cleanupStaleHandoffs(): Promise<number>;
417
572
  /** List only active/pending phase handoffs, newest first. Handoffs from
418
- * phases where every task is done/canceled are archived before returning. */
419
- listHandoffs(): Promise<PhaseHandoffSummary[]>;
573
+ * canonically terminal phases are archived before returning. */
574
+ listHandoffs(options?: {
575
+ includeContent?: boolean;
576
+ }): Promise<PhaseHandoffSummary[]>;
420
577
  /** List recoverable archived handoffs from phase.handoffHistory. Archived
421
578
  * entries are never returned by listHandoffs() and are safe to show on a
422
579
  * dedicated history page. */
@@ -433,7 +590,7 @@ export declare class PlanStore {
433
590
  * per P043). Leaving either behind would RESURRECT the deleted phase on the
434
591
  * next read, since readJson falls back to both locations. */
435
592
  private unlinkPhaseFiles;
436
- /** Load the full workspace (manifest + phases + project + requirements + features) */
593
+ /** Load the full workspace, including the rollup-independent Ideas Inbox. */
437
594
  loadWorkspace(): Promise<PlanWorkspace>;
438
595
  /** Load all data, render markdown, and write into generated/. Skips files
439
596
  * whose content is unchanged to avoid unnecessary backup churn. */
@@ -441,5 +598,4 @@ export declare class PlanStore {
441
598
  /** Update .local/timestamp.json to reflect a change. */
442
599
  private touchTimestamp;
443
600
  }
444
- export {};
445
601
  //# sourceMappingURL=plan-store.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"plan-store.d.ts","sourceRoot":"","sources":["../src/plan-store.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,CAAC,EAAY,MAAM,KAAK,CAAC;AAclC,OAAO,EAGL,KAAK,OAAO,EACZ,KAAK,gBAAgB,EAGrB,KAAK,QAAQ,EAEb,KAAK,KAAK,EACV,KAAK,IAAI,EACT,KAAK,iBAAiB,EAEtB,KAAK,aAAa,EAElB,KAAK,OAAO,EAEZ,KAAK,oBAAoB,EACzB,KAAK,WAAW,EAKhB,KAAK,aAAa,EAClB,KAAK,WAAW,EAChB,KAAK,eAAe,EACpB,KAAK,WAAW,EAChB,KAAK,aAAa,EAEnB,MAAM,aAAa,CAAC;AAErB,OAAO,EAA4C,KAAK,aAAa,EAAuB,MAAM,qBAAqB,CAAC;AAExH,OAAO,EAGL,KAAK,iBAAiB,EACtB,KAAK,wBAAwB,EAC7B,KAAK,yBAAyB,EAC/B,MAAM,sBAAsB,CAAC;AAQ9B,MAAM,WAAW,sBAAsB;IACrC,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAC1B,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,uBAAuB;IACtC,KAAK,EAAE,KAAK,CAAC;IACb,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,YAAY,EAAE,WAAW,EAAE,CAAC;IAC5B,SAAS,EAAE,MAAM,CAAC;CACnB;AA2CD,MAAM,WAAW,qBAAqB;IACpC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,cAAc,CAAC,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IACrE,gBAAgB,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;IACvD,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAED,qBAAa,cAAe,SAAQ,KAAK;aAGrB,KAAK,CAAC,EAAE,OAAO;aACf,OAAO,CAAC,EAAE,qBAAqB;gBAF/C,OAAO,EAAE,MAAM,EACC,KAAK,CAAC,EAAE,OAAO,YAAA,EACf,OAAO,CAAC,EAAE,qBAAqB,YAAA;CAKlD;AAeD,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC,GAAG,SAAS,GAAG,IAAI,CAElF;AAKD,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,CAAC,MAAM,IAAI,CAAC,GAAG,SAAS,GAAG,IAAI,CAEvE;AAKD;;mEAEmE;AACnE,QAAA,MAAM,oBAAoB,yCAAuC,CAAC;AAWlE,KAAK,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AA+E3D,wBAAgB,eAAe,CAAC,CAAC,EAAE,SAAS,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAUtF;AA8ED;4EAC4E;AAC5E,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,MAAM,CAAC;IAChB,sEAAsE;IACtE,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC/B,iEAAiE;IACjE,YAAY,EAAE,MAAM,CAAC;IACrB,iEAAiE;IACjE,SAAS,EAAE,MAAM,CAAC;IAClB,yFAAyF;IACzF,SAAS,EAAE,MAAM,CAAC;IAClB;4CACwC;IACxC,OAAO,EAAE,MAAM,CAAC;CACjB;AAED;;WAEW;AACX,MAAM,WAAW,2BAA2B;IAC1C,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC/B,YAAY,EAAE,MAAM,CAAC;IACrB,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED;;;UAGU;AACV,MAAM,WAAW,kBAAkB;IACjC,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC/B,OAAO,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC7B,YAAY,EAAE,MAAM,CAAC;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;CAChB;AASD,wBAAsB,cAAc,CAAC,KAAK,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,CAsEpE;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAsB,uBAAuB,CAAC,KAAK,EAAE,SAAS,GAAG,OAAO,CAAC;IAAE,QAAQ,EAAE,OAAO,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,CAAC,CAyE/I;AAgHD,qBAAa,SAAS;;IACpB,SAAgB,IAAI,EAAE,MAAM,CAAC;IAC7B,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,SAAS,CAAS;IAO1B,OAAO,CAAC,eAAe,CAAS;gBAEpB,IAAI,EAAE,MAAM;IAIxB;;4EAEwE;IACxE,cAAc,CAAC,KAAK,EAAE,OAAO,GAAG,IAAI;IAEpC;;;2BAGuB;YACT,UAAU;IAUxB,2EAA2E;IACrE,oBAAoB,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;IAI/D;;oFAEgF;IAC1E,QAAQ,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;YAIrC,aAAa;IAK3B,OAAO,CAAC,cAAc;IA2BtB,OAAO,CAAC,oBAAoB;YAId,2BAA2B;IAazC;;gEAE4D;IAC5D,OAAO,CAAC,yBAAyB;IAYjC,OAAO,CAAC,yBAAyB;IAQjC,OAAO,CAAC,sBAAsB;IAiB9B,OAAO,CAAC,0BAA0B;IA+D5B,uBAAuB,IAAI,OAAO,CAAC;QAAE,OAAO,EAAE,OAAO,CAAA;KAAE,CAAC;IAkB9D;;;;;;mDAM+C;IACzC,kBAAkB,IAAI,OAAO,CAAC;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;IAgCvF,OAAO,CAAC,YAAY;IAGpB,OAAO,CAAC,WAAW;IAGnB,OAAO,CAAC,gBAAgB;IAGxB,OAAO,CAAC,YAAY;IAGpB,OAAO,CAAC,WAAW;IAGnB,OAAO,CAAC,WAAW;IAGnB,OAAO,CAAC,gBAAgB;IAMxB;;gFAE4E;YAC9D,aAAa;IAa3B,OAAO,CAAC,SAAS;IAGjB,OAAO,CAAC,SAAS;IAGjB,OAAO,CAAC,YAAY;IAGpB,OAAO,CAAC,YAAY;IAGpB,OAAO,CAAC,UAAU;IAGlB,OAAO,CAAC,YAAY;IAGpB,OAAO,CAAC,SAAS;IAMjB,OAAO,CAAC,cAAc;IAItB;0FACsF;YACxE,kBAAkB;YAQlB,kBAAkB;IAIhC,OAAO,CAAC,aAAa;IAGrB,OAAO,CAAC,UAAU;IAGlB,OAAO,CAAC,MAAM;IAGd,OAAO,CAAC,iBAAiB;IAIzB;;wEAEoE;YACtD,sBAAsB;YActB,yBAAyB;YAezB,2BAA2B;IAiBnC,IAAI,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAwG9C;;;;;OAKG;IACG,cAAc,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;IAIzC;;;;gFAI4E;IACtE,eAAe,IAAI,OAAO,CAAC,OAAO,CAAC;IAiBnC,MAAM,IAAI,OAAO,CAAC,OAAO,CAAC;IAWhC;oFACgF;IAC1E,YAAY,IAAI,OAAO,CAAC,QAAQ,CAAC;IAMjC,WAAW,IAAI,OAAO,CAAC,OAAO,CAAC;IAgBrC;;;;;;;OAOG;IACG,sBAAsB,CAAC,IAAI,EAAE,cAAc,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC;IAwClH;8EAC0E;IACpE,kBAAkB,IAAI,OAAO,CAAC,MAAM,CAAC;IACrC,gBAAgB,IAAI,OAAO,CAAC,MAAM,CAAC;IACnC,eAAe,IAAI,OAAO,CAAC,MAAM,CAAC;YAC1B,oBAAoB;IAO5B,SAAS,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC;IAMhD;;0BAEsB;YACR,eAAe;IAqCvB,YAAY,IAAI,OAAO,CAAC,gBAAgB,CAAC;IAUzC,mBAAmB,IAAI,OAAO,CAAC,eAAe,GAAG,IAAI,CAAC;IAQtD,mBAAmB,CAAC,OAAO,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC;IAM5D,UAAU,IAAI,OAAO,CAAC,WAAW,GAAG,IAAI,CAAC;IASzC,UAAU,CAAC,MAAM,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;IAiBpD;;;;;OAKG;IACG,oBAAoB,CAAC,eAAe,SAAK,GAAG,OAAO,CAAC,MAAM,CAAC;IAmBjE,qCAAqC;IAC/B,gBAAgB,IAAI,OAAO,CAAC,IAAI,CAAC;IAQvC,kEAAkE;IAC5D,eAAe,IAAI,OAAO,CAAC,OAAO,CAAC;IAQnC,eAAe,IAAI,OAAO,CAAC,WAAW,CAAC;IASvC,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC;IAaxF,0EAA0E;IACpE,aAAa,CAAC,KAAK,CAAC,EAAE,MAAM,EAAE,kBAAkB,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC;IAsBhF,gBAAgB,IAAI,OAAO,CAAC,oBAAoB,CAAC;IAQjD,0BAA0B,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;IAKzE,mFAAmF;IAC7E,4BAA4B,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;IAMvE,yBAAyB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,GAAG;QAAE,kBAAkB,EAAE,WAAW,EAAE,CAAA;KAAE,CAAC;IAQlG,6BAA6B,IAAI,OAAO,CAAC,KAAK,CAAC,KAAK,GAAG;QAAE,kBAAkB,EAAE,WAAW,EAAE,CAAA;KAAE,CAAC,CAAC;IAW9F,aAAa,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;IA0BvC;0CACsC;IAChC,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC;IAM/D;;4EAEwE;IAClE,kBAAkB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC;IAQ7D,OAAO,IAAI,OAAO,CAAC,aAAa,CAAC;IAavC;4DACwD;IAClD,eAAe,IAAI,OAAO,CAAC;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,CAAC;IAiEzF;;;;;OAKG;IACG,oBAAoB,IAAI,OAAO,CAAC;QAAE,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC;IA0C1D;mFAC+E;IACzE,gBAAgB,IAAI,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IAY9C;;;qEAGiE;IAC3D,YAAY,CAAC,IAAI,EAAE,SAAS,GAAG,OAAO,GAAG,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAmB1F;;sFAEkF;IAC5E,yBAAyB,IAAI,OAAO,CAAC;QACzC,gBAAgB,EAAE,MAAM,CAAC;QACzB,kBAAkB,EAAE,MAAM,CAAC;QAC3B,iBAAiB,EAAE,MAAM,EAAE,CAAC;KAC7B,CAAC;IAuFF,gFAAgF;IAC1E,MAAM,IAAI,OAAO,CAAC;QACtB,QAAQ,EAAE;YAAE,OAAO,EAAE,MAAM,CAAC;YAAC,QAAQ,EAAE,MAAM,CAAC;YAAC,QAAQ,EAAE,MAAM,CAAA;SAAE,CAAC;QAClE,QAAQ,EAAE;YAAE,gBAAgB,EAAE,MAAM,CAAC;YAAC,kBAAkB,EAAE,MAAM,CAAC;YAAC,iBAAiB,EAAE,MAAM,EAAE,CAAA;SAAE,CAAC;QAChG,WAAW,EAAE;YAAE,OAAO,EAAE,MAAM,CAAC;YAAC,KAAK,EAAE,MAAM,CAAC;YAAC,MAAM,EAAE,MAAM,CAAA;SAAE,CAAC;QAChE,QAAQ,EAAE;YAAE,QAAQ,EAAE,MAAM,CAAA;SAAE,CAAC;QAC/B,SAAS,EAAE;YAAE,iBAAiB,EAAE,MAAM,EAAE,CAAC;YAAC,gBAAgB,EAAE,MAAM,EAAE,CAAC;YAAC,iBAAiB,EAAE,MAAM,EAAE,CAAA;SAAE,CAAC;KACrG,CAAC;YAmBY,sBAAsB;IAoBpC,0FAA0F;IACpF,iBAAiB,IAAI,OAAO,CAAC;QAAE,iBAAiB,EAAE,MAAM,EAAE,CAAC;QAAC,gBAAgB,EAAE,MAAM,EAAE,CAAC;QAAC,iBAAiB,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC;IA4B5H;;8EAE0E;IAC1E,OAAO,CAAC,4BAA4B;IAIpC,OAAO,CAAC,iBAAiB;IA4BzB,OAAO,CAAC,mBAAmB;IA2BrB,YAAY,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;IAOvC;;gFAE4E;IACtE,oBAAoB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAoE7D,aAAa,CAAC,OAAO,EAAE,CAAC,CAAC,EAAE,OAAO,KAAK,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;IAMvE,sFAAsF;IAChF,gBAAgB,CAAC,SAAS,EAAE,aAAa,GAAG,OAAO,CAAC,OAAO,CAAC;IAMlE,+EAA+E;IACzE,qBAAqB,CACzB,EAAE,EAAE,MAAM,EACV,KAAK,EAAE,QAAQ,GAAG,iBAAiB,GAAG,UAAU,GAAG,SAAS,GAAG,UAAU,EACzE,SAAS,SAAW,GACnB,OAAO,CAAC,OAAO,CAAC;IAcb,cAAc,CAAC,OAAO,EAAE,CAAC,CAAC,EAAE,gBAAgB,KAAK,gBAAgB,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAoB7F,kBAAkB,CAAC,OAAO,EAAE,CAAC,CAAC,EAAE,oBAAoB,KAAK,oBAAoB,GAAG,OAAO,CAAC,oBAAoB,CAAC;IAMnH;;;;OAIG;IACG,iBAAiB,CAAC,KAAK,EAAE,sBAAsB,GAAG,OAAO,CAAC,uBAAuB,CAAC;IA4ElF,WAAW,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAS5C,YAAY,CAAC,QAAQ,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC;IAa7D,kGAAkG;YACpF,eAAe;IAsB7B,oFAAoF;IAC9E,WAAW,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAY5C,gBAAgB,CAAC,IAAI,EAAE,oBAAoB,GAAG,OAAO,CAAC,IAAI,CAAC;IAMzD,SAAS,CAAC,KAAK,EAAE,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC;IA8B9C;;6DAEyD;IACnD,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;IAgCpF,6FAA6F;IACvF,SAAS,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,iBAAiB,GAAG,OAAO,CAAC,IAAI,CAAC;IAoCzF,2EAA2E;IACrE,UAAU,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,SAAW,GAAG,OAAO,CAAC,IAAI,CAAC;IAmCtF,8EAA8E;IACxE,eAAe,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAIvD,gEAAgE;IAC1D,mBAAmB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAQtE;;;mEAG+D;IACzD,mBAAmB,CACvB,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,wBAAwB,GAC9B,OAAO,CAAC,yBAAyB,CAAC;IA+BrC;;+EAE2E;IACrE,eAAe,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAcnE;gFAC4E;IACtE,eAAe,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAIrD;;;;;;yFAMqF;IAC/E,uBAAuB,IAAI,OAAO,CAAC;QAAE,QAAQ,EAAE,OAAO,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IA2BlF;;;;;uEAKmE;IAC7D,iBAAiB,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,SAAW,GAAG,OAAO,CAAC,IAAI,CAAC;IAwB1E;8EAC0E;YAC5D,oBAAoB;IAYlC,+EAA+E;IACzE,oBAAoB,IAAI,OAAO,CAAC,MAAM,CAAC;IAI7C;iFAC6E;IACvE,YAAY,IAAI,OAAO,CAAC,mBAAmB,EAAE,CAAC;IAyBpD;;iCAE6B;IACvB,oBAAoB,IAAI,OAAO,CAAC,2BAA2B,EAAE,CAAC;IA6B9D,gBAAgB,IAAI,OAAO,CAAC,kBAAkB,EAAE,CAAC;IAuBjD,mBAAmB,IAAI,OAAO,CAAC;QAAE,KAAK,EAAE,kBAAkB,EAAE,CAAC;QAAC,OAAO,EAAE,kBAAkB,EAAE,CAAA;KAAE,CAAC;IAoB9F,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAKjD;;;;kEAI8D;YAChD,gBAAgB;IAS9B,sFAAsF;IAChF,aAAa,IAAI,OAAO,CAAC,aAAa,CAAC;IAW7C;wEACoE;IAC9D,cAAc,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;IAiCzC,wDAAwD;YAC1C,cAAc;CAO7B"}
1
+ {"version":3,"file":"plan-store.d.ts","sourceRoot":"","sources":["../src/plan-store.ts"],"names":[],"mappings":"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"}