@claudexor/schema 3.22.0 → 3.23.1

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 (65) hide show
  1. package/dist/agent-capabilities.d.ts +8 -8
  2. package/dist/agent-capabilities.js +1 -1
  3. package/dist/agent-capabilities.js.map +1 -1
  4. package/dist/command-list.d.ts +108 -37
  5. package/dist/command-list.d.ts.map +1 -1
  6. package/dist/command-list.js +17 -35
  7. package/dist/command-list.js.map +1 -1
  8. package/dist/command-summary.d.ts +8 -0
  9. package/dist/command-summary.d.ts.map +1 -0
  10. package/dist/command-summary.js +33 -0
  11. package/dist/command-summary.js.map +1 -0
  12. package/dist/control-operation-responses.d.ts +5 -0
  13. package/dist/control-operation-responses.d.ts.map +1 -1
  14. package/dist/control-run-detail.d.ts +10 -0
  15. package/dist/control-run-detail.d.ts.map +1 -1
  16. package/dist/control-run-execution.js +1 -1
  17. package/dist/control-run-execution.js.map +1 -1
  18. package/dist/control-thread-requests.d.ts +17 -3
  19. package/dist/control-thread-requests.d.ts.map +1 -1
  20. package/dist/control-thread-requests.js +24 -1
  21. package/dist/control-thread-requests.js.map +1 -1
  22. package/dist/control.d.ts +32 -16
  23. package/dist/control.d.ts.map +1 -1
  24. package/dist/control.js +11 -1
  25. package/dist/control.js.map +1 -1
  26. package/dist/daemon-status.d.ts +177 -0
  27. package/dist/daemon-status.d.ts.map +1 -0
  28. package/dist/daemon-status.js +27 -0
  29. package/dist/daemon-status.js.map +1 -0
  30. package/dist/index.d.ts +3 -0
  31. package/dist/index.d.ts.map +1 -1
  32. package/dist/index.js +3 -0
  33. package/dist/index.js.map +1 -1
  34. package/dist/project.d.ts +2 -2
  35. package/dist/project.d.ts.map +1 -1
  36. package/dist/project.js +3 -3
  37. package/dist/project.js.map +1 -1
  38. package/dist/run-list-page.d.ts +74 -0
  39. package/dist/run-list-page.d.ts.map +1 -0
  40. package/dist/run-list-page.js +85 -0
  41. package/dist/run-list-page.js.map +1 -0
  42. package/dist/run-strategy.d.ts +18 -0
  43. package/dist/run-strategy.d.ts.map +1 -1
  44. package/dist/run-strategy.js +15 -0
  45. package/dist/run-strategy.js.map +1 -1
  46. package/dist/thread.d.ts +24 -10
  47. package/dist/thread.d.ts.map +1 -1
  48. package/dist/thread.js +14 -4
  49. package/dist/thread.js.map +1 -1
  50. package/generated/AgentCapabilityCatalog.schema.json +4 -3
  51. package/generated/CommandListQuery.schema.json +204 -0
  52. package/generated/ControlDaemonStatus.schema.json +150 -0
  53. package/generated/ControlProjectRemoveReceipt.schema.json +1 -1
  54. package/generated/ControlRunAgainDraft.schema.json +1 -1
  55. package/generated/ControlRunDetail.schema.json +8 -0
  56. package/generated/ControlRunListResponse.schema.json +8 -0
  57. package/generated/ControlRunStartRequest.schema.json +1 -1
  58. package/generated/ControlRunSummary.schema.json +8 -0
  59. package/generated/ControlThread.schema.json +11 -2
  60. package/generated/ControlThreadCreateRequest.schema.json +7 -2
  61. package/generated/ControlThreadDetail.schema.json +11 -2
  62. package/generated/ControlThreadListResponse.schema.json +11 -2
  63. package/generated/RunListQuery.schema.json +66 -0
  64. package/generated/Thread.schema.json +12 -3
  65. package/package.json +2 -2
@@ -0,0 +1,177 @@
1
+ import { z } from "zod/v3";
2
+ export declare const DaemonMemoryFacts: z.ZodObject<{
3
+ heapUsedBytes: z.ZodNumber;
4
+ heapLimitBytes: z.ZodNumber;
5
+ rssBytes: z.ZodNumber;
6
+ externalBytes: z.ZodNumber;
7
+ nodeHeapArgs: z.ZodArray<z.ZodString, "many">;
8
+ atAdmission: z.ZodNullable<z.ZodObject<{
9
+ heapUsedBytes: z.ZodNumber;
10
+ rssBytes: z.ZodNumber;
11
+ at: z.ZodString;
12
+ }, "strip", z.ZodTypeAny, {
13
+ heapUsedBytes: number;
14
+ rssBytes: number;
15
+ at: string;
16
+ }, {
17
+ heapUsedBytes: number;
18
+ rssBytes: number;
19
+ at: string;
20
+ }>>;
21
+ sampledAt: z.ZodString;
22
+ }, "strip", z.ZodTypeAny, {
23
+ heapUsedBytes: number;
24
+ heapLimitBytes: number;
25
+ rssBytes: number;
26
+ externalBytes: number;
27
+ nodeHeapArgs: string[];
28
+ atAdmission: {
29
+ heapUsedBytes: number;
30
+ rssBytes: number;
31
+ at: string;
32
+ } | null;
33
+ sampledAt: string;
34
+ }, {
35
+ heapUsedBytes: number;
36
+ heapLimitBytes: number;
37
+ rssBytes: number;
38
+ externalBytes: number;
39
+ nodeHeapArgs: string[];
40
+ atAdmission: {
41
+ heapUsedBytes: number;
42
+ rssBytes: number;
43
+ at: string;
44
+ } | null;
45
+ sampledAt: string;
46
+ }>;
47
+ export type DaemonMemoryFacts = z.infer<typeof DaemonMemoryFacts>;
48
+ /** Authenticated process facts, separate from the strict protocol handshake. */
49
+ export declare const ControlDaemonStatus: z.ZodObject<{
50
+ ok: z.ZodLiteral<true>;
51
+ uptime_ms: z.ZodNumber;
52
+ queue: z.ZodNumber;
53
+ running: z.ZodBoolean;
54
+ active: z.ZodNumber;
55
+ jobs: z.ZodNumber;
56
+ stopping: z.ZodBoolean;
57
+ servingMode: z.ZodEnum<["normal", "recovery_only"]>;
58
+ capacity: z.ZodObject<{
59
+ maxConcurrent: z.ZodNumber;
60
+ maxCouncilMembers: z.ZodOptional<z.ZodNumber>;
61
+ maxDeepScanWidth: z.ZodOptional<z.ZodNumber>;
62
+ maxParallelCandidates: z.ZodOptional<z.ZodNumber>;
63
+ }, "strip", z.ZodTypeAny, {
64
+ maxConcurrent: number;
65
+ maxCouncilMembers?: number | undefined;
66
+ maxDeepScanWidth?: number | undefined;
67
+ maxParallelCandidates?: number | undefined;
68
+ }, {
69
+ maxConcurrent: number;
70
+ maxCouncilMembers?: number | undefined;
71
+ maxDeepScanWidth?: number | undefined;
72
+ maxParallelCandidates?: number | undefined;
73
+ }>;
74
+ memory: z.ZodObject<{
75
+ heapUsedBytes: z.ZodNumber;
76
+ heapLimitBytes: z.ZodNumber;
77
+ rssBytes: z.ZodNumber;
78
+ externalBytes: z.ZodNumber;
79
+ nodeHeapArgs: z.ZodArray<z.ZodString, "many">;
80
+ atAdmission: z.ZodNullable<z.ZodObject<{
81
+ heapUsedBytes: z.ZodNumber;
82
+ rssBytes: z.ZodNumber;
83
+ at: z.ZodString;
84
+ }, "strip", z.ZodTypeAny, {
85
+ heapUsedBytes: number;
86
+ rssBytes: number;
87
+ at: string;
88
+ }, {
89
+ heapUsedBytes: number;
90
+ rssBytes: number;
91
+ at: string;
92
+ }>>;
93
+ sampledAt: z.ZodString;
94
+ }, "strip", z.ZodTypeAny, {
95
+ heapUsedBytes: number;
96
+ heapLimitBytes: number;
97
+ rssBytes: number;
98
+ externalBytes: number;
99
+ nodeHeapArgs: string[];
100
+ atAdmission: {
101
+ heapUsedBytes: number;
102
+ rssBytes: number;
103
+ at: string;
104
+ } | null;
105
+ sampledAt: string;
106
+ }, {
107
+ heapUsedBytes: number;
108
+ heapLimitBytes: number;
109
+ rssBytes: number;
110
+ externalBytes: number;
111
+ nodeHeapArgs: string[];
112
+ atAdmission: {
113
+ heapUsedBytes: number;
114
+ rssBytes: number;
115
+ at: string;
116
+ } | null;
117
+ sampledAt: string;
118
+ }>;
119
+ }, "strip", z.ZodTypeAny, {
120
+ ok: true;
121
+ uptime_ms: number;
122
+ queue: number;
123
+ running: boolean;
124
+ active: number;
125
+ jobs: number;
126
+ stopping: boolean;
127
+ servingMode: "normal" | "recovery_only";
128
+ capacity: {
129
+ maxConcurrent: number;
130
+ maxCouncilMembers?: number | undefined;
131
+ maxDeepScanWidth?: number | undefined;
132
+ maxParallelCandidates?: number | undefined;
133
+ };
134
+ memory: {
135
+ heapUsedBytes: number;
136
+ heapLimitBytes: number;
137
+ rssBytes: number;
138
+ externalBytes: number;
139
+ nodeHeapArgs: string[];
140
+ atAdmission: {
141
+ heapUsedBytes: number;
142
+ rssBytes: number;
143
+ at: string;
144
+ } | null;
145
+ sampledAt: string;
146
+ };
147
+ }, {
148
+ ok: true;
149
+ uptime_ms: number;
150
+ queue: number;
151
+ running: boolean;
152
+ active: number;
153
+ jobs: number;
154
+ stopping: boolean;
155
+ servingMode: "normal" | "recovery_only";
156
+ capacity: {
157
+ maxConcurrent: number;
158
+ maxCouncilMembers?: number | undefined;
159
+ maxDeepScanWidth?: number | undefined;
160
+ maxParallelCandidates?: number | undefined;
161
+ };
162
+ memory: {
163
+ heapUsedBytes: number;
164
+ heapLimitBytes: number;
165
+ rssBytes: number;
166
+ externalBytes: number;
167
+ nodeHeapArgs: string[];
168
+ atAdmission: {
169
+ heapUsedBytes: number;
170
+ rssBytes: number;
171
+ at: string;
172
+ } | null;
173
+ sampledAt: string;
174
+ };
175
+ }>;
176
+ export type ControlDaemonStatus = z.infer<typeof ControlDaemonStatus>;
177
+ //# sourceMappingURL=daemon-status.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"daemon-status.d.ts","sourceRoot":"","sources":["../src/daemon-status.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAC;AAK3B,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAQ5B,CAAC;AACH,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAElE,gFAAgF;AAChF,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAW9B,CAAC;AACH,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC"}
@@ -0,0 +1,27 @@
1
+ import { z } from "zod/v3";
2
+ import { IsoTimestamp } from "./primitives.js";
3
+ import { RuntimeConcurrencyState } from "./runtime-concurrency.js";
4
+ const bytes = z.number().int().nonnegative();
5
+ export const DaemonMemoryFacts = z.object({
6
+ heapUsedBytes: bytes,
7
+ heapLimitBytes: bytes,
8
+ rssBytes: bytes,
9
+ externalBytes: bytes,
10
+ nodeHeapArgs: z.array(z.string()),
11
+ atAdmission: z.object({ heapUsedBytes: bytes, rssBytes: bytes, at: IsoTimestamp }).nullable(),
12
+ sampledAt: IsoTimestamp,
13
+ });
14
+ /** Authenticated process facts, separate from the strict protocol handshake. */
15
+ export const ControlDaemonStatus = z.object({
16
+ ok: z.literal(true),
17
+ uptime_ms: z.number().nonnegative(),
18
+ queue: z.number().int().nonnegative(),
19
+ running: z.boolean(),
20
+ active: z.number().int().nonnegative(),
21
+ jobs: z.number().int().nonnegative(),
22
+ stopping: z.boolean(),
23
+ servingMode: z.enum(["normal", "recovery_only"]),
24
+ capacity: RuntimeConcurrencyState.shape.effective.partial().required({ maxConcurrent: true }),
25
+ memory: DaemonMemoryFacts,
26
+ });
27
+ //# sourceMappingURL=daemon-status.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"daemon-status.js","sourceRoot":"","sources":["../src/daemon-status.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAC;AAC3B,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,uBAAuB,EAAE,MAAM,0BAA0B,CAAC;AAEnE,MAAM,KAAK,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,WAAW,EAAE,CAAC;AAC7C,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,CAAC,MAAM,CAAC;IACxC,aAAa,EAAE,KAAK;IACpB,cAAc,EAAE,KAAK;IACrB,QAAQ,EAAE,KAAK;IACf,aAAa,EAAE,KAAK;IACpB,YAAY,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;IACjC,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,aAAa,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,EAAE,EAAE,YAAY,EAAE,CAAC,CAAC,QAAQ,EAAE;IAC7F,SAAS,EAAE,YAAY;CACxB,CAAC,CAAC;AAGH,gFAAgF;AAChF,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC1C,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC;IACnB,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,WAAW,EAAE;IACnC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,WAAW,EAAE;IACrC,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE;IACpB,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,WAAW,EAAE;IACtC,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,WAAW,EAAE;IACpC,QAAQ,EAAE,CAAC,CAAC,OAAO,EAAE;IACrB,WAAW,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,eAAe,CAAC,CAAC;IAChD,QAAQ,EAAE,uBAAuB,CAAC,KAAK,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC,QAAQ,CAAC,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC;IAC7F,MAAM,EAAE,iBAAiB;CAC1B,CAAC,CAAC"}
package/dist/index.d.ts CHANGED
@@ -80,4 +80,7 @@ export * from "./model-operation.js";
80
80
  export * from "./run-continuity.js";
81
81
  export * from "./run-continuation.js";
82
82
  export * from "./continuation-admission.js";
83
+ export * from "./run-list-page.js";
84
+ export * from "./command-summary.js";
85
+ export * from "./daemon-status.js";
83
86
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,cAAc,iBAAiB,CAAC;AAChC,cAAc,uBAAuB,CAAC;AACtC,cAAc,kBAAkB,CAAC;AACjC,cAAc,kBAAkB,CAAC;AACjC,cAAc,oBAAoB,CAAC;AACnC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,WAAW,CAAC;AAC1B,cAAc,0BAA0B,CAAC;AACzC,cAAc,yBAAyB,CAAC;AACxC,cAAc,yBAAyB,CAAC;AACxC,cAAc,kCAAkC,CAAC;AACjD,cAAc,qBAAqB,CAAC;AACpC,cAAc,wBAAwB,CAAC;AACvC,cAAc,eAAe,CAAC;AAC9B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,cAAc,CAAC;AAC7B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,eAAe,CAAC;AAC9B,cAAc,2BAA2B,CAAC;AAC1C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,iBAAiB,CAAC;AAChC,cAAc,mBAAmB,CAAC;AAClC,cAAc,iBAAiB,CAAC;AAChC,cAAc,WAAW,CAAC;AAC1B,cAAc,cAAc,CAAC;AAC7B,cAAc,UAAU,CAAC;AACzB,cAAc,aAAa,CAAC;AAC5B,cAAc,iBAAiB,CAAC;AAChC,cAAc,cAAc,CAAC;AAC7B,cAAc,kBAAkB,CAAC;AACjC,cAAc,aAAa,CAAC;AAC5B,cAAc,kBAAkB,CAAC;AACjC,cAAc,aAAa,CAAC;AAC5B,cAAc,YAAY,CAAC;AAC3B,cAAc,iBAAiB,CAAC;AAChC,cAAc,YAAY,CAAC;AAC3B,cAAc,eAAe,CAAC;AAC9B,cAAc,eAAe,CAAC;AAC9B,cAAc,yBAAyB,CAAC;AACxC,cAAc,WAAW,CAAC;AAC1B,cAAc,aAAa,CAAC;AAC5B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,wBAAwB,CAAC;AACvC,cAAc,aAAa,CAAC;AAC5B,cAAc,0BAA0B,CAAC;AACzC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,qBAAqB,CAAC;AACpC,cAAc,aAAa,CAAC;AAC5B,cAAc,cAAc,CAAC;AAC7B,cAAc,oBAAoB,CAAC;AACnC,cAAc,cAAc,CAAC;AAC7B,cAAc,2BAA2B,CAAC;AAC1C,cAAc,mBAAmB,CAAC;AAClC,cAAc,WAAW,CAAC;AAC1B,cAAc,wBAAwB,CAAC;AACvC,cAAc,kCAAkC,CAAC;AACjD,cAAc,0BAA0B,CAAC;AACzC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,wBAAwB,CAAC;AACvC,cAAc,0BAA0B,CAAC;AACzC,cAAc,YAAY,CAAC;AAC3B,cAAc,wBAAwB,CAAC;AACvC,cAAc,oBAAoB,CAAC;AACnC,cAAc,iBAAiB,CAAC;AAChC,cAAc,qBAAqB,CAAC;AACpC,cAAc,yBAAyB,CAAC;AACxC,cAAc,wBAAwB,CAAC;AACvC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,qBAAqB,CAAC;AACpC,cAAc,sBAAsB,CAAC;AACrC,cAAc,qBAAqB,CAAC;AACpC,cAAc,uBAAuB,CAAC;AACtC,cAAc,6BAA6B,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,cAAc,iBAAiB,CAAC;AAChC,cAAc,uBAAuB,CAAC;AACtC,cAAc,kBAAkB,CAAC;AACjC,cAAc,kBAAkB,CAAC;AACjC,cAAc,oBAAoB,CAAC;AACnC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,WAAW,CAAC;AAC1B,cAAc,0BAA0B,CAAC;AACzC,cAAc,yBAAyB,CAAC;AACxC,cAAc,yBAAyB,CAAC;AACxC,cAAc,kCAAkC,CAAC;AACjD,cAAc,qBAAqB,CAAC;AACpC,cAAc,wBAAwB,CAAC;AACvC,cAAc,eAAe,CAAC;AAC9B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,cAAc,CAAC;AAC7B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,eAAe,CAAC;AAC9B,cAAc,2BAA2B,CAAC;AAC1C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,iBAAiB,CAAC;AAChC,cAAc,mBAAmB,CAAC;AAClC,cAAc,iBAAiB,CAAC;AAChC,cAAc,WAAW,CAAC;AAC1B,cAAc,cAAc,CAAC;AAC7B,cAAc,UAAU,CAAC;AACzB,cAAc,aAAa,CAAC;AAC5B,cAAc,iBAAiB,CAAC;AAChC,cAAc,cAAc,CAAC;AAC7B,cAAc,kBAAkB,CAAC;AACjC,cAAc,aAAa,CAAC;AAC5B,cAAc,kBAAkB,CAAC;AACjC,cAAc,aAAa,CAAC;AAC5B,cAAc,YAAY,CAAC;AAC3B,cAAc,iBAAiB,CAAC;AAChC,cAAc,YAAY,CAAC;AAC3B,cAAc,eAAe,CAAC;AAC9B,cAAc,eAAe,CAAC;AAC9B,cAAc,yBAAyB,CAAC;AACxC,cAAc,WAAW,CAAC;AAC1B,cAAc,aAAa,CAAC;AAC5B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,wBAAwB,CAAC;AACvC,cAAc,aAAa,CAAC;AAC5B,cAAc,0BAA0B,CAAC;AACzC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,qBAAqB,CAAC;AACpC,cAAc,aAAa,CAAC;AAC5B,cAAc,cAAc,CAAC;AAC7B,cAAc,oBAAoB,CAAC;AACnC,cAAc,cAAc,CAAC;AAC7B,cAAc,2BAA2B,CAAC;AAC1C,cAAc,mBAAmB,CAAC;AAClC,cAAc,WAAW,CAAC;AAC1B,cAAc,wBAAwB,CAAC;AACvC,cAAc,kCAAkC,CAAC;AACjD,cAAc,0BAA0B,CAAC;AACzC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,wBAAwB,CAAC;AACvC,cAAc,0BAA0B,CAAC;AACzC,cAAc,YAAY,CAAC;AAC3B,cAAc,wBAAwB,CAAC;AACvC,cAAc,oBAAoB,CAAC;AACnC,cAAc,iBAAiB,CAAC;AAChC,cAAc,qBAAqB,CAAC;AACpC,cAAc,yBAAyB,CAAC;AACxC,cAAc,wBAAwB,CAAC;AACvC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,qBAAqB,CAAC;AACpC,cAAc,sBAAsB,CAAC;AACrC,cAAc,qBAAqB,CAAC;AACpC,cAAc,uBAAuB,CAAC;AACtC,cAAc,6BAA6B,CAAC;AAE5C,cAAc,oBAAoB,CAAC;AACnC,cAAc,sBAAsB,CAAC;AACrC,cAAc,oBAAoB,CAAC"}
package/dist/index.js CHANGED
@@ -80,4 +80,7 @@ export * from "./model-operation.js";
80
80
  export * from "./run-continuity.js";
81
81
  export * from "./run-continuation.js";
82
82
  export * from "./continuation-admission.js";
83
+ export * from "./run-list-page.js";
84
+ export * from "./command-summary.js";
85
+ export * from "./daemon-status.js";
83
86
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,cAAc,iBAAiB,CAAC;AAChC,cAAc,uBAAuB,CAAC;AACtC,cAAc,kBAAkB,CAAC;AACjC,cAAc,kBAAkB,CAAC;AACjC,cAAc,oBAAoB,CAAC;AACnC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,WAAW,CAAC;AAC1B,cAAc,0BAA0B,CAAC;AACzC,cAAc,yBAAyB,CAAC;AACxC,cAAc,yBAAyB,CAAC;AACxC,cAAc,kCAAkC,CAAC;AACjD,cAAc,qBAAqB,CAAC;AACpC,cAAc,wBAAwB,CAAC;AACvC,cAAc,eAAe,CAAC;AAC9B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,cAAc,CAAC;AAC7B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,eAAe,CAAC;AAC9B,cAAc,2BAA2B,CAAC;AAC1C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,iBAAiB,CAAC;AAChC,cAAc,mBAAmB,CAAC;AAClC,cAAc,iBAAiB,CAAC;AAChC,cAAc,WAAW,CAAC;AAC1B,cAAc,cAAc,CAAC;AAC7B,cAAc,UAAU,CAAC;AACzB,cAAc,aAAa,CAAC;AAC5B,cAAc,iBAAiB,CAAC;AAChC,cAAc,cAAc,CAAC;AAC7B,cAAc,kBAAkB,CAAC;AACjC,cAAc,aAAa,CAAC;AAC5B,cAAc,kBAAkB,CAAC;AACjC,cAAc,aAAa,CAAC;AAC5B,cAAc,YAAY,CAAC;AAC3B,cAAc,iBAAiB,CAAC;AAChC,cAAc,YAAY,CAAC;AAC3B,cAAc,eAAe,CAAC;AAC9B,cAAc,eAAe,CAAC;AAC9B,cAAc,yBAAyB,CAAC;AACxC,cAAc,WAAW,CAAC;AAC1B,cAAc,aAAa,CAAC;AAC5B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,wBAAwB,CAAC;AACvC,cAAc,aAAa,CAAC;AAC5B,cAAc,0BAA0B,CAAC;AACzC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,qBAAqB,CAAC;AACpC,cAAc,aAAa,CAAC;AAC5B,cAAc,cAAc,CAAC;AAC7B,cAAc,oBAAoB,CAAC;AACnC,cAAc,cAAc,CAAC;AAC7B,cAAc,2BAA2B,CAAC;AAC1C,cAAc,mBAAmB,CAAC;AAClC,cAAc,WAAW,CAAC;AAC1B,cAAc,wBAAwB,CAAC;AACvC,cAAc,kCAAkC,CAAC;AACjD,cAAc,0BAA0B,CAAC;AACzC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,wBAAwB,CAAC;AACvC,cAAc,0BAA0B,CAAC;AACzC,cAAc,YAAY,CAAC;AAC3B,cAAc,wBAAwB,CAAC;AACvC,cAAc,oBAAoB,CAAC;AACnC,cAAc,iBAAiB,CAAC;AAChC,cAAc,qBAAqB,CAAC;AACpC,cAAc,yBAAyB,CAAC;AACxC,cAAc,wBAAwB,CAAC;AACvC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,qBAAqB,CAAC;AACpC,cAAc,sBAAsB,CAAC;AACrC,cAAc,qBAAqB,CAAC;AACpC,cAAc,uBAAuB,CAAC;AACtC,cAAc,6BAA6B,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,cAAc,iBAAiB,CAAC;AAChC,cAAc,uBAAuB,CAAC;AACtC,cAAc,kBAAkB,CAAC;AACjC,cAAc,kBAAkB,CAAC;AACjC,cAAc,oBAAoB,CAAC;AACnC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,WAAW,CAAC;AAC1B,cAAc,0BAA0B,CAAC;AACzC,cAAc,yBAAyB,CAAC;AACxC,cAAc,yBAAyB,CAAC;AACxC,cAAc,kCAAkC,CAAC;AACjD,cAAc,qBAAqB,CAAC;AACpC,cAAc,wBAAwB,CAAC;AACvC,cAAc,eAAe,CAAC;AAC9B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,cAAc,CAAC;AAC7B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,eAAe,CAAC;AAC9B,cAAc,2BAA2B,CAAC;AAC1C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,iBAAiB,CAAC;AAChC,cAAc,mBAAmB,CAAC;AAClC,cAAc,iBAAiB,CAAC;AAChC,cAAc,WAAW,CAAC;AAC1B,cAAc,cAAc,CAAC;AAC7B,cAAc,UAAU,CAAC;AACzB,cAAc,aAAa,CAAC;AAC5B,cAAc,iBAAiB,CAAC;AAChC,cAAc,cAAc,CAAC;AAC7B,cAAc,kBAAkB,CAAC;AACjC,cAAc,aAAa,CAAC;AAC5B,cAAc,kBAAkB,CAAC;AACjC,cAAc,aAAa,CAAC;AAC5B,cAAc,YAAY,CAAC;AAC3B,cAAc,iBAAiB,CAAC;AAChC,cAAc,YAAY,CAAC;AAC3B,cAAc,eAAe,CAAC;AAC9B,cAAc,eAAe,CAAC;AAC9B,cAAc,yBAAyB,CAAC;AACxC,cAAc,WAAW,CAAC;AAC1B,cAAc,aAAa,CAAC;AAC5B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,wBAAwB,CAAC;AACvC,cAAc,aAAa,CAAC;AAC5B,cAAc,0BAA0B,CAAC;AACzC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,qBAAqB,CAAC;AACpC,cAAc,aAAa,CAAC;AAC5B,cAAc,cAAc,CAAC;AAC7B,cAAc,oBAAoB,CAAC;AACnC,cAAc,cAAc,CAAC;AAC7B,cAAc,2BAA2B,CAAC;AAC1C,cAAc,mBAAmB,CAAC;AAClC,cAAc,WAAW,CAAC;AAC1B,cAAc,wBAAwB,CAAC;AACvC,cAAc,kCAAkC,CAAC;AACjD,cAAc,0BAA0B,CAAC;AACzC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,wBAAwB,CAAC;AACvC,cAAc,0BAA0B,CAAC;AACzC,cAAc,YAAY,CAAC;AAC3B,cAAc,wBAAwB,CAAC;AACvC,cAAc,oBAAoB,CAAC;AACnC,cAAc,iBAAiB,CAAC;AAChC,cAAc,qBAAqB,CAAC;AACpC,cAAc,yBAAyB,CAAC;AACxC,cAAc,wBAAwB,CAAC;AACvC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,qBAAqB,CAAC;AACpC,cAAc,sBAAsB,CAAC;AACrC,cAAc,qBAAqB,CAAC;AACpC,cAAc,uBAAuB,CAAC;AACtC,cAAc,6BAA6B,CAAC;AAE5C,cAAc,oBAAoB,CAAC;AACnC,cAAc,sBAAsB,CAAC;AACrC,cAAc,oBAAoB,CAAC"}
package/dist/project.d.ts CHANGED
@@ -267,7 +267,7 @@ export declare const ControlProjectRemoveReceipt: z.ZodObject<{
267
267
  }>;
268
268
  export type ControlProjectRemoveReceipt = z.infer<typeof ControlProjectRemoveReceipt>;
269
269
  /** The one caller remedy for the typed `project_not_registered` refusal (404):
270
- * the daemon raises it and the control API restores it on the wire, because the
271
- * daemon socket transport carries code/status/retryable but not requiredActions. */
270
+ * the daemon raises it and the control API preserves it on the wire; both
271
+ * transports carry the safe requiredActions alongside code/status/retryable. */
272
272
  export declare const PROJECT_NOT_REGISTERED_REQUIRED_ACTIONS: readonly string[];
273
273
  //# sourceMappingURL=project.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"project.d.ts","sourceRoot":"","sources":["../src/project.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAC;AAG3B,wDAAwD;AACxD,eAAO,MAAM,OAAO;;;;;;;;;;;;;;;;;;EASoE,CAAC;AACzF,MAAM,MAAM,OAAO,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,OAAO,CAAC,CAAC;AAE9C;;;;wEAIwE;AACxE,eAAO,MAAM,cAAc;;;;;;;;;;;;EAOiE,CAAC;AAC7F,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,cAAc,CAAC,CAAC;AAE5D,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAemC,CAAC;AAC/D,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,cAAc,CAAC,CAAC;AAE5D,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAA2D,CAAC;AACnG,MAAM,MAAM,0BAA0B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,0BAA0B,CAAC,CAAC;AAEpF,eAAO,MAAM,6BAA6B;;;;;;EAAiD,CAAC;AAC5F,MAAM,MAAM,6BAA6B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,6BAA6B,CAAC,CAAC;AAE1F,eAAO,MAAM,2BAA2B;;;;;;EAAiD,CAAC;AAC1F,MAAM,MAAM,2BAA2B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,2BAA2B,CAAC,CAAC;AAEtF,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;EAOvB,CAAC;AACZ,MAAM,MAAM,qBAAqB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AAE1E,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAWmD,CAAC;AACxF,MAAM,MAAM,uBAAuB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC;AAE9E;;;;;;;;GAQG;AACH,eAAO,MAAM,2BAA2B;;;;;;;;;;;;;;;;;;;;;;;;EAgCrC,CAAC;AACJ,MAAM,MAAM,2BAA2B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,2BAA2B,CAAC,CAAC;AAEtF;;oFAEoF;AACpF,eAAO,MAAM,uCAAuC,EAAE,SAAS,MAAM,EAEpE,CAAC"}
1
+ {"version":3,"file":"project.d.ts","sourceRoot":"","sources":["../src/project.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAC;AAG3B,wDAAwD;AACxD,eAAO,MAAM,OAAO;;;;;;;;;;;;;;;;;;EASoE,CAAC;AACzF,MAAM,MAAM,OAAO,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,OAAO,CAAC,CAAC;AAE9C;;;;wEAIwE;AACxE,eAAO,MAAM,cAAc;;;;;;;;;;;;EAOiE,CAAC;AAC7F,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,cAAc,CAAC,CAAC;AAE5D,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAemC,CAAC;AAC/D,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,cAAc,CAAC,CAAC;AAE5D,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAA2D,CAAC;AACnG,MAAM,MAAM,0BAA0B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,0BAA0B,CAAC,CAAC;AAEpF,eAAO,MAAM,6BAA6B;;;;;;EAAiD,CAAC;AAC5F,MAAM,MAAM,6BAA6B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,6BAA6B,CAAC,CAAC;AAE1F,eAAO,MAAM,2BAA2B;;;;;;EAAiD,CAAC;AAC1F,MAAM,MAAM,2BAA2B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,2BAA2B,CAAC,CAAC;AAEtF,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;EAOvB,CAAC;AACZ,MAAM,MAAM,qBAAqB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AAE1E,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAWmD,CAAC;AACxF,MAAM,MAAM,uBAAuB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC;AAE9E;;;;;;;;GAQG;AACH,eAAO,MAAM,2BAA2B;;;;;;;;;;;;;;;;;;;;;;;;EAgCrC,CAAC;AACJ,MAAM,MAAM,2BAA2B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,2BAA2B,CAAC,CAAC;AAEtF;;gFAEgF;AAChF,eAAO,MAAM,uCAAuC,EAAE,SAAS,MAAM,EAEpE,CAAC"}
package/dist/project.js CHANGED
@@ -89,13 +89,13 @@ export const ControlProjectRemoveReceipt = z
89
89
  .describe("Run artifact trees are left in place for normal GC/retention — remove never deletes run bytes or the user's project directory."),
90
90
  activeRunCheck: z
91
91
  .literal("snapshot")
92
- .describe("How the live/queued-run fence was evaluated. Always 'snapshot': the active-run set is read once (an async daemon IPC job-list read) BEFORE the synchronous removal, so a run that starts in the narrow window between the snapshot and the removal is NOT fenced. Honest disclosure of a TOCTOU race the current architecture cannot close inside the sync section; see docs/ARCHITECTURE.md."),
92
+ .describe("How the live/queued-run fence was evaluated. Always 'snapshot': the daemon reads its in-process activity projection and removes the project in the same synchronous turn, with no await between the snapshot and registry/partition mutation."),
93
93
  })
94
94
  .strict()
95
95
  .describe("DELETE /v2/projects/:id receipt: registry entry removed, journal partition archived, artifacts left to GC.");
96
96
  /** The one caller remedy for the typed `project_not_registered` refusal (404):
97
- * the daemon raises it and the control API restores it on the wire, because the
98
- * daemon socket transport carries code/status/retryable but not requiredActions. */
97
+ * the daemon raises it and the control API preserves it on the wire; both
98
+ * transports carry the safe requiredActions alongside code/status/retryable. */
99
99
  export const PROJECT_NOT_REGISTERED_REQUIRED_ACTIONS = [
100
100
  'Register the root with POST /v2/projects {"root": …} (Idempotency-Key required), or declare scope.ephemeral=true for a one-shot tree.',
101
101
  ];
@@ -1 +1 @@
1
- {"version":3,"file":"project.js","sourceRoot":"","sources":["../src/project.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"project.js","sourceRoot":"","sources":["../src/project.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,74 @@
1
+ import { z } from "zod/v3";
2
+ export interface RunListRecord {
3
+ id: string;
4
+ state: string;
5
+ createdAt?: string;
6
+ }
7
+ export declare const RunListCursor: z.ZodObject<{
8
+ createdAt: z.ZodString;
9
+ id: z.ZodString;
10
+ }, "strict", z.ZodTypeAny, {
11
+ createdAt: string;
12
+ id: string;
13
+ }, {
14
+ createdAt: string;
15
+ id: string;
16
+ }>;
17
+ export type RunListCursor = z.infer<typeof RunListCursor>;
18
+ export declare const RunListQuery: z.ZodObject<{
19
+ limit: z.ZodNumber;
20
+ state: z.ZodNullable<z.ZodEnum<["queued", "running", "succeeded", "failed", "cancelled", "interrupted"]>>;
21
+ cursor: z.ZodNullable<z.ZodObject<{
22
+ createdAt: z.ZodString;
23
+ id: z.ZodString;
24
+ }, "strict", z.ZodTypeAny, {
25
+ createdAt: string;
26
+ id: string;
27
+ }, {
28
+ createdAt: string;
29
+ id: string;
30
+ }>>;
31
+ }, "strict", z.ZodTypeAny, {
32
+ limit: number;
33
+ state: "cancelled" | "failed" | "interrupted" | "queued" | "running" | "succeeded" | null;
34
+ cursor: {
35
+ createdAt: string;
36
+ id: string;
37
+ } | null;
38
+ }, {
39
+ limit: number;
40
+ state: "cancelled" | "failed" | "interrupted" | "queued" | "running" | "succeeded" | null;
41
+ cursor: {
42
+ createdAt: string;
43
+ id: string;
44
+ } | null;
45
+ }>;
46
+ export type RunListQuery = z.infer<typeof RunListQuery>;
47
+ /** Newest-first deterministic order: `(createdAt desc, id desc)`. Records with
48
+ * no `createdAt` sort last (empty string) with `id` as the stable tiebreak, so
49
+ * the traversal is total and duplicate-free even across foreign record shapes. */
50
+ export declare function orderRunRecords<T extends RunListRecord>(records: readonly T[]): T[];
51
+ /**
52
+ * Index of the first record strictly after `cursor` within an already-ordered
53
+ * list. Comparison-based (not id-equality) so a cursor whose record was pruned
54
+ * between pages still resumes at the correct neighbor — no duplicate, no gap.
55
+ */
56
+ export declare function indexAfterCursor(ordered: readonly RunListRecord[], cursor: RunListCursor): number;
57
+ export declare function encodeRunCursor(rec: RunListRecord): string;
58
+ /** Strict opaque-cursor decode: base64url alphabet only, exactly one separator,
59
+ * non-empty id. Anything else is a typed 400 (never a silent full-list fall
60
+ * back), mirroring the QA-061 run-event cursor contract. */
61
+ export declare function decodeRunCursor(raw: string): RunListCursor;
62
+ /**
63
+ * Select one bounded page from the raw daemon records: order newest-first,
64
+ * apply the optional `state` filter, then keyset-slice by cursor + limit. All of
65
+ * it happens on the raw records BEFORE any summary is materialized, so the
66
+ * caller only fingerprints/projects the returned page — work bounded by page
67
+ * size, not total retained records (QA-052).
68
+ */
69
+ export declare function selectRunListPage<T extends RunListRecord>(records: readonly T[], query: RunListQuery): {
70
+ page: T[];
71
+ hasMore: boolean;
72
+ nextCursor: string | null;
73
+ };
74
+ //# sourceMappingURL=run-list-page.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"run-list-page.d.ts","sourceRoot":"","sources":["../src/run-list-page.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAC;AAG3B,MAAM,WAAW,aAAa;IAC5B,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AACD,eAAO,MAAM,aAAa;;;;;;;;;EAAsE,CAAC;AACjG,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,aAAa,CAAC,CAAC;AAC1D,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;EAMd,CAAC;AACZ,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,YAAY,CAAC,CAAC;AAcxD;;kFAEkF;AAClF,wBAAgB,eAAe,CAAC,CAAC,SAAS,aAAa,EAAE,OAAO,EAAE,SAAS,CAAC,EAAE,GAAG,CAAC,EAAE,CAQnF;AAUD;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,SAAS,aAAa,EAAE,EAAE,MAAM,EAAE,aAAa,GAAG,MAAM,CAIjG;AAED,wBAAgB,eAAe,CAAC,GAAG,EAAE,aAAa,GAAG,MAAM,CAE1D;AAED;;4DAE4D;AAC5D,wBAAgB,eAAe,CAAC,GAAG,EAAE,MAAM,GAAG,aAAa,CAiB1D;AAED;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAAC,CAAC,SAAS,aAAa,EACvD,OAAO,EAAE,SAAS,CAAC,EAAE,EACrB,KAAK,EAAE,YAAY,GAClB;IAAE,IAAI,EAAE,CAAC,EAAE,CAAC;IAAC,OAAO,EAAE,OAAO,CAAC;IAAC,UAAU,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,CAQ5D"}
@@ -0,0 +1,85 @@
1
+ import { z } from "zod/v3";
2
+ import { ControlRunState } from "./control.js";
3
+ export const RunListCursor = z.object({ createdAt: z.string(), id: z.string().min(1) }).strict();
4
+ export const RunListQuery = z
5
+ .object({
6
+ limit: z.number().int().min(1).max(1000),
7
+ state: ControlRunState.nullable(),
8
+ cursor: RunListCursor.nullable(),
9
+ })
10
+ .strict();
11
+ function invalidRunListQuery(message, code) {
12
+ return Object.assign(new Error(message), {
13
+ status: 400,
14
+ code,
15
+ requiredActions: code === "invalid_run_list_cursor" ? ["resnapshot"] : ["retry_with_valid_query"],
16
+ });
17
+ }
18
+ /** Newest-first deterministic order: `(createdAt desc, id desc)`. Records with
19
+ * no `createdAt` sort last (empty string) with `id` as the stable tiebreak, so
20
+ * the traversal is total and duplicate-free even across foreign record shapes. */
21
+ export function orderRunRecords(records) {
22
+ return [...records].sort((a, b) => {
23
+ const ac = a.createdAt ?? "";
24
+ const bc = b.createdAt ?? "";
25
+ if (ac !== bc)
26
+ return ac < bc ? 1 : -1;
27
+ if (a.id !== b.id)
28
+ return a.id < b.id ? 1 : -1;
29
+ return 0;
30
+ });
31
+ }
32
+ /** True when `rec` sorts strictly AFTER the cursor key in newest-first order
33
+ * (i.e. is older, or same instant with a smaller id). */
34
+ function recordSortsAfterCursor(rec, cursor) {
35
+ const rc = rec.createdAt ?? "";
36
+ if (rc !== cursor.createdAt)
37
+ return rc < cursor.createdAt;
38
+ return rec.id < cursor.id;
39
+ }
40
+ /**
41
+ * Index of the first record strictly after `cursor` within an already-ordered
42
+ * list. Comparison-based (not id-equality) so a cursor whose record was pruned
43
+ * between pages still resumes at the correct neighbor — no duplicate, no gap.
44
+ */
45
+ export function indexAfterCursor(ordered, cursor) {
46
+ let i = 0;
47
+ while (i < ordered.length && !recordSortsAfterCursor(ordered[i], cursor))
48
+ i++;
49
+ return i;
50
+ }
51
+ export function encodeRunCursor(rec) {
52
+ return Buffer.from(`${rec.createdAt ?? ""}\0${rec.id}`, "utf8").toString("base64url");
53
+ }
54
+ /** Strict opaque-cursor decode: base64url alphabet only, exactly one separator,
55
+ * non-empty id. Anything else is a typed 400 (never a silent full-list fall
56
+ * back), mirroring the QA-061 run-event cursor contract. */
57
+ export function decodeRunCursor(raw) {
58
+ if (!/^[A-Za-z0-9_-]+$/.test(raw)) {
59
+ throw invalidRunListQuery("cursor is malformed; refetch the run list and resume from its nextCursor", "invalid_run_list_cursor");
60
+ }
61
+ const decoded = Buffer.from(raw, "base64url").toString("utf8");
62
+ const sep = decoded.indexOf("\0");
63
+ const id = sep < 0 ? "" : decoded.slice(sep + 1);
64
+ if (sep < 0 || id.length === 0 || id.includes("\0")) {
65
+ throw invalidRunListQuery("cursor is malformed; refetch the run list and resume from its nextCursor", "invalid_run_list_cursor");
66
+ }
67
+ return { createdAt: decoded.slice(0, sep), id };
68
+ }
69
+ /**
70
+ * Select one bounded page from the raw daemon records: order newest-first,
71
+ * apply the optional `state` filter, then keyset-slice by cursor + limit. All of
72
+ * it happens on the raw records BEFORE any summary is materialized, so the
73
+ * caller only fingerprints/projects the returned page — work bounded by page
74
+ * size, not total retained records (QA-052).
75
+ */
76
+ export function selectRunListPage(records, query) {
77
+ const ordered = orderRunRecords(records);
78
+ const filtered = query.state ? ordered.filter((r) => r.state === query.state) : ordered;
79
+ const start = query.cursor ? indexAfterCursor(filtered, query.cursor) : 0;
80
+ const page = filtered.slice(start, start + query.limit);
81
+ const hasMore = start + page.length < filtered.length;
82
+ const tail = page[page.length - 1];
83
+ return { page, hasMore, nextCursor: hasMore && tail ? encodeRunCursor(tail) : null };
84
+ }
85
+ //# sourceMappingURL=run-list-page.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"run-list-page.js","sourceRoot":"","sources":["../src/run-list-page.ts"],"names":[],"mappings":"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"}
@@ -39,6 +39,24 @@ export interface RunExecutionWorkspaceViolation {
39
39
  retryable: false;
40
40
  requiredActions: readonly [string];
41
41
  }
42
+ /**
43
+ * Where `execution.workspaceRoot` is a real execution address: a project-scoped
44
+ * delegated run that executes the Agent live (or copies/reads its explicit
45
+ * directory footprint from there), or a read-only Ask/Plan that reads it — the
46
+ * shape a delegated thread records for every turn. Elsewhere it would be a
47
+ * dead knob or a silent redirect, so the shared normalizer refuses it.
48
+ */
49
+ export declare function runExecutionWorkspaceRootAllowed(value: {
50
+ mode?: ModeKind;
51
+ scope?: {
52
+ kind: string;
53
+ };
54
+ execution?: {
55
+ isolation?: "envelope" | "live";
56
+ delegated?: boolean;
57
+ workspaceKind?: "git" | "directory";
58
+ };
59
+ }): boolean;
42
60
  /**
43
61
  * A fresh delegated live write must name the caller-owned execution tree.
44
62
  * Exact Retry may replay the bounded historical shape whose stable scope root
@@ -1 +1 @@
1
- {"version":3,"file":"run-strategy.d.ts","sourceRoot":"","sources":["../src/run-strategy.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"run-strategy.d.ts","sourceRoot":"","sources":["../src/run-strategy.ts"],"names":[],"mappings":"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"}
@@ -32,6 +32,21 @@ export function resolveRunAccess(value, accessDefault) {
32
32
  effective: readOnlyMode ? "readonly" : requested,
33
33
  };
34
34
  }
35
+ /**
36
+ * Where `execution.workspaceRoot` is a real execution address: a project-scoped
37
+ * delegated run that executes the Agent live (or copies/reads its explicit
38
+ * directory footprint from there), or a read-only Ask/Plan that reads it — the
39
+ * shape a delegated thread records for every turn. Elsewhere it would be a
40
+ * dead knob or a silent redirect, so the shared normalizer refuses it.
41
+ */
42
+ export function runExecutionWorkspaceRootAllowed(value) {
43
+ if (value.scope?.kind !== "project" || value.execution?.delegated !== true)
44
+ return false;
45
+ const mode = value.mode ?? "agent";
46
+ if (mode !== "agent")
47
+ return true;
48
+ return value.execution.isolation === "live" || value.execution.workspaceKind === "directory";
49
+ }
35
50
  /**
36
51
  * A fresh delegated live write must name the caller-owned execution tree.
37
52
  * Exact Retry may replay the bounded historical shape whose stable scope root
@@ -1 +1 @@
1
- {"version":3,"file":"run-strategy.js","sourceRoot":"","sources":["../src/run-strategy.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"run-strategy.js","sourceRoot":"","sources":["../src/run-strategy.ts"],"names":[],"mappings":"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"}