@longtable/core 0.1.45 → 0.1.48

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 +72 -1
  2. package/package.json +1 -1
package/dist/types.d.ts CHANGED
@@ -190,6 +190,8 @@ export interface InferredHypothesis {
190
190
  evidence: string[];
191
191
  status: HypothesisStatus;
192
192
  }
193
+ export type QuestionCommitmentFamily = "scope" | "construct" | "coding" | "method" | "evidence" | "epistemic_authority" | "product_policy";
194
+ export type QuestionEpistemicBasis = "researcher_knowledge" | "project_state" | "external_evidence" | "ai_inference" | "mixed";
193
195
  export interface DecisionRecord {
194
196
  id: string;
195
197
  timestamp: string;
@@ -197,11 +199,71 @@ export interface DecisionRecord {
197
199
  level: CheckpointLevel;
198
200
  mode: InteractionMode;
199
201
  summary: string;
202
+ commitmentFamily?: QuestionCommitmentFamily;
203
+ epistemicBasis?: QuestionEpistemicBasis;
200
204
  selectedOption?: string;
201
205
  rationale?: string;
202
206
  explicitStateUpdates?: Record<string, unknown>;
203
207
  studyContractId?: string;
204
208
  }
209
+ export type EvidenceSourceKind = "interview_turn" | "panel" | "critic" | "reviewer" | "decision" | "question" | "invocation" | "manual" | "system";
210
+ export interface EvidenceRecord {
211
+ id: string;
212
+ createdAt: string;
213
+ sourceKind: EvidenceSourceKind;
214
+ summary: string;
215
+ rawText?: string;
216
+ sourceId?: string;
217
+ sourceHookId?: string;
218
+ role?: string;
219
+ linkedQuestionRecordIds?: string[];
220
+ linkedDecisionRecordIds?: string[];
221
+ linkedInvocationRecordIds?: string[];
222
+ incorporatedAt?: string;
223
+ incorporatedByPatchId?: string;
224
+ incorporatedByRevisionId?: string;
225
+ }
226
+ export type ResearchSpecificationPatchSource = "interview" | "panel" | "critic" | "reviewer" | "decision" | "manual" | "system";
227
+ export type ResearchSpecificationPatchStatus = "proposed" | "applied" | "rejected" | "superseded";
228
+ export type ResearchSpecificationChangeKind = "set" | "append" | "remove" | "replace";
229
+ export interface ResearchSpecificationChange {
230
+ path: string;
231
+ kind: ResearchSpecificationChangeKind;
232
+ summary: string;
233
+ before?: unknown;
234
+ after?: unknown;
235
+ evidenceRecordIds?: string[];
236
+ }
237
+ export interface ResearchSpecificationPatch {
238
+ id: string;
239
+ createdAt: string;
240
+ updatedAt: string;
241
+ status: ResearchSpecificationPatchStatus;
242
+ source: ResearchSpecificationPatchSource;
243
+ title: string;
244
+ rationale?: string;
245
+ changes: ResearchSpecificationChange[];
246
+ sourceEvidenceIds: string[];
247
+ targetSpecification?: ResearchSpecification;
248
+ appliedAt?: string;
249
+ appliedRevisionId?: string;
250
+ questionRecordId?: string;
251
+ decisionRecordId?: string;
252
+ }
253
+ export interface ResearchSpecificationRevision {
254
+ id: string;
255
+ index: number;
256
+ createdAt: string;
257
+ source: ResearchSpecificationPatchSource;
258
+ title: string;
259
+ status: NonNullable<ResearchSpecification["status"]>;
260
+ patchId?: string;
261
+ questionRecordId?: string;
262
+ decisionRecordId?: string;
263
+ sourceEvidenceIds: string[];
264
+ changeSummary: string[];
265
+ specification: ResearchSpecification;
266
+ }
205
267
  export interface QuestionOption {
206
268
  value: string;
207
269
  label: string;
@@ -297,6 +359,8 @@ export interface QuestionRecord {
297
359
  createdAt: string;
298
360
  updatedAt: string;
299
361
  status: QuestionRecordStatus;
362
+ commitmentFamily?: QuestionCommitmentFamily;
363
+ epistemicBasis?: QuestionEpistemicBasis;
300
364
  prompt: QuestionPrompt;
301
365
  transportStatus?: QuestionTransportState;
302
366
  answer?: QuestionAnswer;
@@ -362,6 +426,9 @@ export interface ResearchSpecification {
362
426
  createdAt?: string;
363
427
  updatedAt?: string;
364
428
  sourceHookId?: string;
429
+ latestRevisionId?: string;
430
+ sourceEvidenceIds?: string[];
431
+ sectionEvidence?: Record<string, string[]>;
365
432
  researchDirection: {
366
433
  question?: string;
367
434
  purpose: string;
@@ -425,7 +492,7 @@ export interface LongTableHookRun {
425
492
  linkedQuestionRecordIds?: string[];
426
493
  linkedDecisionRecordIds?: string[];
427
494
  }
428
- export type LongTableQuestionObligationKind = "required_question" | "first_research_shape_confirmation";
495
+ export type LongTableQuestionObligationKind = "required_question" | "first_research_shape_confirmation" | "research_specification_confirmation";
429
496
  export type LongTableQuestionObligationStatus = "pending" | "satisfied" | "cleared";
430
497
  export interface LongTableQuestionObligation {
431
498
  id: string;
@@ -473,6 +540,10 @@ export interface ResearchState {
473
540
  hooks?: LongTableHookRun[];
474
541
  firstResearchShape?: FirstResearchShape;
475
542
  researchSpecification?: ResearchSpecification;
543
+ interviewTurns?: LongTableInterviewTurn[];
544
+ evidenceRecords?: EvidenceRecord[];
545
+ specPatches?: ResearchSpecificationPatch[];
546
+ specRevisions?: ResearchSpecificationRevision[];
476
547
  questionObligations?: LongTableQuestionObligation[];
477
548
  inferredHypotheses: InferredHypothesis[];
478
549
  openTensions: string[];
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@longtable/core",
3
- "version": "0.1.45",
3
+ "version": "0.1.48",
4
4
  "private": false,
5
5
  "description": "Provider-neutral domain models and contracts for LongTable",
6
6
  "type": "module",