harness-engineering-agent 0.3.11 → 0.3.13

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 (117) hide show
  1. package/README.md +8 -3
  2. package/dist/agent/harness-role-capability-directory-data.d.ts.map +1 -1
  3. package/dist/agent/harness-role-capability-directory-data.js +3 -3
  4. package/dist/agent/harness-role-capability-directory-data.js.map +1 -1
  5. package/dist/agent/harness-role-capability-directory.d.ts +1 -0
  6. package/dist/agent/harness-role-capability-directory.d.ts.map +1 -1
  7. package/dist/agent/harness-role-capability-directory.js +1 -0
  8. package/dist/agent/harness-role-capability-directory.js.map +1 -1
  9. package/dist/controller/agent-session-types.d.ts +17 -1
  10. package/dist/controller/agent-session-types.d.ts.map +1 -1
  11. package/dist/controller/agent-session-utils.d.ts +40 -3
  12. package/dist/controller/agent-session-utils.d.ts.map +1 -1
  13. package/dist/controller/agent-session-utils.js +67 -21
  14. package/dist/controller/agent-session-utils.js.map +1 -1
  15. package/dist/controller/agent-session.d.ts.map +1 -1
  16. package/dist/controller/agent-session.js +129 -10
  17. package/dist/controller/agent-session.js.map +1 -1
  18. package/dist/controller/context-budget.d.ts +71 -0
  19. package/dist/controller/context-budget.d.ts.map +1 -0
  20. package/dist/controller/context-budget.js +219 -0
  21. package/dist/controller/context-budget.js.map +1 -0
  22. package/dist/controller/context-builder.d.ts +27 -0
  23. package/dist/controller/context-builder.d.ts.map +1 -0
  24. package/dist/controller/context-builder.js +184 -0
  25. package/dist/controller/context-builder.js.map +1 -0
  26. package/dist/controller/context-validation.d.ts +46 -0
  27. package/dist/controller/context-validation.d.ts.map +1 -0
  28. package/dist/controller/context-validation.js +126 -0
  29. package/dist/controller/context-validation.js.map +1 -0
  30. package/dist/controller/direct-runner.d.ts +2 -0
  31. package/dist/controller/direct-runner.d.ts.map +1 -1
  32. package/dist/controller/direct-runner.js +20 -2
  33. package/dist/controller/direct-runner.js.map +1 -1
  34. package/dist/controller/index.d.ts +1 -0
  35. package/dist/controller/index.d.ts.map +1 -1
  36. package/dist/controller/index.js +1 -0
  37. package/dist/controller/index.js.map +1 -1
  38. package/dist/controller/run-acceptance.d.ts.map +1 -1
  39. package/dist/controller/run-acceptance.js +12 -0
  40. package/dist/controller/run-acceptance.js.map +1 -1
  41. package/dist/controller/run-controller.d.ts.map +1 -1
  42. package/dist/controller/run-controller.js +2 -0
  43. package/dist/controller/run-controller.js.map +1 -1
  44. package/dist/controller/streamlined-runner.d.ts +2 -0
  45. package/dist/controller/streamlined-runner.d.ts.map +1 -1
  46. package/dist/controller/streamlined-runner.js +31 -1
  47. package/dist/controller/streamlined-runner.js.map +1 -1
  48. package/dist/controller/task-agent-output.d.ts.map +1 -1
  49. package/dist/controller/task-agent-output.js +85 -0
  50. package/dist/controller/task-agent-output.js.map +1 -1
  51. package/dist/domain/clarification.d.ts +92 -0
  52. package/dist/domain/clarification.d.ts.map +1 -0
  53. package/dist/domain/clarification.js +80 -0
  54. package/dist/domain/clarification.js.map +1 -0
  55. package/dist/domain/context-snapshot.d.ts +140 -0
  56. package/dist/domain/context-snapshot.d.ts.map +1 -0
  57. package/dist/domain/context-snapshot.js +140 -0
  58. package/dist/domain/context-snapshot.js.map +1 -0
  59. package/dist/domain/index.d.ts +4 -0
  60. package/dist/domain/index.d.ts.map +1 -1
  61. package/dist/domain/index.js +2 -0
  62. package/dist/domain/index.js.map +1 -1
  63. package/dist/domain/report.d.ts +118 -0
  64. package/dist/domain/report.d.ts.map +1 -1
  65. package/dist/domain/run.d.ts +118 -0
  66. package/dist/domain/run.d.ts.map +1 -1
  67. package/dist/domain/run.js +2 -0
  68. package/dist/domain/run.js.map +1 -1
  69. package/dist/plugin/create-harness-plugin.d.ts.map +1 -1
  70. package/dist/plugin/create-harness-plugin.js +25 -13
  71. package/dist/plugin/create-harness-plugin.js.map +1 -1
  72. package/dist/plugin/harness-chat-hook.d.ts +9 -0
  73. package/dist/plugin/harness-chat-hook.d.ts.map +1 -1
  74. package/dist/plugin/harness-chat-hook.js +40 -35
  75. package/dist/plugin/harness-chat-hook.js.map +1 -1
  76. package/dist/plugin/harness-coordinator.d.ts +5 -0
  77. package/dist/plugin/harness-coordinator.d.ts.map +1 -1
  78. package/dist/plugin/harness-coordinator.js +95 -4
  79. package/dist/plugin/harness-coordinator.js.map +1 -1
  80. package/dist/plugin/harness-escalate-tool.d.ts +13 -0
  81. package/dist/plugin/harness-escalate-tool.d.ts.map +1 -0
  82. package/dist/plugin/harness-escalate-tool.js +37 -0
  83. package/dist/plugin/harness-escalate-tool.js.map +1 -0
  84. package/dist/plugin/harness-plugin-runtime.d.ts +2 -14
  85. package/dist/plugin/harness-plugin-runtime.d.ts.map +1 -1
  86. package/dist/plugin/harness-plugin-runtime.js +7 -1
  87. package/dist/plugin/harness-plugin-runtime.js.map +1 -1
  88. package/dist/session/contracts.d.ts +80 -8
  89. package/dist/session/contracts.d.ts.map +1 -1
  90. package/dist/session/fake-session-adapter.d.ts.map +1 -1
  91. package/dist/session/fake-session-adapter.js +14 -0
  92. package/dist/session/fake-session-adapter.js.map +1 -1
  93. package/dist/session/opencode-session-adapter.d.ts.map +1 -1
  94. package/dist/session/opencode-session-adapter.js +16 -0
  95. package/dist/session/opencode-session-adapter.js.map +1 -1
  96. package/dist/session/opencode-session-prompts.d.ts.map +1 -1
  97. package/dist/session/opencode-session-prompts.js +3 -0
  98. package/dist/session/opencode-session-prompts.js.map +1 -1
  99. package/dist/store/context-snapshot-store.d.ts +17 -0
  100. package/dist/store/context-snapshot-store.d.ts.map +1 -0
  101. package/dist/store/context-snapshot-store.js +96 -0
  102. package/dist/store/context-snapshot-store.js.map +1 -0
  103. package/dist/store/filesystem-run-store.d.ts +3 -0
  104. package/dist/store/filesystem-run-store.d.ts.map +1 -1
  105. package/dist/store/filesystem-run-store.js +13 -1
  106. package/dist/store/filesystem-run-store.js.map +1 -1
  107. package/dist/store/index.d.ts +2 -0
  108. package/dist/store/index.d.ts.map +1 -1
  109. package/dist/store/index.js +2 -0
  110. package/dist/store/index.js.map +1 -1
  111. package/dist/store/run-event.d.ts +118 -0
  112. package/dist/store/run-event.d.ts.map +1 -1
  113. package/dist/store/session-index.d.ts +51 -0
  114. package/dist/store/session-index.d.ts.map +1 -0
  115. package/dist/store/session-index.js +163 -0
  116. package/dist/store/session-index.js.map +1 -0
  117. package/package.json +1 -1
@@ -0,0 +1,80 @@
1
+ import { z } from "zod";
2
+ import { DomainEntityIdSchema, RunIdSchema, SchemaVersionSchema } from "./shared.js";
3
+ // ─── Clarification Question ─────────────────────────────────────────────────
4
+ const ClarificationQuestionStatusSchema = z.enum(["open", "answered", "closed", "rejected"]);
5
+ const ClarificationAnswerSchema = z
6
+ .object({
7
+ answerId: DomainEntityIdSchema,
8
+ questionId: z.string().trim().min(1),
9
+ answer: z.string().trim().min(1),
10
+ actorId: z.string().trim().min(1),
11
+ timestamp: z.string().trim().min(1),
12
+ /** Whether this answer was accepted and merged into the requirement */
13
+ accepted: z.boolean().default(false),
14
+ /** Context version created after accepting this answer */
15
+ mergedContextVersion: z.number().int().positive().optional(),
16
+ })
17
+ .readonly();
18
+ const ClarificationQuestionSchema = z
19
+ .object({
20
+ questionId: z.string().trim().min(1),
21
+ runId: RunIdSchema,
22
+ /** The missing facts this question is asking about */
23
+ missingFacts: z.array(z.string().trim().min(1)).readonly().default([]),
24
+ /** The question text presented to the user */
25
+ question: z.string().trim().min(1),
26
+ status: ClarificationQuestionStatusSchema,
27
+ /** Answers submitted for this question */
28
+ answers: z.array(ClarificationAnswerSchema).readonly().default([]),
29
+ /** When this question was created */
30
+ createdAt: z.string().trim().min(1),
31
+ /** When this question was last updated */
32
+ updatedAt: z.string().trim().min(1),
33
+ /** Which context version this question was derived from */
34
+ sourceContextVersion: z.number().int().positive().optional(),
35
+ })
36
+ .readonly();
37
+ // ─── Clarification State ────────────────────────────────────────────────────
38
+ const ClarificationStateSchema = z
39
+ .object({
40
+ schemaVersion: SchemaVersionSchema,
41
+ stateId: DomainEntityIdSchema,
42
+ runId: RunIdSchema,
43
+ /** Active questions indexed by questionId */
44
+ questions: z
45
+ .record(z.string().trim().min(1), ClarificationQuestionSchema)
46
+ .readonly()
47
+ .default({}),
48
+ /** Total number of clarification rounds for this run */
49
+ roundCount: z.number().int().nonnegative().default(0),
50
+ /** Whether concurrent answers are prevented */
51
+ concurrencyGuard: z.boolean().default(false),
52
+ /** When this state was created */
53
+ createdAt: z.string().trim().min(1),
54
+ /** When this state was last updated */
55
+ updatedAt: z.string().trim().min(1),
56
+ })
57
+ .readonly();
58
+ // ─── Helpers ────────────────────────────────────────────────────────────────
59
+ /** Create a new clarification question for a run */
60
+ export const createClarificationQuestion = (input) => {
61
+ const now = new Date().toISOString();
62
+ return {
63
+ questionId: input.questionId,
64
+ runId: input.runId,
65
+ missingFacts: input.missingFacts ?? [],
66
+ question: input.question,
67
+ status: "open",
68
+ answers: [],
69
+ createdAt: now,
70
+ updatedAt: now,
71
+ sourceContextVersion: input.sourceContextVersion,
72
+ };
73
+ };
74
+ /** Check if a question can accept answers */
75
+ export const canAnswerQuestion = (question) => question.status === "open";
76
+ /** Check if a question is in a terminal state */
77
+ export const isQuestionTerminal = (question) => question.status === "closed" || question.status === "rejected";
78
+ // ─── Exports ───────────────────────────────────────────────────────────────
79
+ export { ClarificationAnswerSchema, ClarificationQuestionSchema, ClarificationQuestionStatusSchema, ClarificationStateSchema, };
80
+ //# sourceMappingURL=clarification.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"clarification.js","sourceRoot":"","sources":["../../src/domain/clarification.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,140 @@
1
+ import { z } from "zod";
2
+ declare const ContextFactKindSchema: z.ZodEnum<{
3
+ requirement: "requirement";
4
+ constraint: "constraint";
5
+ scope: "scope";
6
+ evidence: "evidence";
7
+ unresolved_issue: "unresolved_issue";
8
+ governance: "governance";
9
+ workspace: "workspace";
10
+ }>;
11
+ declare const ContextFactSchema: z.ZodReadonly<z.ZodObject<{
12
+ factId: z.ZodString;
13
+ kind: z.ZodEnum<{
14
+ requirement: "requirement";
15
+ constraint: "constraint";
16
+ scope: "scope";
17
+ evidence: "evidence";
18
+ unresolved_issue: "unresolved_issue";
19
+ governance: "governance";
20
+ workspace: "workspace";
21
+ }>;
22
+ label: z.ZodString;
23
+ summary: z.ZodString;
24
+ priority: z.ZodDefault<z.ZodNumber>;
25
+ sourceRef: z.ZodOptional<z.ZodString>;
26
+ sourceEventId: z.ZodOptional<z.ZodString>;
27
+ metadata: z.ZodOptional<z.ZodReadonly<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
28
+ }, z.core.$strip>>;
29
+ declare const ContextEvidenceDigestSchema: z.ZodReadonly<z.ZodObject<{
30
+ refId: z.core.$ZodBranded<z.ZodString, "EvidenceId">;
31
+ summaryDigest: z.ZodString;
32
+ sourceRole: z.ZodString;
33
+ sourceTaskId: z.ZodOptional<z.core.$ZodBranded<z.ZodString, "TaskId">>;
34
+ createdAt: z.ZodString;
35
+ freshness: z.ZodEnum<{
36
+ fresh: "fresh";
37
+ stale: "stale";
38
+ expired: "expired";
39
+ }>;
40
+ }, z.core.$strip>>;
41
+ declare const ContextWorktreeSchema: z.ZodReadonly<z.ZodObject<{
42
+ executionRoot: z.ZodString;
43
+ branch: z.ZodOptional<z.ZodString>;
44
+ commit: z.ZodOptional<z.ZodString>;
45
+ dirty: z.ZodDefault<z.ZodBoolean>;
46
+ }, z.core.$strip>>;
47
+ declare const ContextSnapshotEventRefSchema: z.ZodReadonly<z.ZodObject<{
48
+ eventId: z.ZodString;
49
+ eventType: z.ZodString;
50
+ timestamp: z.ZodString;
51
+ }, z.core.$strip>>;
52
+ declare const ContextSnapshotSchema: z.ZodReadonly<z.ZodObject<{
53
+ schemaVersion: z.ZodLiteral<"1.0.0">;
54
+ contextId: z.ZodString;
55
+ version: z.ZodNumber;
56
+ runId: z.core.$ZodBranded<z.ZodString, "RunId">;
57
+ taskId: z.ZodOptional<z.core.$ZodBranded<z.ZodString, "TaskId">>;
58
+ attempt: z.ZodDefault<z.ZodNumber>;
59
+ phase: z.ZodDefault<z.ZodString>;
60
+ goal: z.ZodString;
61
+ scope: z.ZodDefault<z.ZodString>;
62
+ facts: z.ZodDefault<z.ZodReadonly<z.ZodArray<z.ZodReadonly<z.ZodObject<{
63
+ factId: z.ZodString;
64
+ kind: z.ZodEnum<{
65
+ requirement: "requirement";
66
+ constraint: "constraint";
67
+ scope: "scope";
68
+ evidence: "evidence";
69
+ unresolved_issue: "unresolved_issue";
70
+ governance: "governance";
71
+ workspace: "workspace";
72
+ }>;
73
+ label: z.ZodString;
74
+ summary: z.ZodString;
75
+ priority: z.ZodDefault<z.ZodNumber>;
76
+ sourceRef: z.ZodOptional<z.ZodString>;
77
+ sourceEventId: z.ZodOptional<z.ZodString>;
78
+ metadata: z.ZodOptional<z.ZodReadonly<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
79
+ }, z.core.$strip>>>>>;
80
+ evidenceDigests: z.ZodDefault<z.ZodReadonly<z.ZodArray<z.ZodReadonly<z.ZodObject<{
81
+ refId: z.core.$ZodBranded<z.ZodString, "EvidenceId">;
82
+ summaryDigest: z.ZodString;
83
+ sourceRole: z.ZodString;
84
+ sourceTaskId: z.ZodOptional<z.core.$ZodBranded<z.ZodString, "TaskId">>;
85
+ createdAt: z.ZodString;
86
+ freshness: z.ZodEnum<{
87
+ fresh: "fresh";
88
+ stale: "stale";
89
+ expired: "expired";
90
+ }>;
91
+ }, z.core.$strip>>>>>;
92
+ worktree: z.ZodOptional<z.ZodReadonly<z.ZodObject<{
93
+ executionRoot: z.ZodString;
94
+ branch: z.ZodOptional<z.ZodString>;
95
+ commit: z.ZodOptional<z.ZodString>;
96
+ dirty: z.ZodDefault<z.ZodBoolean>;
97
+ }, z.core.$strip>>>;
98
+ allowedPaths: z.ZodDefault<z.ZodReadonly<z.ZodArray<z.ZodString>>>;
99
+ acceptanceCriterionIds: z.ZodDefault<z.ZodReadonly<z.ZodArray<z.ZodString>>>;
100
+ unresolvedIssues: z.ZodDefault<z.ZodReadonly<z.ZodArray<z.ZodString>>>;
101
+ sourceEvents: z.ZodDefault<z.ZodReadonly<z.ZodArray<z.ZodReadonly<z.ZodObject<{
102
+ eventId: z.ZodString;
103
+ eventType: z.ZodString;
104
+ timestamp: z.ZodString;
105
+ }, z.core.$strip>>>>>;
106
+ parentContextId: z.ZodOptional<z.ZodString>;
107
+ parentVersion: z.ZodOptional<z.ZodNumber>;
108
+ createdAt: z.ZodString;
109
+ contentDigest: z.ZodString;
110
+ }, z.core.$strip>>;
111
+ declare const ContextSummarySchema: z.ZodReadonly<z.ZodObject<{
112
+ contextId: z.ZodString;
113
+ version: z.ZodNumber;
114
+ runId: z.core.$ZodBranded<z.ZodString, "RunId">;
115
+ taskId: z.ZodOptional<z.core.$ZodBranded<z.ZodString, "TaskId">>;
116
+ phase: z.ZodString;
117
+ goal: z.ZodString;
118
+ factCount: z.ZodNumber;
119
+ evidenceDigestCount: z.ZodNumber;
120
+ unresolvedIssueCount: z.ZodNumber;
121
+ contentDigest: z.ZodString;
122
+ createdAt: z.ZodString;
123
+ }, z.core.$strip>>;
124
+ /**
125
+ * Compute a deterministic SHA-256 digest of a context snapshot's content
126
+ * (excluding the digest field itself).
127
+ */
128
+ export declare const computeContextDigest: (snapshot: Omit<z.infer<typeof ContextSnapshotSchema>, "contentDigest">) => string;
129
+ /**
130
+ * Create a lightweight summary from a full ContextSnapshot.
131
+ */
132
+ export declare const toContextSummary: (snapshot: z.infer<typeof ContextSnapshotSchema>) => z.infer<typeof ContextSummarySchema>;
133
+ export { ContextEvidenceDigestSchema, ContextFactKindSchema, ContextFactSchema, ContextSnapshotEventRefSchema, ContextSnapshotSchema, ContextSummarySchema, ContextWorktreeSchema, };
134
+ export type ContextFactKind = z.infer<typeof ContextFactKindSchema>;
135
+ export type ContextFact = z.infer<typeof ContextFactSchema>;
136
+ export type ContextEvidenceDigest = z.infer<typeof ContextEvidenceDigestSchema>;
137
+ export type ContextWorktree = z.infer<typeof ContextWorktreeSchema>;
138
+ export type ContextSnapshot = z.infer<typeof ContextSnapshotSchema>;
139
+ export type ContextSummary = z.infer<typeof ContextSummarySchema>;
140
+ //# sourceMappingURL=context-snapshot.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"context-snapshot.d.ts","sourceRoot":"","sources":["../../src/domain/context-snapshot.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAYvB,QAAA,MAAM,qBAAqB;;;;;;;;EAQzB,CAAA;AAEF,QAAA,MAAM,iBAAiB;;;;;;;;;;;;;;;;;kBAWV,CAAA;AAIb,QAAA,MAAM,2BAA2B;;;;;;;;;;;kBASpB,CAAA;AAIb,QAAA,MAAM,qBAAqB;;;;;kBAOd,CAAA;AAIb,QAAA,MAAM,6BAA6B;;;;kBAMtB,CAAA;AAEb,QAAA,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAoCd,CAAA;AAIb,QAAA,MAAM,oBAAoB;;;;;;;;;;;;kBAcb,CAAA;AAIb;;;GAGG;AACH,eAAO,MAAM,oBAAoB,GAC/B,UAAU,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,EAAE,eAAe,CAAC,KACrE,MAUF,CAAA;AAED;;GAEG;AACH,eAAO,MAAM,gBAAgB,GAC3B,UAAU,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,KAC9C,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAcrC,CAAA;AAID,OAAO,EACL,2BAA2B,EAC3B,qBAAqB,EACrB,iBAAiB,EACjB,6BAA6B,EAC7B,qBAAqB,EACrB,oBAAoB,EACpB,qBAAqB,GACtB,CAAA;AAED,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAA;AACnE,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAA;AAC3D,MAAM,MAAM,qBAAqB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,2BAA2B,CAAC,CAAA;AAC/E,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAA;AACnE,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAA;AACnE,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAA"}
@@ -0,0 +1,140 @@
1
+ import { createHash } from "node:crypto";
2
+ import { z } from "zod";
3
+ import { DomainEntityIdSchema, EvidenceIdSchema, RunIdSchema, SchemaVersionSchema, TaskIdSchema, } from "./shared.js";
4
+ // ─── ContextFact ───────────────────────────────────────────────────────────
5
+ const ContextFactKindSchema = z.enum([
6
+ "requirement",
7
+ "constraint",
8
+ "scope",
9
+ "evidence",
10
+ "unresolved_issue",
11
+ "governance",
12
+ "workspace",
13
+ ]);
14
+ const ContextFactSchema = z
15
+ .object({
16
+ factId: DomainEntityIdSchema,
17
+ kind: ContextFactKindSchema,
18
+ label: z.string().trim().min(1),
19
+ summary: z.string().trim().min(1),
20
+ priority: z.number().int().min(0).max(100).default(50),
21
+ sourceRef: z.string().trim().min(1).optional(),
22
+ sourceEventId: z.string().trim().min(1).optional(),
23
+ metadata: z.record(z.string(), z.unknown()).readonly().optional(),
24
+ })
25
+ .readonly();
26
+ // ─── ContextEvidenceDigest ─────────────────────────────────────────────────
27
+ const ContextEvidenceDigestSchema = z
28
+ .object({
29
+ refId: EvidenceIdSchema,
30
+ summaryDigest: z.string().regex(/^sha256:[a-f0-9]{64}$/),
31
+ sourceRole: z.string().trim().min(1),
32
+ sourceTaskId: TaskIdSchema.optional(),
33
+ createdAt: z.string().trim().min(1),
34
+ freshness: z.enum(["fresh", "stale", "expired"]),
35
+ })
36
+ .readonly();
37
+ // ─── ContextWorktree ───────────────────────────────────────────────────────
38
+ const ContextWorktreeSchema = z
39
+ .object({
40
+ executionRoot: z.string().trim().min(1),
41
+ branch: z.string().trim().min(1).optional(),
42
+ commit: z.string().trim().min(1).optional(),
43
+ dirty: z.boolean().default(false),
44
+ })
45
+ .readonly();
46
+ // ─── ContextSnapshot ───────────────────────────────────────────────────────
47
+ const ContextSnapshotEventRefSchema = z
48
+ .object({
49
+ eventId: z.string().trim().min(1),
50
+ eventType: z.string().trim().min(1),
51
+ timestamp: z.string().trim().min(1),
52
+ })
53
+ .readonly();
54
+ const ContextSnapshotSchema = z
55
+ .object({
56
+ schemaVersion: SchemaVersionSchema,
57
+ contextId: DomainEntityIdSchema,
58
+ version: z.number().int().positive(),
59
+ runId: RunIdSchema,
60
+ taskId: TaskIdSchema.optional(),
61
+ attempt: z.number().int().nonnegative().default(0),
62
+ /** Human-readable label for this snapshot, e.g. "planning", "worker-task-1" */
63
+ phase: z.string().trim().min(1).default("unknown"),
64
+ /** High-level goal or requirement summary */
65
+ goal: z.string().trim().min(1),
66
+ /** Scope description */
67
+ scope: z.string().trim().min(1).default("full"),
68
+ /** Ordered facts: requirements, constraints, evidence, unresolved issues, etc. */
69
+ facts: z.array(ContextFactSchema).readonly().default([]),
70
+ /** Evidence digests carried in this snapshot */
71
+ evidenceDigests: z.array(ContextEvidenceDigestSchema).readonly().default([]),
72
+ /** Worktree state at snapshot time */
73
+ worktree: ContextWorktreeSchema.optional(),
74
+ /** Allowed paths for the worker */
75
+ allowedPaths: z.array(z.string().trim().min(1)).readonly().default([]),
76
+ /** Acceptance criteria IDs */
77
+ acceptanceCriterionIds: z.array(z.string().trim().min(1)).readonly().default([]),
78
+ /** Blocking / unresolved issues */
79
+ unresolvedIssues: z.array(z.string().trim().min(1)).readonly().default([]),
80
+ /** Source events that contributed to this snapshot */
81
+ sourceEvents: z.array(ContextSnapshotEventRefSchema).readonly().default([]),
82
+ /** Previous context this version derives from */
83
+ parentContextId: DomainEntityIdSchema.optional(),
84
+ parentVersion: z.number().int().positive().optional(),
85
+ /** Timestamp when this snapshot was created */
86
+ createdAt: z.string().trim().min(1),
87
+ /** Content digest for integrity verification */
88
+ contentDigest: z.string().regex(/^sha256:[a-f0-9]{64}$/),
89
+ })
90
+ .readonly();
91
+ // ─── ContextSummary ────────────────────────────────────────────────────────
92
+ const ContextSummarySchema = z
93
+ .object({
94
+ contextId: DomainEntityIdSchema,
95
+ version: z.number().int().positive(),
96
+ runId: RunIdSchema,
97
+ taskId: TaskIdSchema.optional(),
98
+ phase: z.string().trim().min(1),
99
+ goal: z.string().trim().min(1),
100
+ factCount: z.number().int().nonnegative(),
101
+ evidenceDigestCount: z.number().int().nonnegative(),
102
+ unresolvedIssueCount: z.number().int().nonnegative(),
103
+ contentDigest: z.string().regex(/^sha256:[a-f0-9]{64}$/),
104
+ createdAt: z.string().trim().min(1),
105
+ })
106
+ .readonly();
107
+ // ─── Helpers ───────────────────────────────────────────────────────────────
108
+ /**
109
+ * Compute a deterministic SHA-256 digest of a context snapshot's content
110
+ * (excluding the digest field itself).
111
+ */
112
+ export const computeContextDigest = (snapshot) => {
113
+ const canonical = JSON.stringify(snapshot, (_, value) => {
114
+ if (value instanceof Date)
115
+ return value.toISOString();
116
+ return value;
117
+ }, 0);
118
+ return `sha256:${createHash("sha256").update(canonical, "utf8").digest("hex")}`;
119
+ };
120
+ /**
121
+ * Create a lightweight summary from a full ContextSnapshot.
122
+ */
123
+ export const toContextSummary = (snapshot) => {
124
+ return {
125
+ contextId: snapshot.contextId,
126
+ version: snapshot.version,
127
+ runId: snapshot.runId,
128
+ taskId: snapshot.taskId,
129
+ phase: snapshot.phase,
130
+ goal: snapshot.goal,
131
+ factCount: snapshot.facts.length,
132
+ evidenceDigestCount: snapshot.evidenceDigests.length,
133
+ unresolvedIssueCount: snapshot.unresolvedIssues.length,
134
+ contentDigest: snapshot.contentDigest,
135
+ createdAt: snapshot.createdAt,
136
+ };
137
+ };
138
+ // ─── Exports ───────────────────────────────────────────────────────────────
139
+ export { ContextEvidenceDigestSchema, ContextFactKindSchema, ContextFactSchema, ContextSnapshotEventRefSchema, ContextSnapshotSchema, ContextSummarySchema, ContextWorktreeSchema, };
140
+ //# sourceMappingURL=context-snapshot.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"context-snapshot.js","sourceRoot":"","sources":["../../src/domain/context-snapshot.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AACxC,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAEvB,OAAO,EACL,oBAAoB,EACpB,gBAAgB,EAChB,WAAW,EACX,mBAAmB,EACnB,YAAY,GACb,MAAM,aAAa,CAAA;AAEpB,8EAA8E;AAE9E,MAAM,qBAAqB,GAAG,CAAC,CAAC,IAAI,CAAC;IACnC,aAAa;IACb,YAAY;IACZ,OAAO;IACP,UAAU;IACV,kBAAkB;IAClB,YAAY;IACZ,WAAW;CACZ,CAAC,CAAA;AAEF,MAAM,iBAAiB,GAAG,CAAC;KACxB,MAAM,CAAC;IACN,MAAM,EAAE,oBAAoB;IAC5B,IAAI,EAAE,qBAAqB;IAC3B,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAC/B,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACjC,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC;IACtD,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;IAC9C,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;IAClD,QAAQ,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;CAClE,CAAC;KACD,QAAQ,EAAE,CAAA;AAEb,8EAA8E;AAE9E,MAAM,2BAA2B,GAAG,CAAC;KAClC,MAAM,CAAC;IACN,KAAK,EAAE,gBAAgB;IACvB,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,uBAAuB,CAAC;IACxD,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACpC,YAAY,EAAE,YAAY,CAAC,QAAQ,EAAE;IACrC,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACnC,SAAS,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,OAAO,EAAE,SAAS,CAAC,CAAC;CACjD,CAAC;KACD,QAAQ,EAAE,CAAA;AAEb,8EAA8E;AAE9E,MAAM,qBAAqB,GAAG,CAAC;KAC5B,MAAM,CAAC;IACN,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACvC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;IAC3C,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;IAC3C,KAAK,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC;CAClC,CAAC;KACD,QAAQ,EAAE,CAAA;AAEb,8EAA8E;AAE9E,MAAM,6BAA6B,GAAG,CAAC;KACpC,MAAM,CAAC;IACN,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACjC,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACnC,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;CACpC,CAAC;KACD,QAAQ,EAAE,CAAA;AAEb,MAAM,qBAAqB,GAAG,CAAC;KAC5B,MAAM,CAAC;IACN,aAAa,EAAE,mBAAmB;IAClC,SAAS,EAAE,oBAAoB;IAC/B,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE;IACpC,KAAK,EAAE,WAAW;IAClB,MAAM,EAAE,YAAY,CAAC,QAAQ,EAAE;IAC/B,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC;IAClD,+EAA+E;IAC/E,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC;IAClD,6CAA6C;IAC7C,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAC9B,wBAAwB;IACxB,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC;IAC/C,kFAAkF;IAClF,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC;IACxD,gDAAgD;IAChD,eAAe,EAAE,CAAC,CAAC,KAAK,CAAC,2BAA2B,CAAC,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC;IAC5E,sCAAsC;IACtC,QAAQ,EAAE,qBAAqB,CAAC,QAAQ,EAAE;IAC1C,mCAAmC;IACnC,YAAY,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC;IACtE,8BAA8B;IAC9B,sBAAsB,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC;IAChF,mCAAmC;IACnC,gBAAgB,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC;IAC1E,sDAAsD;IACtD,YAAY,EAAE,CAAC,CAAC,KAAK,CAAC,6BAA6B,CAAC,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC;IAC3E,iDAAiD;IACjD,eAAe,EAAE,oBAAoB,CAAC,QAAQ,EAAE;IAChD,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IACrD,+CAA+C;IAC/C,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACnC,gDAAgD;IAChD,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,uBAAuB,CAAC;CACzD,CAAC;KACD,QAAQ,EAAE,CAAA;AAEb,8EAA8E;AAE9E,MAAM,oBAAoB,GAAG,CAAC;KAC3B,MAAM,CAAC;IACN,SAAS,EAAE,oBAAoB;IAC/B,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE;IACpC,KAAK,EAAE,WAAW;IAClB,MAAM,EAAE,YAAY,CAAC,QAAQ,EAAE;IAC/B,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAC/B,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAC9B,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,WAAW,EAAE;IACzC,mBAAmB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,WAAW,EAAE;IACnD,oBAAoB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,WAAW,EAAE;IACpD,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,uBAAuB,CAAC;IACxD,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;CACpC,CAAC;KACD,QAAQ,EAAE,CAAA;AAEb,8EAA8E;AAE9E;;;GAGG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAClC,QAAsE,EAC9D,EAAE;IACV,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAC9B,QAAQ,EACR,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE;QACX,IAAI,KAAK,YAAY,IAAI;YAAE,OAAO,KAAK,CAAC,WAAW,EAAE,CAAA;QACrD,OAAO,KAAgB,CAAA;IACzB,CAAC,EACD,CAAC,CACF,CAAA;IACD,OAAO,UAAU,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAA;AACjF,CAAC,CAAA;AAED;;GAEG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAC9B,QAA+C,EACT,EAAE;IACxC,OAAO;QACL,SAAS,EAAE,QAAQ,CAAC,SAAS;QAC7B,OAAO,EAAE,QAAQ,CAAC,OAAO;QACzB,KAAK,EAAE,QAAQ,CAAC,KAAK;QACrB,MAAM,EAAE,QAAQ,CAAC,MAAM;QACvB,KAAK,EAAE,QAAQ,CAAC,KAAK;QACrB,IAAI,EAAE,QAAQ,CAAC,IAAI;QACnB,SAAS,EAAE,QAAQ,CAAC,KAAK,CAAC,MAAM;QAChC,mBAAmB,EAAE,QAAQ,CAAC,eAAe,CAAC,MAAM;QACpD,oBAAoB,EAAE,QAAQ,CAAC,gBAAgB,CAAC,MAAM;QACtD,aAAa,EAAE,QAAQ,CAAC,aAAa;QACrC,SAAS,EAAE,QAAQ,CAAC,SAAS;KAC9B,CAAA;AACH,CAAC,CAAA;AAED,8EAA8E;AAE9E,OAAO,EACL,2BAA2B,EAC3B,qBAAqB,EACrB,iBAAiB,EACjB,6BAA6B,EAC7B,qBAAqB,EACrB,oBAAoB,EACpB,qBAAqB,GACtB,CAAA"}
@@ -2,10 +2,14 @@ export type { GitWorkspaceState, NonGitWorkspaceState, RunWorkspace, WorkspaceGi
2
2
  export { createDefaultRunWorkspace, RunWorkspaceSchema, WorkspaceGitStateSchema, } from "../workspace/index.js";
3
3
  export type { AgentResult } from "./agent-result.js";
4
4
  export { AgentResultSchema } from "./agent-result.js";
5
+ export type { ClarificationAnswer, ClarificationQuestion, ClarificationQuestionStatus, ClarificationState, } from "./clarification.js";
6
+ export { ClarificationAnswerSchema, ClarificationQuestionSchema, ClarificationQuestionStatusSchema, ClarificationStateSchema, canAnswerQuestion, createClarificationQuestion, isQuestionTerminal, } from "./clarification.js";
5
7
  export type { ComplexityAssessment, ComplexityTier, Confidence, ExecutionRoute, ReassessmentEvent, } from "./complexity.js";
6
8
  export { ComplexityAssessmentSchema, ComplexityTierSchema, ConfidenceSchema, ExecutionRouteSchema, ReassessmentEventSchema, } from "./complexity.js";
7
9
  export type { ContextPackage } from "./context-package.js";
8
10
  export { ContextGapKindSchema, ContextPackageSchema } from "./context-package.js";
11
+ export type { ContextEvidenceDigest, ContextFact, ContextFactKind, ContextSnapshot, ContextSummary, ContextWorktree, } from "./context-snapshot.js";
12
+ export { ContextEvidenceDigestSchema, ContextFactKindSchema, ContextFactSchema, ContextSnapshotEventRefSchema, ContextSnapshotSchema, ContextSummarySchema, ContextWorktreeSchema, computeContextDigest, toContextSummary, } from "./context-snapshot.js";
9
13
  export type { Evidence, VerificationOutcome } from "./evidence.js";
10
14
  export { EvidenceSchema, redactEvidenceSummary } from "./evidence.js";
11
15
  export type { Failure } from "./failure.js";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/domain/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/domain/index.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,9 @@
1
1
  export { createDefaultRunWorkspace, RunWorkspaceSchema, WorkspaceGitStateSchema, } from "../workspace/index.js";
2
2
  export { AgentResultSchema } from "./agent-result.js";
3
+ export { ClarificationAnswerSchema, ClarificationQuestionSchema, ClarificationQuestionStatusSchema, ClarificationStateSchema, canAnswerQuestion, createClarificationQuestion, isQuestionTerminal, } from "./clarification.js";
3
4
  export { ComplexityAssessmentSchema, ComplexityTierSchema, ConfidenceSchema, ExecutionRouteSchema, ReassessmentEventSchema, } from "./complexity.js";
4
5
  export { ContextGapKindSchema, ContextPackageSchema } from "./context-package.js";
6
+ export { ContextEvidenceDigestSchema, ContextFactKindSchema, ContextFactSchema, ContextSnapshotEventRefSchema, ContextSnapshotSchema, ContextSummarySchema, ContextWorktreeSchema, computeContextDigest, toContextSummary, } from "./context-snapshot.js";
5
7
  export { EvidenceSchema, redactEvidenceSummary } from "./evidence.js";
6
8
  export { FailureSchema } from "./failure.js";
7
9
  export { PlanReviewSchema } from "./plan-artifacts.js";
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/domain/index.ts"],"names":[],"mappings":"AAMA,OAAO,EACL,yBAAyB,EACzB,kBAAkB,EAClB,uBAAuB,GACxB,MAAM,uBAAuB,CAAA;AAE9B,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAA;AAQrD,OAAO,EACL,0BAA0B,EAC1B,oBAAoB,EACpB,gBAAgB,EAChB,oBAAoB,EACpB,uBAAuB,GACxB,MAAM,iBAAiB,CAAA;AAExB,OAAO,EAAE,oBAAoB,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAA;AAEjF,OAAO,EAAE,cAAc,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAA;AAErE,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAA;AAE5C,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAA;AAEtD,OAAO,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAA;AAE3D,OAAO,EAAE,uBAAuB,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAEnE,OAAO,EACL,sBAAsB,EACtB,4BAA4B,EAC5B,iBAAiB,GAClB,MAAM,kBAAkB,CAAA;AAYzB,OAAO,EAAE,uBAAuB,EAAE,SAAS,EAAE,MAAM,UAAU,CAAA;AAE7D,OAAO,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAA;AAYzD,OAAO,EACL,2BAA2B,EAC3B,yBAAyB,EACzB,eAAe,EACf,gBAAgB,EAChB,kBAAkB,EAClB,uBAAuB,EACvB,UAAU,EACV,wBAAwB,EACxB,kBAAkB,EAClB,mBAAmB,EACnB,WAAW,EACX,eAAe,EACf,mBAAmB,EACnB,YAAY,EACZ,gBAAgB,GACjB,MAAM,aAAa,CAAA;AASpB,OAAO,EACL,kBAAkB,EAClB,gBAAgB,EAChB,4BAA4B,EAC5B,iBAAiB,EACjB,eAAe,EACf,UAAU,EACV,yBAAyB,GAC1B,MAAM,WAAW,CAAA;AAElB,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/domain/index.ts"],"names":[],"mappings":"AAMA,OAAO,EACL,yBAAyB,EACzB,kBAAkB,EAClB,uBAAuB,GACxB,MAAM,uBAAuB,CAAA;AAE9B,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAA;AAOrD,OAAO,EACL,yBAAyB,EACzB,2BAA2B,EAC3B,iCAAiC,EACjC,wBAAwB,EACxB,iBAAiB,EACjB,2BAA2B,EAC3B,kBAAkB,GACnB,MAAM,oBAAoB,CAAA;AAQ3B,OAAO,EACL,0BAA0B,EAC1B,oBAAoB,EACpB,gBAAgB,EAChB,oBAAoB,EACpB,uBAAuB,GACxB,MAAM,iBAAiB,CAAA;AAExB,OAAO,EAAE,oBAAoB,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAA;AASjF,OAAO,EACL,2BAA2B,EAC3B,qBAAqB,EACrB,iBAAiB,EACjB,6BAA6B,EAC7B,qBAAqB,EACrB,oBAAoB,EACpB,qBAAqB,EACrB,oBAAoB,EACpB,gBAAgB,GACjB,MAAM,uBAAuB,CAAA;AAE9B,OAAO,EAAE,cAAc,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAA;AAErE,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAA;AAE5C,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAA;AAEtD,OAAO,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAA;AAE3D,OAAO,EAAE,uBAAuB,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAEnE,OAAO,EACL,sBAAsB,EACtB,4BAA4B,EAC5B,iBAAiB,GAClB,MAAM,kBAAkB,CAAA;AAYzB,OAAO,EAAE,uBAAuB,EAAE,SAAS,EAAE,MAAM,UAAU,CAAA;AAE7D,OAAO,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAA;AAYzD,OAAO,EACL,2BAA2B,EAC3B,yBAAyB,EACzB,eAAe,EACf,gBAAgB,EAChB,kBAAkB,EAClB,uBAAuB,EACvB,UAAU,EACV,wBAAwB,EACxB,kBAAkB,EAClB,mBAAmB,EACnB,WAAW,EACX,eAAe,EACf,mBAAmB,EACnB,YAAY,EACZ,gBAAgB,GACjB,MAAM,aAAa,CAAA;AASpB,OAAO,EACL,kBAAkB,EAClB,gBAAgB,EAChB,4BAA4B,EAC5B,iBAAiB,EACjB,eAAe,EACf,UAAU,EACV,yBAAyB,GAC1B,MAAM,WAAW,CAAA;AAElB,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAA"}
@@ -611,6 +611,65 @@ export declare const ReportSchema: z.ZodReadonly<z.ZodObject<{
611
611
  }, z.core.$strip>>>>;
612
612
  constraints: z.ZodReadonly<z.ZodArray<z.ZodString>>;
613
613
  }, z.core.$strip>>>;
614
+ contextSnapshot: z.ZodOptional<z.ZodReadonly<z.ZodObject<{
615
+ schemaVersion: z.ZodLiteral<"1.0.0">;
616
+ contextId: z.ZodString;
617
+ version: z.ZodNumber;
618
+ runId: z.core.$ZodBranded<z.ZodString, "RunId">;
619
+ taskId: z.ZodOptional<z.core.$ZodBranded<z.ZodString, "TaskId">>;
620
+ attempt: z.ZodDefault<z.ZodNumber>;
621
+ phase: z.ZodDefault<z.ZodString>;
622
+ goal: z.ZodString;
623
+ scope: z.ZodDefault<z.ZodString>;
624
+ facts: z.ZodDefault<z.ZodReadonly<z.ZodArray<z.ZodReadonly<z.ZodObject<{
625
+ factId: z.ZodString;
626
+ kind: z.ZodEnum<{
627
+ requirement: "requirement";
628
+ constraint: "constraint";
629
+ scope: "scope";
630
+ evidence: "evidence";
631
+ unresolved_issue: "unresolved_issue";
632
+ governance: "governance";
633
+ workspace: "workspace";
634
+ }>;
635
+ label: z.ZodString;
636
+ summary: z.ZodString;
637
+ priority: z.ZodDefault<z.ZodNumber>;
638
+ sourceRef: z.ZodOptional<z.ZodString>;
639
+ sourceEventId: z.ZodOptional<z.ZodString>;
640
+ metadata: z.ZodOptional<z.ZodReadonly<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
641
+ }, z.core.$strip>>>>>;
642
+ evidenceDigests: z.ZodDefault<z.ZodReadonly<z.ZodArray<z.ZodReadonly<z.ZodObject<{
643
+ refId: z.core.$ZodBranded<z.ZodString, "EvidenceId">;
644
+ summaryDigest: z.ZodString;
645
+ sourceRole: z.ZodString;
646
+ sourceTaskId: z.ZodOptional<z.core.$ZodBranded<z.ZodString, "TaskId">>;
647
+ createdAt: z.ZodString;
648
+ freshness: z.ZodEnum<{
649
+ fresh: "fresh";
650
+ stale: "stale";
651
+ expired: "expired";
652
+ }>;
653
+ }, z.core.$strip>>>>>;
654
+ worktree: z.ZodOptional<z.ZodReadonly<z.ZodObject<{
655
+ executionRoot: z.ZodString;
656
+ branch: z.ZodOptional<z.ZodString>;
657
+ commit: z.ZodOptional<z.ZodString>;
658
+ dirty: z.ZodDefault<z.ZodBoolean>;
659
+ }, z.core.$strip>>>;
660
+ allowedPaths: z.ZodDefault<z.ZodReadonly<z.ZodArray<z.ZodString>>>;
661
+ acceptanceCriterionIds: z.ZodDefault<z.ZodReadonly<z.ZodArray<z.ZodString>>>;
662
+ unresolvedIssues: z.ZodDefault<z.ZodReadonly<z.ZodArray<z.ZodString>>>;
663
+ sourceEvents: z.ZodDefault<z.ZodReadonly<z.ZodArray<z.ZodReadonly<z.ZodObject<{
664
+ eventId: z.ZodString;
665
+ eventType: z.ZodString;
666
+ timestamp: z.ZodString;
667
+ }, z.core.$strip>>>>>;
668
+ parentContextId: z.ZodOptional<z.ZodString>;
669
+ parentVersion: z.ZodOptional<z.ZodNumber>;
670
+ createdAt: z.ZodString;
671
+ contentDigest: z.ZodString;
672
+ }, z.core.$strip>>>;
614
673
  planReview: z.ZodOptional<z.ZodReadonly<z.ZodObject<{
615
674
  schemaVersion: z.ZodLiteral<"1.0.0">;
616
675
  reviewId: z.ZodString;
@@ -1425,6 +1484,65 @@ export declare const ReportSchema: z.ZodReadonly<z.ZodObject<{
1425
1484
  }, z.core.$strip>>>>;
1426
1485
  constraints: z.ZodReadonly<z.ZodArray<z.ZodString>>;
1427
1486
  }, z.core.$strip>>>;
1487
+ contextSnapshot: z.ZodOptional<z.ZodReadonly<z.ZodObject<{
1488
+ schemaVersion: z.ZodLiteral<"1.0.0">;
1489
+ contextId: z.ZodString;
1490
+ version: z.ZodNumber;
1491
+ runId: z.core.$ZodBranded<z.ZodString, "RunId">;
1492
+ taskId: z.ZodOptional<z.core.$ZodBranded<z.ZodString, "TaskId">>;
1493
+ attempt: z.ZodDefault<z.ZodNumber>;
1494
+ phase: z.ZodDefault<z.ZodString>;
1495
+ goal: z.ZodString;
1496
+ scope: z.ZodDefault<z.ZodString>;
1497
+ facts: z.ZodDefault<z.ZodReadonly<z.ZodArray<z.ZodReadonly<z.ZodObject<{
1498
+ factId: z.ZodString;
1499
+ kind: z.ZodEnum<{
1500
+ requirement: "requirement";
1501
+ constraint: "constraint";
1502
+ scope: "scope";
1503
+ evidence: "evidence";
1504
+ unresolved_issue: "unresolved_issue";
1505
+ governance: "governance";
1506
+ workspace: "workspace";
1507
+ }>;
1508
+ label: z.ZodString;
1509
+ summary: z.ZodString;
1510
+ priority: z.ZodDefault<z.ZodNumber>;
1511
+ sourceRef: z.ZodOptional<z.ZodString>;
1512
+ sourceEventId: z.ZodOptional<z.ZodString>;
1513
+ metadata: z.ZodOptional<z.ZodReadonly<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
1514
+ }, z.core.$strip>>>>>;
1515
+ evidenceDigests: z.ZodDefault<z.ZodReadonly<z.ZodArray<z.ZodReadonly<z.ZodObject<{
1516
+ refId: z.core.$ZodBranded<z.ZodString, "EvidenceId">;
1517
+ summaryDigest: z.ZodString;
1518
+ sourceRole: z.ZodString;
1519
+ sourceTaskId: z.ZodOptional<z.core.$ZodBranded<z.ZodString, "TaskId">>;
1520
+ createdAt: z.ZodString;
1521
+ freshness: z.ZodEnum<{
1522
+ fresh: "fresh";
1523
+ stale: "stale";
1524
+ expired: "expired";
1525
+ }>;
1526
+ }, z.core.$strip>>>>>;
1527
+ worktree: z.ZodOptional<z.ZodReadonly<z.ZodObject<{
1528
+ executionRoot: z.ZodString;
1529
+ branch: z.ZodOptional<z.ZodString>;
1530
+ commit: z.ZodOptional<z.ZodString>;
1531
+ dirty: z.ZodDefault<z.ZodBoolean>;
1532
+ }, z.core.$strip>>>;
1533
+ allowedPaths: z.ZodDefault<z.ZodReadonly<z.ZodArray<z.ZodString>>>;
1534
+ acceptanceCriterionIds: z.ZodDefault<z.ZodReadonly<z.ZodArray<z.ZodString>>>;
1535
+ unresolvedIssues: z.ZodDefault<z.ZodReadonly<z.ZodArray<z.ZodString>>>;
1536
+ sourceEvents: z.ZodDefault<z.ZodReadonly<z.ZodArray<z.ZodReadonly<z.ZodObject<{
1537
+ eventId: z.ZodString;
1538
+ eventType: z.ZodString;
1539
+ timestamp: z.ZodString;
1540
+ }, z.core.$strip>>>>>;
1541
+ parentContextId: z.ZodOptional<z.ZodString>;
1542
+ parentVersion: z.ZodOptional<z.ZodNumber>;
1543
+ createdAt: z.ZodString;
1544
+ contentDigest: z.ZodString;
1545
+ }, z.core.$strip>>>;
1428
1546
  planReview: z.ZodOptional<z.ZodReadonly<z.ZodObject<{
1429
1547
  schemaVersion: z.ZodLiteral<"1.0.0">;
1430
1548
  reviewId: z.ZodString;
@@ -1 +1 @@
1
- {"version":3,"file":"report.d.ts","sourceRoot":"","sources":["../../src/domain/report.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"report.d.ts","sourceRoot":"","sources":["../../src/domain/report.ts"],"names":[],"mappings":"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"}