@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
@@ -1 +1 @@
1
- {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../src/schema.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../src/schema.ts"],"names":[],"mappings":"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"}
package/dist/schema.js CHANGED
@@ -1,7 +1,11 @@
1
1
  import { z } from "zod";
2
+ import { isPlannerDescriptionRef } from "./payload-fallback.js";
2
3
  import { createChecklistItemId } from "./naming.js";
3
4
  export const TimestampSchema = z.string().datetime();
4
5
  export const SlugSchema = z.string().regex(/^[a-z0-9]+(?:-[a-z0-9]+)*$/);
6
+ export const DescriptionRefSchema = z.string().refine(isPlannerDescriptionRef, {
7
+ message: 'descriptionRef must stay under .planner/docs/ and must not contain relative traversal segments.',
8
+ });
5
9
  export const CodebaseFileSchema = z.object({
6
10
  path: z.string().min(1),
7
11
  kind: z.string().default("file"),
@@ -114,10 +118,24 @@ export const WorkDeviationSchema = z.object({
114
118
  /** When the preserved resume target was actually started again. */
115
119
  resumedAt: z.string().default(""),
116
120
  });
121
+ export const ProjectGuidelinesSchema = z.object({
122
+ content: z.string().default(""),
123
+ updatedAt: z.string().default(""),
124
+ sessionInfo: z.array(z.object({
125
+ sessionId: z.string().min(1),
126
+ createdAt: TimestampSchema,
127
+ })).default([]),
128
+ });
117
129
  export const ProjectSchema = z.object({
118
130
  name: z.string().min(1),
119
131
  goal: z.string().default(""),
120
132
  description: z.string().default(""),
133
+ descriptionRef: DescriptionRefSchema.optional(),
134
+ projectGuidelines: ProjectGuidelinesSchema.default({
135
+ content: "",
136
+ updatedAt: "",
137
+ sessionInfo: [],
138
+ }),
121
139
  webPort: z.number().int().min(0).max(65535).default(0),
122
140
  scope: z.array(z.string().min(1)).default([]),
123
141
  outOfScope: z.array(z.string().min(1)).default([]),
@@ -139,7 +157,7 @@ export const ProjectSchema = z.object({
139
157
  export const SubtaskStatusSchema = z.enum(["planned", "in-progress", "done", "blocked", "canceled", "rejected", "deferred", "waiting"]);
140
158
  export const TaskStatusSchema = z.enum(["planned", "in-progress", "done", "blocked", "canceled", "rejected", "deferred", "waiting"]);
141
159
  export const PhaseStatusSchema = z.enum(["draft", "discovery", "planned", "in-progress", "done", "blocked", "canceled", "rejected", "deferred", "waiting"]);
142
- export const RequirementStatusSchema = z.enum(["planned", "in-progress", "done", "blocked", "canceled", "rejected", "deferred", "waiting"]);
160
+ export const MacroTaskStatusSchema = z.enum(["planned", "in-progress", "done", "blocked", "canceled", "rejected", "deferred", "waiting"]);
143
161
  export const FeatureStatusSchema = z.enum(["planned", "in-progress", "done", "blocked", "canceled", "rejected", "deferred", "waiting"]);
144
162
  export const SubtaskSchema = z.object({
145
163
  id: z.string().min(1),
@@ -213,6 +231,7 @@ export const TaskSchema = z.object({
213
231
  title: z.string().min(1),
214
232
  status: TaskStatusSchema,
215
233
  description: z.string().default(""),
234
+ descriptionRef: DescriptionRefSchema.optional(),
216
235
  /** Updated only when this task's description changes; distinct from entity updatedAt. */
217
236
  descriptionUpdatedAt: z.string().default(""),
218
237
  notes: z.string().default(""),
@@ -232,6 +251,8 @@ export const TaskSchema = z.object({
232
251
  updatedAt: TimestampSchema,
233
252
  /** Durable attestations of completed full context reads by harness session. */
234
253
  sessionInfo: z.array(SessionInfoSchema).default([]),
254
+ /** Session currently owning this in-progress task ("" when not in-progress or legacy). Enables concurrent starts across agent sessions. */
255
+ activeOwnerSession: z.string().default(""),
235
256
  }).transform((task) => ({
236
257
  ...task,
237
258
  checklist: task.checklist
@@ -247,6 +268,44 @@ export const HandoffHistoryEntrySchema = z.object({
247
268
  /** Why the handoff was cleared: "task-started" | "phase-done" | "manual" | "superseded" | "imported". */
248
269
  reason: z.string().default(""),
249
270
  });
271
+ export const HandoffCompletenessEntrySchema = z.object({
272
+ category: z.string().min(1),
273
+ status: z.enum(["captured", "not-applicable"]),
274
+ detail: z.string().min(1),
275
+ });
276
+ export const HandoffSupportingDocumentSchema = z.object({
277
+ path: z.string().min(1),
278
+ description: z.string().min(1),
279
+ contentHash: z.string().regex(/^[a-f0-9]{64}$/),
280
+ contentLength: z.number().int().nonnegative(),
281
+ });
282
+ export const HandoffColdStartInventoryEntrySchema = z.object({
283
+ category: z.string().min(1),
284
+ items: z.array(z.string().min(1)).default([]),
285
+ notApplicableReason: z.string().optional(),
286
+ });
287
+ export const HandoffColdStartSourceReviewSchema = z.object({
288
+ source: z.string().min(1),
289
+ detail: z.string().min(1),
290
+ });
291
+ export const HandoffColdStartInventorySchema = z.object({
292
+ version: z.number().int().positive(),
293
+ sourceReviews: z.array(HandoffColdStartSourceReviewSchema),
294
+ entries: z.array(HandoffColdStartInventoryEntrySchema),
295
+ });
296
+ export const HandoffCompletenessAuditSchema = z.object({
297
+ version: z.number().int().positive(),
298
+ entries: z.array(HandoffCompletenessEntrySchema),
299
+ coldStartInventory: HandoffColdStartInventorySchema.optional(),
300
+ supportingDocuments: z.array(HandoffSupportingDocumentSchema).default([]),
301
+ contentHash: z.string().regex(/^[a-f0-9]{64}$/),
302
+ contentLength: z.number().int().nonnegative(),
303
+ /** Structural validation timestamp written with the handoff candidate. */
304
+ verifiedAt: TimestampSchema,
305
+ /** Set only after a separate persisted read-back and source reconciliation. */
306
+ resumeReadyAt: z.union([TimestampSchema, z.literal("")]).default(""),
307
+ readBackSourceReviews: z.array(HandoffColdStartSourceReviewSchema).default([]),
308
+ });
250
309
  export const PhaseSchema = z.object({
251
310
  id: z.string(),
252
311
  /** MUST be a feature UUID (not a ref like "F005"). Validated at the schema
@@ -267,6 +326,7 @@ export const PhaseSchema = z.object({
267
326
  contextReadyReason: z.string().default(""),
268
327
  summary: z.string().default(""),
269
328
  description: z.string().default(""),
329
+ descriptionRef: DescriptionRefSchema.optional(),
270
330
  /** Updated only when this phase's description changes; distinct from entity updatedAt. */
271
331
  descriptionUpdatedAt: z.string().default(""),
272
332
  notes: z.string().default(""),
@@ -285,6 +345,8 @@ export const PhaseSchema = z.object({
285
345
  updatedAt: TimestampSchema,
286
346
  handoff: z.string().default(""),
287
347
  handoffUpdatedAt: z.string().default(""),
348
+ /** Durable proof that the active handoff passed the versioned completeness and read-back contract. */
349
+ handoffAudit: HandoffCompletenessAuditSchema.nullable().default(null),
288
350
  /** When the handoff was last read/acknowledged on recap (ISO). Non-empty means
289
351
  * the agent has seen it; the recap won't re-prompt every turn. Reading is
290
352
  * non-mutating: content remains until every task is done/canceled, a later
@@ -308,6 +370,7 @@ export const FeatureSchema = z.object({
308
370
  priority: z.number().int().nonnegative().default(0),
309
371
  name: z.string().min(1),
310
372
  description: z.string().default(""),
373
+ descriptionRef: DescriptionRefSchema.optional(),
311
374
  /** Updated only when this feature's description changes; distinct from entity updatedAt. */
312
375
  descriptionUpdatedAt: z.string().default(""),
313
376
  // NOTE: `status` is intentionally ABSENT — it is DERIVED from child phases
@@ -336,7 +399,7 @@ export const MacroTaskSchema = z.object({
336
399
  id: z.string().regex(/^MT-\d{3}$/),
337
400
  title: z.string().min(1),
338
401
  description: z.string().default(""),
339
- status: RequirementStatusSchema,
402
+ status: MacroTaskStatusSchema,
340
403
  createdAt: TimestampSchema,
341
404
  updatedAt: TimestampSchema,
342
405
  });
@@ -344,21 +407,43 @@ export const RequirementSchema = z.object({
344
407
  id: z.string(),
345
408
  title: z.string().min(1),
346
409
  description: z.string().default(""),
347
- status: RequirementStatusSchema,
348
410
  macroTasks: z.array(MacroTaskSchema).default([]),
349
411
  linkedPhaseIds: z.array(z.string().min(1)).default([]),
350
412
  createdAt: TimestampSchema,
351
413
  updatedAt: TimestampSchema,
352
414
  /** Durable attestations of completed full context reads by harness session. */
353
415
  sessionInfo: z.array(SessionInfoSchema).default([]),
354
- });
416
+ }).strip(); // Legacy persisted top-level `status` is accepted as unknown input and removed from canonical output.
355
417
  export const RequirementsDocumentSchema = z.object({
356
418
  requirements: z.array(RequirementSchema),
357
419
  });
420
+ export const IdeaPromotionTargetTypeSchema = z.enum(["feature", "phase", "task"]);
421
+ export const IdeaPromotionSchema = z.object({
422
+ targetType: IdeaPromotionTargetTypeSchema,
423
+ targetId: z.string().min(1),
424
+ targetRef: z.string().min(1),
425
+ promotedAt: TimestampSchema,
426
+ });
427
+ export const IdeaSchema = z.object({
428
+ id: z.string().uuid(),
429
+ /** Global Ideas sequence, independent from feature/phase/task numbering. */
430
+ number: z.number().int().positive(),
431
+ shortId: z.string().regex(/^[A-Z2-9]{5}$/),
432
+ title: z.string().min(1),
433
+ description: z.string().default(""),
434
+ promotion: IdeaPromotionSchema.nullable().default(null),
435
+ createdAt: TimestampSchema,
436
+ updatedAt: TimestampSchema,
437
+ });
438
+ export const IdeasDocumentSchema = z.object({
439
+ nextIdeaNumber: z.number().int().positive().default(1),
440
+ ideas: z.array(IdeaSchema).default([]),
441
+ });
358
442
  export const PlanWorkspaceSchema = z.object({
359
443
  manifest: ManifestSchema,
360
444
  project: ProjectSchema,
361
445
  features: FeaturesDocumentSchema,
362
446
  requirements: RequirementsDocumentSchema,
447
+ ideas: IdeasDocumentSchema.default({ nextIdeaNumber: 1, ideas: [] }),
363
448
  phases: z.array(PhaseSchema),
364
449
  });
@@ -1,4 +1,43 @@
1
- import type { Feature, Phase, Requirement } from "./schema.js";
1
+ import type { AcceptedDecision, Feature, Phase, Project, Requirement, Task } from "./schema.js";
2
+ export declare const MAX_ACCEPTED_DECISION_CONTEXT_CHARS = 8000;
3
+ export declare const MAX_PHASE_WORK_MAP_CHARS = 8000;
4
+ export interface PhaseWorkMapEntry {
5
+ taskId: string;
6
+ ref: string;
7
+ number: number;
8
+ priority: number;
9
+ status: Task["status"];
10
+ title: string;
11
+ conciseGoal: string;
12
+ dependencies: string[];
13
+ remainingCapabilityOwner: boolean;
14
+ current: boolean;
15
+ }
16
+ export interface PhaseWorkMap {
17
+ content: string;
18
+ entries: PhaseWorkMapEntry[];
19
+ total: number;
20
+ truncated: boolean;
21
+ maxChars: number;
22
+ }
23
+ export interface ScopedAcceptedDecisions {
24
+ scope: string;
25
+ decisions: AcceptedDecision[] | undefined;
26
+ }
27
+ /** Render every canonical field needed to understand an Accepted Decision. */
28
+ export declare function renderAcceptedDecisionsSection(label: string, decisions: AcceptedDecision[] | undefined): string;
29
+ /**
30
+ * Build bounded ambient/load context. This is an orientation summary, not a
31
+ * full-read attestation: truncation is explicit and points to entity full reads.
32
+ */
33
+ export declare function buildBoundedAcceptedDecisionContext(scopes: ScopedAcceptedDecisions[], maxChars?: number): {
34
+ content: string;
35
+ total: number;
36
+ truncated: boolean;
37
+ maxChars: number;
38
+ };
39
+ /** Build a bounded, priority-ordered map of sibling capability ownership. */
40
+ export declare function buildPhaseWorkMap(phase: Phase, featureNumber?: number, currentTaskId?: string, maxChars?: number): PhaseWorkMap;
2
41
  /**
3
42
  * Build a compact, agent-facing context block that surfaces the PARENT PHASE
4
43
  * (and grandparent FEATURE) description when a task is started. The phase
@@ -12,5 +51,5 @@ import type { Feature, Phase, Requirement } from "./schema.js";
12
51
  * Harness-agnostic: returns a plain markdown string. Both the Pi adapter and
13
52
  * the MCP server append this to their `task_start` confirmation text.
14
53
  */
15
- export declare function buildPhaseContextBlock(phase: Phase, feature: Feature | undefined, linkedRequirements?: Requirement[], featureRequirements?: Requirement[]): string;
54
+ export declare function buildPhaseContextBlock(phase: Phase, feature: Feature | undefined, linkedRequirements?: Requirement[], featureRequirements?: Requirement[], task?: Pick<Task, "id" | "acceptedDecisions">, project?: Pick<Project, "acceptedDecisions">): string;
16
55
  //# sourceMappingURL=task-context.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"task-context.d.ts","sourceRoot":"","sources":["../src/task-context.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAG/D;;;;;;;;;;;;GAYG;AACH,wBAAgB,sBAAsB,CACpC,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE,OAAO,GAAG,SAAS,EAC5B,kBAAkB,GAAE,WAAW,EAAO,EACtC,mBAAmB,GAAE,WAAW,EAAO,GACtC,MAAM,CAkDR"}
1
+ {"version":3,"file":"task-context.d.ts","sourceRoot":"","sources":["../src/task-context.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,WAAW,EAAE,IAAI,EAAE,MAAM,aAAa,CAAC;AAGhG,eAAO,MAAM,mCAAmC,OAAQ,CAAC;AACzD,eAAO,MAAM,wBAAwB,OAAQ,CAAC;AAE9C,MAAM,WAAW,iBAAiB;IAChC,MAAM,EAAE,MAAM,CAAC;IACf,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;IACvB,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,wBAAwB,EAAE,OAAO,CAAC;IAClC,OAAO,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,WAAW,YAAY;IAC3B,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,iBAAiB,EAAE,CAAC;IAC7B,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,OAAO,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,uBAAuB;IACtC,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,gBAAgB,EAAE,GAAG,SAAS,CAAC;CAC3C;AAOD,8EAA8E;AAC9E,wBAAgB,8BAA8B,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,gBAAgB,EAAE,GAAG,SAAS,GAAG,MAAM,CAgB/G;AAED;;;GAGG;AACH,wBAAgB,mCAAmC,CACjD,MAAM,EAAE,uBAAuB,EAAE,EACjC,QAAQ,SAAsC,GAC7C;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,OAAO,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,CAY1E;AAQD,6EAA6E;AAC7E,wBAAgB,iBAAiB,CAC/B,KAAK,EAAE,KAAK,EACZ,aAAa,CAAC,EAAE,MAAM,EACtB,aAAa,CAAC,EAAE,MAAM,EACtB,QAAQ,SAA2B,GAClC,YAAY,CAwCd;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,sBAAsB,CACpC,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE,OAAO,GAAG,SAAS,EAC5B,kBAAkB,GAAE,WAAW,EAAO,EACtC,mBAAmB,GAAE,WAAW,EAAO,EACvC,IAAI,CAAC,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,GAAG,mBAAmB,CAAC,EAC7C,OAAO,CAAC,EAAE,IAAI,CAAC,OAAO,EAAE,mBAAmB,CAAC,GAC3C,MAAM,CA0DR"}
@@ -1,4 +1,94 @@
1
1
  import { formatPhaseRef } from "./naming.js";
2
+ export const MAX_ACCEPTED_DECISION_CONTEXT_CHARS = 8_000;
3
+ export const MAX_PHASE_WORK_MAP_CHARS = 8_000;
4
+ function indentDecisionValue(value) {
5
+ const normalized = value.trim() || "(not provided)";
6
+ return normalized.split(/\r?\n/).map((line) => ` ${line}`).join("\n");
7
+ }
8
+ /** Render every canonical field needed to understand an Accepted Decision. */
9
+ export function renderAcceptedDecisionsSection(label, decisions) {
10
+ const entries = decisions ?? [];
11
+ const lines = [`${label} (${entries.length}):`];
12
+ if (entries.length === 0)
13
+ return `${lines[0]}\n - None.`;
14
+ for (const decision of entries) {
15
+ lines.push(` - ${decision.title}`);
16
+ lines.push(` ID: ${decision.id}`);
17
+ lines.push(` Accepted at: ${decision.acceptedAt}`);
18
+ lines.push(" Decision:");
19
+ lines.push(indentDecisionValue(decision.decision));
20
+ lines.push(" Rationale:");
21
+ lines.push(indentDecisionValue(decision.rationale));
22
+ lines.push(" Implementation notes:");
23
+ lines.push(indentDecisionValue(decision.implementationNotes));
24
+ }
25
+ return lines.join("\n");
26
+ }
27
+ /**
28
+ * Build bounded ambient/load context. This is an orientation summary, not a
29
+ * full-read attestation: truncation is explicit and points to entity full reads.
30
+ */
31
+ export function buildBoundedAcceptedDecisionContext(scopes, maxChars = MAX_ACCEPTED_DECISION_CONTEXT_CHARS) {
32
+ const populated = scopes
33
+ .map((scope) => ({ ...scope, decisions: scope.decisions ?? [] }))
34
+ .filter((scope) => scope.decisions.length > 0);
35
+ const total = populated.reduce((count, scope) => count + scope.decisions.length, 0);
36
+ const full = total === 0
37
+ ? "Accepted decisions: none."
38
+ : populated.map((scope) => renderAcceptedDecisionsSection(`Accepted decisions — ${scope.scope}`, scope.decisions)).join("\n\n");
39
+ if (full.length <= maxChars)
40
+ return { content: full, total, truncated: false, maxChars };
41
+ const suffix = "\n\n[Accepted Decision context truncated for transport safety. Use the relevant full entity read to retrieve every canonical field.]";
42
+ const limit = Math.max(0, maxChars - suffix.length);
43
+ return { content: `${full.slice(0, limit)}${suffix}`.slice(0, maxChars), total, truncated: true, maxChars };
44
+ }
45
+ function conciseTaskGoal(task) {
46
+ const source = task.description?.trim() || task.notes?.trim() || task.title;
47
+ const firstParagraph = source.split(/\n\s*\n|\r?\n/).find((line) => line.trim())?.trim() ?? task.title;
48
+ return firstParagraph.length <= 240 ? firstParagraph : `${firstParagraph.slice(0, 237).trimEnd()}...`;
49
+ }
50
+ /** Build a bounded, priority-ordered map of sibling capability ownership. */
51
+ export function buildPhaseWorkMap(phase, featureNumber, currentTaskId, maxChars = MAX_PHASE_WORK_MAP_CHARS) {
52
+ const phaseRef = formatPhaseRef(phase.number, featureNumber);
53
+ const tasks = phase.tasks ?? [];
54
+ const refById = new Map(tasks.map((task) => [task.id, `${phaseRef}/T${String(task.number).padStart(3, "0")}`]));
55
+ const entries = [...tasks]
56
+ .sort((left, right) => (left.priority ?? left.number) - (right.priority ?? right.number) || left.number - right.number)
57
+ .map((task) => ({
58
+ taskId: task.id,
59
+ ref: `${phaseRef}/T${String(task.number).padStart(3, "0")}`,
60
+ number: task.number,
61
+ priority: task.priority ?? task.number,
62
+ status: task.status,
63
+ title: task.title,
64
+ conciseGoal: conciseTaskGoal(task),
65
+ dependencies: (task.dependsOn ?? []).map((dependency) => refById.get(dependency) ?? dependency),
66
+ remainingCapabilityOwner: !["done", "canceled", "rejected"].includes(task.status),
67
+ current: task.id === currentTaskId,
68
+ }));
69
+ const header = `Phase work map — canonical sibling capability ownership (${entries.length}, priority order):`;
70
+ const blocks = entries.map((entry) => [
71
+ `- ${entry.ref}${entry.current ? " (current)" : ""} — ${entry.title} [priority ${entry.priority}; ${entry.status}]`,
72
+ ` Goal: ${entry.conciseGoal}`,
73
+ ` Depends on: ${entry.dependencies.length > 0 ? entry.dependencies.join(", ") : "None."}`,
74
+ entry.remainingCapabilityOwner
75
+ ? ` Ownership: ${entry.ref} owns this remaining capability; do not duplicate it in another task.`
76
+ : " Ownership: no remaining capability ownership (terminal task).",
77
+ ].join("\n"));
78
+ const suffix = "[Phase work map truncated for transport safety. Read the canonical phase and task full views before proposing work; place deeper context under .planner/docs/.]";
79
+ const included = [];
80
+ let truncated = false;
81
+ for (const block of blocks) {
82
+ const candidate = [header, ...included, block].join("\n");
83
+ if (candidate.length + suffix.length + 1 > maxChars) {
84
+ truncated = true;
85
+ break;
86
+ }
87
+ included.push(block);
88
+ }
89
+ const content = [header, ...included, ...(truncated ? [suffix] : [])].join("\n").slice(0, maxChars);
90
+ return { content, entries, total: entries.length, truncated, maxChars };
91
+ }
2
92
  /**
3
93
  * Build a compact, agent-facing context block that surfaces the PARENT PHASE
4
94
  * (and grandparent FEATURE) description when a task is started. The phase
@@ -12,7 +102,7 @@ import { formatPhaseRef } from "./naming.js";
12
102
  * Harness-agnostic: returns a plain markdown string. Both the Pi adapter and
13
103
  * the MCP server append this to their `task_start` confirmation text.
14
104
  */
15
- export function buildPhaseContextBlock(phase, feature, linkedRequirements = [], featureRequirements = []) {
105
+ export function buildPhaseContextBlock(phase, feature, linkedRequirements = [], featureRequirements = [], task, project) {
16
106
  const lines = [];
17
107
  const phaseRef = formatPhaseRef(phase.number, feature?.number);
18
108
  const requirementsBlock = (label, requirements, empty) => {
@@ -27,16 +117,22 @@ export function buildPhaseContextBlock(phase, feature, linkedRequirements = [],
27
117
  }
28
118
  };
29
119
  lines.push(`\nšŸ“‹ Task context — read this BEFORE touching code:`);
120
+ lines.push(`\n${buildBoundedAcceptedDecisionContext([
121
+ ...(project ? [{ scope: "project", decisions: project.acceptedDecisions }] : []),
122
+ ...(feature ? [{ scope: `feature F${String(feature.number).padStart(3, "0")}`, decisions: feature.acceptedDecisions }] : []),
123
+ { scope: `phase ${phaseRef}`, decisions: phase.acceptedDecisions },
124
+ ...(task ? [{ scope: "task", decisions: task.acceptedDecisions }] : []),
125
+ ]).content}`);
30
126
  if (feature) {
31
127
  lines.push(`Feature F${String(feature.number).padStart(3, "0")} — ${feature.name}`);
32
128
  if (feature.description && feature.description.trim()) {
33
129
  lines.push(`\nFeature description:\n${feature.description.trim()}`);
34
130
  }
35
- requirementsBlock("Feature linked requirements", featureRequirements, "None linked to this feature.");
131
+ requirementsBlock("Product requirements linked to feature (outcomes, never coding/process rules)", featureRequirements, "None linked to this feature.");
36
132
  }
37
133
  else {
38
134
  lines.push("Feature context: no parent feature linked to this phase.");
39
- requirementsBlock("Feature linked requirements", [], "None linked to this feature.");
135
+ requirementsBlock("Product requirements linked to feature (outcomes, never coding/process rules)", [], "None linked to this feature.");
40
136
  }
41
137
  lines.push(`\nPhase ${phaseRef} — ${phase.title}`);
42
138
  if (phase.summary && phase.summary.trim()) {
@@ -59,7 +155,9 @@ export function buildPhaseContextBlock(phase, feature, linkedRequirements = [],
59
155
  bullet("Open questions", phase.openQuestions);
60
156
  bullet("Decisions", phase.decisions);
61
157
  bullet("Completion criteria", phase.completionCriteria);
62
- requirementsBlock("Phase linked requirements", linkedRequirements, "None linked to this phase.");
158
+ requirementsBlock("Product requirements linked to phase (outcomes, never coding/process rules)", linkedRequirements, "None linked to this phase.");
159
+ lines.push(`\n${buildPhaseWorkMap(phase, feature?.number, task?.id).content}`);
160
+ lines.push("Before proposing or creating work, reread this canonical phase work map and the relevant sibling task full view so an already-owned capability is not duplicated.");
63
161
  lines.push(`\n(End of phase context. Now proceed with the task.)`);
64
162
  return lines.join("\n");
65
163
  }
@@ -1,10 +1,52 @@
1
1
  import type { Feature, Phase, Task, WorkDeviation } from "./schema.js";
2
+ export type RecommendationClaimKind = "recommendation" | "advisory" | "conflict" | "insufficient";
3
+ export type RecommendationClaimSource = "priority" | "active-task" | "resume-deviation" | "dependency-ready" | "handoff" | "archived-handoff";
4
+ export interface RecommendationClaim {
5
+ kind: RecommendationClaimKind;
6
+ source: RecommendationClaimSource;
7
+ ref: string;
8
+ title: string;
9
+ reason: string;
10
+ taskId?: string;
11
+ phaseId?: string;
12
+ featureId?: string;
13
+ }
14
+ export interface RecommendationHandoffEvidence {
15
+ compositeRef: string;
16
+ firstLine: string;
17
+ /** Authoritative only after persisted read-back verification. */
18
+ resumeReady: boolean;
19
+ }
20
+ export interface RecommendationArchivedHandoffEvidence {
21
+ compositeRef: string;
22
+ firstLine: string;
23
+ reason: string;
24
+ }
25
+ export interface RecommendationEvidence {
26
+ handoffs?: RecommendationHandoffEvidence[];
27
+ archivedHandoffs?: RecommendationArchivedHandoffEvidence[];
28
+ }
2
29
  export type TaskRecommendationKind = "active" | "resume" | "priority" | "conflict" | "none";
3
30
  export interface TaskCandidate {
4
31
  feature: Feature | undefined;
5
32
  phase: Phase;
6
33
  task: Task;
7
34
  }
35
+ export interface WorkSummary {
36
+ id: string;
37
+ number: number;
38
+ priority: number;
39
+ title: string;
40
+ status: string;
41
+ }
42
+ export interface NextWorkRecommendation {
43
+ selection: TaskRecommendation;
44
+ activeTask: WorkSummary | null;
45
+ nextFeature: WorkSummary | null;
46
+ nextPhase: WorkSummary | null;
47
+ nextTask: WorkSummary | null;
48
+ claims: RecommendationClaim[];
49
+ }
8
50
  export interface TaskRecommendation {
9
51
  kind: TaskRecommendationKind;
10
52
  candidate?: TaskCandidate;
@@ -30,7 +72,8 @@ export declare function checkExplicitTaskStart(features: Feature[], phases: Phas
30
72
  * may use its recommendation as a default while still allowing an explicitly
31
73
  * approved temporary deviation.
32
74
  */
33
- export declare function recommendNextTask(features: Feature[], phases: Phase[], deviations?: WorkDeviation[], currentPhaseId?: string): TaskRecommendation;
75
+ export declare function recommendNextTask(features: Feature[], phases: Phase[], deviations?: WorkDeviation[], currentPhaseId?: string, sessionId?: string): TaskRecommendation;
76
+ export declare function recommendNextWork(features: Feature[], phases: Phase[], deviations?: WorkDeviation[], currentPhaseId?: string, sessionId?: string, evidence?: RecommendationEvidence): NextWorkRecommendation;
34
77
  /**
35
78
  * Snapshot fields surfaced in the explicit resume-required proposal. Derived
36
79
  * from {@link TaskPauseSnapshot}; kept structural so adapters can build it
@@ -1 +1 @@
1
- {"version":3,"file":"task-selection.d.ts","sourceRoot":"","sources":["../src/task-selection.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAEvE,MAAM,MAAM,sBAAsB,GAAG,QAAQ,GAAG,QAAQ,GAAG,UAAU,GAAG,UAAU,GAAG,MAAM,CAAC;AAE5F,MAAM,WAAW,aAAa;IAC5B,OAAO,EAAE,OAAO,GAAG,SAAS,CAAC;IAC7B,KAAK,EAAE,KAAK,CAAC;IACb,IAAI,EAAE,IAAI,CAAC;CACZ;AAED,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,sBAAsB,CAAC;IAC7B,SAAS,CAAC,EAAE,aAAa,CAAC;IAC1B,iEAAiE;IACjE,gBAAgB,CAAC,EAAE,aAAa,EAAE,CAAC;IACnC,8EAA8E;IAC9E,SAAS,CAAC,EAAE,aAAa,CAAC;IAC1B,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,mFAAmF;AACnF,MAAM,WAAW,4BAA4B;IAC3C,QAAQ,EAAE,OAAO,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;CAChB;AASD;;;;GAIG;AACH,wBAAgB,sBAAsB,CACpC,QAAQ,EAAE,OAAO,EAAE,EACnB,MAAM,EAAE,KAAK,EAAE,EACf,MAAM,EAAE,MAAM,EACd,UAAU,GAAE,aAAa,EAAO,GAC/B,4BAA4B,CA+B9B;AAED;;;;GAIG;AACH,wBAAgB,iBAAiB,CAC/B,QAAQ,EAAE,OAAO,EAAE,EACnB,MAAM,EAAE,KAAK,EAAE,EACf,UAAU,GAAE,aAAa,EAAO,EAChC,cAAc,SAAK,GAClB,kBAAkB,CAoEpB;AAED;;;;GAIG;AACH,MAAM,WAAW,sBAAsB;IACrC,MAAM,EAAE,MAAM,CAAC;IACf,cAAc,EAAE,MAAM,CAAC;IACvB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED;;;;;;GAMG;AACH,MAAM,WAAW,sBAAsB;IACrC,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE;QACV,MAAM,EAAE,MAAM,CAAC;QACf,OAAO,EAAE,MAAM,CAAC;QAChB,QAAQ,EAAE,sBAAsB,GAAG,IAAI,CAAC;KACzC,CAAC;CACH;AAED;;;;GAIG;AACH,wBAAgB,2BAA2B,CAAC,MAAM,EAAE;IAClD,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,sBAAsB,GAAG,IAAI,CAAC;CACzC,GAAG,sBAAsB,CAuBzB"}
1
+ {"version":3,"file":"task-selection.d.ts","sourceRoot":"","sources":["../src/task-selection.ts"],"names":[],"mappings":"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"}