@longtable/core 0.1.31 → 0.1.33

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 (2) hide show
  1. package/dist/types.d.ts +63 -0
  2. package/package.json +1 -1
package/dist/types.d.ts CHANGED
@@ -250,6 +250,7 @@ export interface QuestionRecord {
250
250
  transportStatus?: QuestionTransportState;
251
251
  answer?: QuestionAnswer;
252
252
  error?: string;
253
+ clearedReason?: string;
253
254
  decisionRecordId?: string;
254
255
  }
255
256
  export interface ArtifactRecord {
@@ -273,6 +274,65 @@ export interface NarrativeTrace {
273
274
  importance: ConfidenceLevel;
274
275
  linkedDecisionRecordId?: string;
275
276
  }
277
+ export type LongTableHookKind = "longtable_interview" | "quality_probe" | "checkpoint" | "panel_decision";
278
+ export type LongTableHookStatus = "pending" | "active" | "ready_to_confirm" | "confirmed" | "deferred" | "cancelled";
279
+ export type InterviewTurnQuality = "thin" | "usable" | "rich";
280
+ export type InterviewDepth = "gathering_context" | "forming_first_handle" | "ready_to_summarize";
281
+ export interface LongTableInterviewTurn {
282
+ id: string;
283
+ index: number;
284
+ createdAt: string;
285
+ question: string;
286
+ answer: string;
287
+ reflection?: string;
288
+ quality: InterviewTurnQuality;
289
+ needsFollowUp: boolean;
290
+ followUpQuestion?: string;
291
+ rationale?: string[];
292
+ }
293
+ export interface FirstResearchShape {
294
+ handle: string;
295
+ currentGoal: string;
296
+ currentBlocker?: string;
297
+ researchObject?: string;
298
+ gapRisk?: string;
299
+ protectedDecision?: string;
300
+ openQuestions: string[];
301
+ nextAction: string;
302
+ confidence: ConfidenceLevel;
303
+ sourceHookId?: string;
304
+ confirmedAt?: string;
305
+ }
306
+ export interface LongTableHookRun {
307
+ id: string;
308
+ kind: LongTableHookKind;
309
+ status: LongTableHookStatus;
310
+ createdAt: string;
311
+ updatedAt: string;
312
+ targetOutcome?: "first_research_handle" | string;
313
+ depth?: InterviewDepth;
314
+ provider?: ProviderKind;
315
+ turns?: LongTableInterviewTurn[];
316
+ firstResearchShape?: FirstResearchShape;
317
+ qualityNotes?: string[];
318
+ rationale?: string[];
319
+ linkedQuestionRecordIds?: string[];
320
+ linkedDecisionRecordIds?: string[];
321
+ }
322
+ export type LongTableQuestionObligationKind = "required_question" | "first_research_shape_confirmation";
323
+ export type LongTableQuestionObligationStatus = "pending" | "satisfied" | "cleared";
324
+ export interface LongTableQuestionObligation {
325
+ id: string;
326
+ kind: LongTableQuestionObligationKind;
327
+ status: LongTableQuestionObligationStatus;
328
+ createdAt: string;
329
+ updatedAt: string;
330
+ prompt: string;
331
+ reason: string;
332
+ questionId?: string;
333
+ decisionId?: string;
334
+ sourceHookId?: string;
335
+ }
276
336
  export interface RuntimeGuidance {
277
337
  mode: InteractionMode;
278
338
  minimumQuestions: number;
@@ -304,6 +364,9 @@ export interface StudyContract {
304
364
  export interface ResearchState {
305
365
  explicitState: Record<string, unknown>;
306
366
  workingState: Record<string, unknown>;
367
+ hooks?: LongTableHookRun[];
368
+ firstResearchShape?: FirstResearchShape;
369
+ questionObligations?: LongTableQuestionObligation[];
307
370
  inferredHypotheses: InferredHypothesis[];
308
371
  openTensions: string[];
309
372
  decisionLog: DecisionRecord[];
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@longtable/core",
3
- "version": "0.1.31",
3
+ "version": "0.1.33",
4
4
  "private": false,
5
5
  "description": "Provider-neutral domain models and contracts for LongTable",
6
6
  "type": "module",