@agent-deck/shared 1.5.0 → 1.5.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.
package/dist/index.d.ts CHANGED
@@ -7,6 +7,7 @@ export * from './schemas/playbook-patch';
7
7
  export * from './schemas/feedback-signal';
8
8
  export * from './schemas/deck-display';
9
9
  export * from './schemas/export-bundle';
10
+ export * from './schemas/session-bootstrap';
10
11
  export * from './types/api';
11
12
  export { OAuthDiscoveryResult } from './types/oauth';
12
13
  export * from './utils';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,cAAc,mBAAmB,CAAC;AAClC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,sBAAsB,CAAC;AACrC,cAAc,iBAAiB,CAAC;AAChC,cAAc,oBAAoB,CAAC;AACnC,cAAc,0BAA0B,CAAC;AACzC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,wBAAwB,CAAC;AACvC,cAAc,yBAAyB,CAAC;AAGxC,cAAc,aAAa,CAAC;AAC5B,OAAO,EAAE,oBAAoB,EAAE,MAAM,eAAe,CAAC;AAGrD,cAAc,SAAS,CAAC;AACxB,OAAO,EACL,2BAA2B,EAC3B,kBAAkB,EAClB,qBAAqB,EACrB,mBAAmB,EACnB,wBAAwB,EACxB,KAAK,qBAAqB,EAC1B,KAAK,qBAAqB,GAC3B,MAAM,6BAA6B,CAAC;AACrC,OAAO,EACL,8BAA8B,EAC9B,yBAAyB,EACzB,uBAAuB,GACxB,MAAM,4BAA4B,CAAC;AAGpC,OAAO,EACL,wBAAwB,EACxB,2BAA2B,EAC3B,uBAAuB,EACvB,2BAA2B,EAC3B,yBAAyB,GAC1B,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,cAAc,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,cAAc,mBAAmB,CAAC;AAClC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,sBAAsB,CAAC;AACrC,cAAc,iBAAiB,CAAC;AAChC,cAAc,oBAAoB,CAAC;AACnC,cAAc,0BAA0B,CAAC;AACzC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,wBAAwB,CAAC;AACvC,cAAc,yBAAyB,CAAC;AACxC,cAAc,6BAA6B,CAAC;AAG5C,cAAc,aAAa,CAAC;AAC5B,OAAO,EAAE,oBAAoB,EAAE,MAAM,eAAe,CAAC;AAGrD,cAAc,SAAS,CAAC;AACxB,OAAO,EACL,2BAA2B,EAC3B,kBAAkB,EAClB,qBAAqB,EACrB,mBAAmB,EACnB,wBAAwB,EACxB,KAAK,qBAAqB,EAC1B,KAAK,qBAAqB,GAC3B,MAAM,6BAA6B,CAAC;AACrC,OAAO,EACL,8BAA8B,EAC9B,yBAAyB,EACzB,uBAAuB,GACxB,MAAM,4BAA4B,CAAC;AAGpC,OAAO,EACL,wBAAwB,EACxB,2BAA2B,EAC3B,uBAAuB,EACvB,2BAA2B,EAC3B,yBAAyB,GAC1B,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,cAAc,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC"}
package/dist/index.js CHANGED
@@ -25,6 +25,7 @@ __exportStar(require("./schemas/playbook-patch"), exports);
25
25
  __exportStar(require("./schemas/feedback-signal"), exports);
26
26
  __exportStar(require("./schemas/deck-display"), exports);
27
27
  __exportStar(require("./schemas/export-bundle"), exports);
28
+ __exportStar(require("./schemas/session-bootstrap"), exports);
28
29
  // Additional types not covered by schemas
29
30
  __exportStar(require("./types/api"), exports);
30
31
  // Utils
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,wCAAwC;AACxC,oDAAkC;AAClC,iDAA+B;AAC/B,uDAAqC;AACrC,kDAAgC;AAChC,qDAAmC;AACnC,2DAAyC;AACzC,4DAA0C;AAC1C,yDAAuC;AACvC,0DAAwC;AAExC,0CAA0C;AAC1C,8CAA4B;AAG5B,QAAQ;AACR,0CAAwB;AACxB,mEAQqC;AAPnC,kIAAA,2BAA2B,OAAA;AAC3B,yHAAA,kBAAkB,OAAA;AAClB,4HAAA,qBAAqB,OAAA;AACrB,0HAAA,mBAAmB,OAAA;AACnB,+HAAA,wBAAwB,OAAA;AAI1B,iEAIoC;AAHlC,oIAAA,8BAA8B,OAAA;AAC9B,+HAAA,yBAAyB,OAAA;AACzB,6HAAA,uBAAuB,OAAA;AAGzB,YAAY;AACZ,yDAMkC;AALhC,wHAAA,wBAAwB,OAAA;AACxB,2HAAA,2BAA2B,OAAA;AAC3B,uHAAA,uBAAuB,OAAA;AACvB,2HAAA,2BAA2B,OAAA;AAC3B,yHAAA,yBAAyB,OAAA;AAE3B,uDAAuH;AAA9G,6GAAA,cAAc,OAAA;AAAE,iHAAA,kBAAkB,OAAA;AAAE,kHAAA,mBAAmB,OAAA;AAAE,kHAAA,mBAAmB,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,wCAAwC;AACxC,oDAAkC;AAClC,iDAA+B;AAC/B,uDAAqC;AACrC,kDAAgC;AAChC,qDAAmC;AACnC,2DAAyC;AACzC,4DAA0C;AAC1C,yDAAuC;AACvC,0DAAwC;AACxC,8DAA4C;AAE5C,0CAA0C;AAC1C,8CAA4B;AAG5B,QAAQ;AACR,0CAAwB;AACxB,mEAQqC;AAPnC,kIAAA,2BAA2B,OAAA;AAC3B,yHAAA,kBAAkB,OAAA;AAClB,4HAAA,qBAAqB,OAAA;AACrB,0HAAA,mBAAmB,OAAA;AACnB,+HAAA,wBAAwB,OAAA;AAI1B,iEAIoC;AAHlC,oIAAA,8BAA8B,OAAA;AAC9B,+HAAA,yBAAyB,OAAA;AACzB,6HAAA,uBAAuB,OAAA;AAGzB,YAAY;AACZ,yDAMkC;AALhC,wHAAA,wBAAwB,OAAA;AACxB,2HAAA,2BAA2B,OAAA;AAC3B,uHAAA,uBAAuB,OAAA;AACvB,2HAAA,2BAA2B,OAAA;AAC3B,yHAAA,yBAAyB,OAAA;AAE3B,uDAAuH;AAA9G,6GAAA,cAAc,OAAA;AAAE,iHAAA,kBAAkB,OAAA;AAAE,kHAAA,mBAAmB,OAAA;AAAE,kHAAA,mBAAmB,OAAA"}
@@ -0,0 +1,387 @@
1
+ import { z } from 'zod';
2
+ export declare const PolarityHintSchema: z.ZodEnum<["negative", "positive", "mixed", "unknown"]>;
3
+ export declare const OutcomeSignalSchema: z.ZodEnum<["pr_opened", "committed", "unknown"]>;
4
+ export declare const BootstrapHostSchema: z.ZodEnum<["claude", "cursor"]>;
5
+ export declare const FeedbackMomentSchema: z.ZodObject<{
6
+ agentAction: z.ZodString;
7
+ userReaction: z.ZodString;
8
+ polarityHint: z.ZodEnum<["negative", "positive", "mixed", "unknown"]>;
9
+ markers: z.ZodArray<z.ZodString, "many">;
10
+ followupChange: z.ZodOptional<z.ZodNullable<z.ZodString>>;
11
+ at: z.ZodOptional<z.ZodString>;
12
+ }, "strict", z.ZodTypeAny, {
13
+ agentAction: string;
14
+ userReaction: string;
15
+ polarityHint: "unknown" | "negative" | "positive" | "mixed";
16
+ markers: string[];
17
+ at?: string | undefined;
18
+ followupChange?: string | null | undefined;
19
+ }, {
20
+ agentAction: string;
21
+ userReaction: string;
22
+ polarityHint: "unknown" | "negative" | "positive" | "mixed";
23
+ markers: string[];
24
+ at?: string | undefined;
25
+ followupChange?: string | null | undefined;
26
+ }>;
27
+ export declare const IntentItemSchema: z.ZodObject<{
28
+ text: z.ZodString;
29
+ at: z.ZodOptional<z.ZodString>;
30
+ }, "strict", z.ZodTypeAny, {
31
+ text: string;
32
+ at?: string | undefined;
33
+ }, {
34
+ text: string;
35
+ at?: string | undefined;
36
+ }>;
37
+ export declare const CommandItemSchema: z.ZodObject<{
38
+ command: z.ZodString;
39
+ count: z.ZodNumber;
40
+ }, "strict", z.ZodTypeAny, {
41
+ command: string;
42
+ count: number;
43
+ }, {
44
+ command: string;
45
+ count: number;
46
+ }>;
47
+ export declare const ToolItemSchema: z.ZodObject<{
48
+ name: z.ZodString;
49
+ count: z.ZodNumber;
50
+ }, "strict", z.ZodTypeAny, {
51
+ name: string;
52
+ count: number;
53
+ }, {
54
+ name: string;
55
+ count: number;
56
+ }>;
57
+ export declare const SkillItemSchema: z.ZodObject<{
58
+ name: z.ZodString;
59
+ count: z.ZodNumber;
60
+ }, "strict", z.ZodTypeAny, {
61
+ name: string;
62
+ count: number;
63
+ }, {
64
+ name: string;
65
+ count: number;
66
+ }>;
67
+ export declare const TopFileItemSchema: z.ZodObject<{
68
+ path: z.ZodString;
69
+ edits: z.ZodNumber;
70
+ }, "strict", z.ZodTypeAny, {
71
+ path: string;
72
+ edits: number;
73
+ }, {
74
+ path: string;
75
+ edits: number;
76
+ }>;
77
+ export declare const OutcomeSchema: z.ZodObject<{
78
+ signal: z.ZodEnum<["pr_opened", "committed", "unknown"]>;
79
+ evidence: z.ZodOptional<z.ZodString>;
80
+ }, "strict", z.ZodTypeAny, {
81
+ signal: "unknown" | "pr_opened" | "committed";
82
+ evidence?: string | undefined;
83
+ }, {
84
+ signal: "unknown" | "pr_opened" | "committed";
85
+ evidence?: string | undefined;
86
+ }>;
87
+ export declare const SessionDigestSchema: z.ZodObject<{
88
+ schemaVersion: z.ZodLiteral<1>;
89
+ /** Missing on pre-M2b digests — treat as claude (PRD §12 compat). */
90
+ host: z.ZodDefault<z.ZodEnum<["claude", "cursor"]>>;
91
+ sessionId: z.ZodString;
92
+ workspaceRoot: z.ZodString;
93
+ workspaceLabel: z.ZodOptional<z.ZodString>;
94
+ /**
95
+ * Host-agnostic workspace match key (encodeCursorProjectSlug of abs path, or Cursor project dir).
96
+ * Use for cross-host grouping / bound-deck matching; keep workspaceRoot as display when absolute.
97
+ */
98
+ workspaceSlug: z.ZodOptional<z.ZodString>;
99
+ gitBranch: z.ZodOptional<z.ZodNullable<z.ZodString>>;
100
+ startedAt: z.ZodString;
101
+ endedAt: z.ZodOptional<z.ZodString>;
102
+ durationMinutes: z.ZodOptional<z.ZodNumber>;
103
+ turnCount: z.ZodNumber;
104
+ skippedLineCount: z.ZodOptional<z.ZodNumber>;
105
+ intents: z.ZodArray<z.ZodObject<{
106
+ text: z.ZodString;
107
+ at: z.ZodOptional<z.ZodString>;
108
+ }, "strict", z.ZodTypeAny, {
109
+ text: string;
110
+ at?: string | undefined;
111
+ }, {
112
+ text: string;
113
+ at?: string | undefined;
114
+ }>, "many">;
115
+ commands: z.ZodDefault<z.ZodArray<z.ZodObject<{
116
+ command: z.ZodString;
117
+ count: z.ZodNumber;
118
+ }, "strict", z.ZodTypeAny, {
119
+ command: string;
120
+ count: number;
121
+ }, {
122
+ command: string;
123
+ count: number;
124
+ }>, "many">>;
125
+ tools: z.ZodDefault<z.ZodArray<z.ZodObject<{
126
+ name: z.ZodString;
127
+ count: z.ZodNumber;
128
+ }, "strict", z.ZodTypeAny, {
129
+ name: string;
130
+ count: number;
131
+ }, {
132
+ name: string;
133
+ count: number;
134
+ }>, "many">>;
135
+ skills: z.ZodDefault<z.ZodArray<z.ZodObject<{
136
+ name: z.ZodString;
137
+ count: z.ZodNumber;
138
+ }, "strict", z.ZodTypeAny, {
139
+ name: string;
140
+ count: number;
141
+ }, {
142
+ name: string;
143
+ count: number;
144
+ }>, "many">>;
145
+ topFiles: z.ZodDefault<z.ZodArray<z.ZodObject<{
146
+ path: z.ZodString;
147
+ edits: z.ZodNumber;
148
+ }, "strict", z.ZodTypeAny, {
149
+ path: string;
150
+ edits: number;
151
+ }, {
152
+ path: string;
153
+ edits: number;
154
+ }>, "many">>;
155
+ feedbackMoments: z.ZodArray<z.ZodObject<{
156
+ agentAction: z.ZodString;
157
+ userReaction: z.ZodString;
158
+ polarityHint: z.ZodEnum<["negative", "positive", "mixed", "unknown"]>;
159
+ markers: z.ZodArray<z.ZodString, "many">;
160
+ followupChange: z.ZodOptional<z.ZodNullable<z.ZodString>>;
161
+ at: z.ZodOptional<z.ZodString>;
162
+ }, "strict", z.ZodTypeAny, {
163
+ agentAction: string;
164
+ userReaction: string;
165
+ polarityHint: "unknown" | "negative" | "positive" | "mixed";
166
+ markers: string[];
167
+ at?: string | undefined;
168
+ followupChange?: string | null | undefined;
169
+ }, {
170
+ agentAction: string;
171
+ userReaction: string;
172
+ polarityHint: "unknown" | "negative" | "positive" | "mixed";
173
+ markers: string[];
174
+ at?: string | undefined;
175
+ followupChange?: string | null | undefined;
176
+ }>, "many">;
177
+ outcome: z.ZodObject<{
178
+ signal: z.ZodEnum<["pr_opened", "committed", "unknown"]>;
179
+ evidence: z.ZodOptional<z.ZodString>;
180
+ }, "strict", z.ZodTypeAny, {
181
+ signal: "unknown" | "pr_opened" | "committed";
182
+ evidence?: string | undefined;
183
+ }, {
184
+ signal: "unknown" | "pr_opened" | "committed";
185
+ evidence?: string | undefined;
186
+ }>;
187
+ }, "strict", z.ZodTypeAny, {
188
+ tools: {
189
+ name: string;
190
+ count: number;
191
+ }[];
192
+ startedAt: string;
193
+ workspaceRoot: string;
194
+ schemaVersion: 1;
195
+ host: "claude" | "cursor";
196
+ sessionId: string;
197
+ turnCount: number;
198
+ intents: {
199
+ text: string;
200
+ at?: string | undefined;
201
+ }[];
202
+ commands: {
203
+ command: string;
204
+ count: number;
205
+ }[];
206
+ skills: {
207
+ name: string;
208
+ count: number;
209
+ }[];
210
+ topFiles: {
211
+ path: string;
212
+ edits: number;
213
+ }[];
214
+ feedbackMoments: {
215
+ agentAction: string;
216
+ userReaction: string;
217
+ polarityHint: "unknown" | "negative" | "positive" | "mixed";
218
+ markers: string[];
219
+ at?: string | undefined;
220
+ followupChange?: string | null | undefined;
221
+ }[];
222
+ outcome: {
223
+ signal: "unknown" | "pr_opened" | "committed";
224
+ evidence?: string | undefined;
225
+ };
226
+ workspaceLabel?: string | undefined;
227
+ workspaceSlug?: string | undefined;
228
+ gitBranch?: string | null | undefined;
229
+ endedAt?: string | undefined;
230
+ durationMinutes?: number | undefined;
231
+ skippedLineCount?: number | undefined;
232
+ }, {
233
+ startedAt: string;
234
+ workspaceRoot: string;
235
+ schemaVersion: 1;
236
+ sessionId: string;
237
+ turnCount: number;
238
+ intents: {
239
+ text: string;
240
+ at?: string | undefined;
241
+ }[];
242
+ feedbackMoments: {
243
+ agentAction: string;
244
+ userReaction: string;
245
+ polarityHint: "unknown" | "negative" | "positive" | "mixed";
246
+ markers: string[];
247
+ at?: string | undefined;
248
+ followupChange?: string | null | undefined;
249
+ }[];
250
+ outcome: {
251
+ signal: "unknown" | "pr_opened" | "committed";
252
+ evidence?: string | undefined;
253
+ };
254
+ tools?: {
255
+ name: string;
256
+ count: number;
257
+ }[] | undefined;
258
+ host?: "claude" | "cursor" | undefined;
259
+ workspaceLabel?: string | undefined;
260
+ workspaceSlug?: string | undefined;
261
+ gitBranch?: string | null | undefined;
262
+ endedAt?: string | undefined;
263
+ durationMinutes?: number | undefined;
264
+ skippedLineCount?: number | undefined;
265
+ commands?: {
266
+ command: string;
267
+ count: number;
268
+ }[] | undefined;
269
+ skills?: {
270
+ name: string;
271
+ count: number;
272
+ }[] | undefined;
273
+ topFiles?: {
274
+ path: string;
275
+ edits: number;
276
+ }[] | undefined;
277
+ }>;
278
+ export declare const BootstrapWorkspaceSchema: z.ZodObject<{
279
+ workspaceRoot: z.ZodString;
280
+ label: z.ZodString;
281
+ /** Shared across Claude abs + Cursor slug digests for the same repo. */
282
+ workspaceSlug: z.ZodOptional<z.ZodString>;
283
+ sessionCount: z.ZodNumber;
284
+ digestPaths: z.ZodArray<z.ZodString, "many">;
285
+ }, "strict", z.ZodTypeAny, {
286
+ label: string;
287
+ workspaceRoot: string;
288
+ sessionCount: number;
289
+ digestPaths: string[];
290
+ workspaceSlug?: string | undefined;
291
+ }, {
292
+ label: string;
293
+ workspaceRoot: string;
294
+ sessionCount: number;
295
+ digestPaths: string[];
296
+ workspaceSlug?: string | undefined;
297
+ }>;
298
+ export declare const BootstrapHostCountsSchema: z.ZodObject<{
299
+ claude: z.ZodNumber;
300
+ cursor: z.ZodNumber;
301
+ }, "strict", z.ZodTypeAny, {
302
+ claude: number;
303
+ cursor: number;
304
+ }, {
305
+ claude: number;
306
+ cursor: number;
307
+ }>;
308
+ export declare const BootstrapManifestSchema: z.ZodObject<{
309
+ schemaVersion: z.ZodLiteral<1>;
310
+ generatedAt: z.ZodString;
311
+ digestDir: z.ZodString;
312
+ guideRef: z.ZodString;
313
+ totalSessions: z.ZodNumber;
314
+ /** Missing on pre-M2b manifests — default zeros. */
315
+ hosts: z.ZodDefault<z.ZodObject<{
316
+ claude: z.ZodNumber;
317
+ cursor: z.ZodNumber;
318
+ }, "strict", z.ZodTypeAny, {
319
+ claude: number;
320
+ cursor: number;
321
+ }, {
322
+ claude: number;
323
+ cursor: number;
324
+ }>>;
325
+ workspaces: z.ZodArray<z.ZodObject<{
326
+ workspaceRoot: z.ZodString;
327
+ label: z.ZodString;
328
+ /** Shared across Claude abs + Cursor slug digests for the same repo. */
329
+ workspaceSlug: z.ZodOptional<z.ZodString>;
330
+ sessionCount: z.ZodNumber;
331
+ digestPaths: z.ZodArray<z.ZodString, "many">;
332
+ }, "strict", z.ZodTypeAny, {
333
+ label: string;
334
+ workspaceRoot: string;
335
+ sessionCount: number;
336
+ digestPaths: string[];
337
+ workspaceSlug?: string | undefined;
338
+ }, {
339
+ label: string;
340
+ workspaceRoot: string;
341
+ sessionCount: number;
342
+ digestPaths: string[];
343
+ workspaceSlug?: string | undefined;
344
+ }>, "many">;
345
+ }, "strict", z.ZodTypeAny, {
346
+ schemaVersion: 1;
347
+ generatedAt: string;
348
+ digestDir: string;
349
+ guideRef: string;
350
+ totalSessions: number;
351
+ hosts: {
352
+ claude: number;
353
+ cursor: number;
354
+ };
355
+ workspaces: {
356
+ label: string;
357
+ workspaceRoot: string;
358
+ sessionCount: number;
359
+ digestPaths: string[];
360
+ workspaceSlug?: string | undefined;
361
+ }[];
362
+ }, {
363
+ schemaVersion: 1;
364
+ generatedAt: string;
365
+ digestDir: string;
366
+ guideRef: string;
367
+ totalSessions: number;
368
+ workspaces: {
369
+ label: string;
370
+ workspaceRoot: string;
371
+ sessionCount: number;
372
+ digestPaths: string[];
373
+ workspaceSlug?: string | undefined;
374
+ }[];
375
+ hosts?: {
376
+ claude: number;
377
+ cursor: number;
378
+ } | undefined;
379
+ }>;
380
+ export type PolarityHint = z.infer<typeof PolarityHintSchema>;
381
+ export type OutcomeSignal = z.infer<typeof OutcomeSignalSchema>;
382
+ export type BootstrapHost = z.infer<typeof BootstrapHostSchema>;
383
+ export type FeedbackMoment = z.infer<typeof FeedbackMomentSchema>;
384
+ export type SessionDigest = z.infer<typeof SessionDigestSchema>;
385
+ export type BootstrapManifest = z.infer<typeof BootstrapManifestSchema>;
386
+ export type BootstrapHostCounts = z.infer<typeof BootstrapHostCountsSchema>;
387
+ //# sourceMappingURL=session-bootstrap.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"session-bootstrap.d.ts","sourceRoot":"","sources":["../../src/schemas/session-bootstrap.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,eAAO,MAAM,kBAAkB,yDAAuD,CAAC;AAEvF,eAAO,MAAM,mBAAmB,kDAAgD,CAAC;AAEjF,eAAO,MAAM,mBAAmB,iCAA+B,CAAC;AAEhE,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;EAStB,CAAC;AAEZ,eAAO,MAAM,gBAAgB;;;;;;;;;EAKlB,CAAC;AAEZ,eAAO,MAAM,iBAAiB;;;;;;;;;EAKnB,CAAC;AAEZ,eAAO,MAAM,cAAc;;;;;;;;;EAKhB,CAAC;AAEZ,eAAO,MAAM,eAAe;;;;;;;;;EAKjB,CAAC;AAEZ,eAAO,MAAM,iBAAiB;;;;;;;;;EAKnB,CAAC;AAEZ,eAAO,MAAM,aAAa;;;;;;;;;EAKf,CAAC;AAEZ,eAAO,MAAM,mBAAmB;;IAG5B,qEAAqE;;;;;IAKrE;;;OAGG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAgBI,CAAC;AAEZ,eAAO,MAAM,wBAAwB;;;IAIjC,wEAAwE;;;;;;;;;;;;;;;;EAKjE,CAAC;AAEZ,eAAO,MAAM,yBAAyB;;;;;;;;;EAK3B,CAAC;AAEZ,eAAO,MAAM,uBAAuB;;;;;;IAOhC,oDAAoD;;;;;;;;;;;;;;QArBpD,wEAAwE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAyBjE,CAAC;AAEZ,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAC9D,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAChE,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAChE,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAClE,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAChE,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC;AACxE,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,yBAAyB,CAAC,CAAC"}
@@ -0,0 +1,110 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.BootstrapManifestSchema = exports.BootstrapHostCountsSchema = exports.BootstrapWorkspaceSchema = exports.SessionDigestSchema = exports.OutcomeSchema = exports.TopFileItemSchema = exports.SkillItemSchema = exports.ToolItemSchema = exports.CommandItemSchema = exports.IntentItemSchema = exports.FeedbackMomentSchema = exports.BootstrapHostSchema = exports.OutcomeSignalSchema = exports.PolarityHintSchema = void 0;
4
+ const zod_1 = require("zod");
5
+ exports.PolarityHintSchema = zod_1.z.enum(['negative', 'positive', 'mixed', 'unknown']);
6
+ exports.OutcomeSignalSchema = zod_1.z.enum(['pr_opened', 'committed', 'unknown']);
7
+ exports.BootstrapHostSchema = zod_1.z.enum(['claude', 'cursor']);
8
+ exports.FeedbackMomentSchema = zod_1.z
9
+ .object({
10
+ agentAction: zod_1.z.string().max(400),
11
+ userReaction: zod_1.z.string().max(600),
12
+ polarityHint: exports.PolarityHintSchema,
13
+ markers: zod_1.z.array(zod_1.z.string()),
14
+ followupChange: zod_1.z.string().max(400).nullable().optional(),
15
+ at: zod_1.z.string().datetime().optional(),
16
+ })
17
+ .strict();
18
+ exports.IntentItemSchema = zod_1.z
19
+ .object({
20
+ text: zod_1.z.string().max(280),
21
+ at: zod_1.z.string().datetime().optional(),
22
+ })
23
+ .strict();
24
+ exports.CommandItemSchema = zod_1.z
25
+ .object({
26
+ command: zod_1.z.string().max(160),
27
+ count: zod_1.z.number().int().min(1),
28
+ })
29
+ .strict();
30
+ exports.ToolItemSchema = zod_1.z
31
+ .object({
32
+ name: zod_1.z.string(),
33
+ count: zod_1.z.number().int().min(1),
34
+ })
35
+ .strict();
36
+ exports.SkillItemSchema = zod_1.z
37
+ .object({
38
+ name: zod_1.z.string(),
39
+ count: zod_1.z.number().int().min(1),
40
+ })
41
+ .strict();
42
+ exports.TopFileItemSchema = zod_1.z
43
+ .object({
44
+ path: zod_1.z.string(),
45
+ edits: zod_1.z.number().int().min(1),
46
+ })
47
+ .strict();
48
+ exports.OutcomeSchema = zod_1.z
49
+ .object({
50
+ signal: exports.OutcomeSignalSchema,
51
+ evidence: zod_1.z.string().optional(),
52
+ })
53
+ .strict();
54
+ exports.SessionDigestSchema = zod_1.z
55
+ .object({
56
+ schemaVersion: zod_1.z.literal(1),
57
+ /** Missing on pre-M2b digests — treat as claude (PRD §12 compat). */
58
+ host: exports.BootstrapHostSchema.default('claude'),
59
+ sessionId: zod_1.z.string(),
60
+ workspaceRoot: zod_1.z.string(),
61
+ workspaceLabel: zod_1.z.string().optional(),
62
+ /**
63
+ * Host-agnostic workspace match key (encodeCursorProjectSlug of abs path, or Cursor project dir).
64
+ * Use for cross-host grouping / bound-deck matching; keep workspaceRoot as display when absolute.
65
+ */
66
+ workspaceSlug: zod_1.z.string().optional(),
67
+ gitBranch: zod_1.z.string().nullable().optional(),
68
+ startedAt: zod_1.z.string().datetime(),
69
+ endedAt: zod_1.z.string().datetime().optional(),
70
+ durationMinutes: zod_1.z.number().min(0).optional(),
71
+ turnCount: zod_1.z.number().int().min(0),
72
+ skippedLineCount: zod_1.z.number().int().min(0).optional(),
73
+ intents: zod_1.z.array(exports.IntentItemSchema).max(40),
74
+ commands: zod_1.z.array(exports.CommandItemSchema).max(40).default([]),
75
+ tools: zod_1.z.array(exports.ToolItemSchema).max(40).default([]),
76
+ skills: zod_1.z.array(exports.SkillItemSchema).max(40).default([]),
77
+ topFiles: zod_1.z.array(exports.TopFileItemSchema).max(20).default([]),
78
+ feedbackMoments: zod_1.z.array(exports.FeedbackMomentSchema).max(30),
79
+ outcome: exports.OutcomeSchema,
80
+ })
81
+ .strict();
82
+ exports.BootstrapWorkspaceSchema = zod_1.z
83
+ .object({
84
+ workspaceRoot: zod_1.z.string(),
85
+ label: zod_1.z.string(),
86
+ /** Shared across Claude abs + Cursor slug digests for the same repo. */
87
+ workspaceSlug: zod_1.z.string().optional(),
88
+ sessionCount: zod_1.z.number().int().min(0),
89
+ digestPaths: zod_1.z.array(zod_1.z.string()),
90
+ })
91
+ .strict();
92
+ exports.BootstrapHostCountsSchema = zod_1.z
93
+ .object({
94
+ claude: zod_1.z.number().int().min(0),
95
+ cursor: zod_1.z.number().int().min(0),
96
+ })
97
+ .strict();
98
+ exports.BootstrapManifestSchema = zod_1.z
99
+ .object({
100
+ schemaVersion: zod_1.z.literal(1),
101
+ generatedAt: zod_1.z.string().datetime(),
102
+ digestDir: zod_1.z.string(),
103
+ guideRef: zod_1.z.string(),
104
+ totalSessions: zod_1.z.number().int().min(0),
105
+ /** Missing on pre-M2b manifests — default zeros. */
106
+ hosts: exports.BootstrapHostCountsSchema.default({ claude: 0, cursor: 0 }),
107
+ workspaces: zod_1.z.array(exports.BootstrapWorkspaceSchema),
108
+ })
109
+ .strict();
110
+ //# sourceMappingURL=session-bootstrap.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"session-bootstrap.js","sourceRoot":"","sources":["../../src/schemas/session-bootstrap.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@agent-deck/shared",
3
- "version": "1.5.0",
3
+ "version": "1.5.1",
4
4
  "description": "Shared types, schemas, and utilities for Agent Deck",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",