markform 0.1.16 → 0.1.18

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 (35) hide show
  1. package/LICENSE +369 -0
  2. package/README.md +154 -214
  3. package/dist/ai-sdk.d.mts +1 -1
  4. package/dist/ai-sdk.mjs +2 -2
  5. package/dist/{apply-CXsI5N9x.mjs → apply-BYgtU64w.mjs} +203 -16
  6. package/dist/apply-BYgtU64w.mjs.map +1 -0
  7. package/dist/bin.mjs +1 -1
  8. package/dist/{cli-BsFessUW.mjs → cli-D9w0Bp4J.mjs} +199 -13
  9. package/dist/cli-D9w0Bp4J.mjs.map +1 -0
  10. package/dist/cli.mjs +1 -1
  11. package/dist/{coreTypes-DE6Giau5.d.mts → coreTypes-BMEs8h_2.d.mts} +165 -2
  12. package/dist/{coreTypes-DiCddBKu.mjs → coreTypes-SDB3KRRJ.mjs} +9 -4
  13. package/dist/coreTypes-SDB3KRRJ.mjs.map +1 -0
  14. package/dist/index.d.mts +266 -2
  15. package/dist/index.mjs +5 -5
  16. package/dist/{session-B7aR6hno.mjs → session-CW9AQw6i.mjs} +1 -1
  17. package/dist/{session-XDrocA3j.mjs → session-Ci4B0Pna.mjs} +2 -2
  18. package/dist/{session-XDrocA3j.mjs.map → session-Ci4B0Pna.mjs.map} +1 -1
  19. package/dist/{src-Dv3IZSQU.mjs → src-DDxi-2ne.mjs} +966 -32
  20. package/dist/src-DDxi-2ne.mjs.map +1 -0
  21. package/docs/markform-apis.md +110 -0
  22. package/docs/markform-reference.md +58 -0
  23. package/docs/markform-spec.md +204 -9
  24. package/examples/movie-research/movie-deep-research-mock-filled.form.md +1 -1
  25. package/examples/movie-research/movie-deep-research.form.md +1 -1
  26. package/examples/parallel/parallel-research.form.md +57 -0
  27. package/examples/plan-document/plan-document-markdoc.form.md +35 -0
  28. package/examples/plan-document/plan-document-progress.form.md +47 -0
  29. package/examples/plan-document/plan-document.form.md +47 -0
  30. package/examples/startup-deep-research/startup-deep-research.form.md +1 -1
  31. package/package.json +2 -2
  32. package/dist/apply-CXsI5N9x.mjs.map +0 -1
  33. package/dist/cli-BsFessUW.mjs.map +0 -1
  34. package/dist/coreTypes-DiCddBKu.mjs.map +0 -1
  35. package/dist/src-Dv3IZSQU.mjs.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"coreTypes-SDB3KRRJ.mjs","names":[],"sources":["../src/engine/coreTypes.ts"],"sourcesContent":["/**\n * Core types and Zod schemas for Markform.\n *\n * This module defines all TypeScript types and their corresponding Zod schemas\n * for forms, fields, values, validation, patches, and session transcripts.\n */\n\nimport { z } from 'zod';\n\n// =============================================================================\n// Basic Types\n// =============================================================================\n\n/** Form/group/field ID - globally unique within a document */\nexport type Id = string;\n\n/** Option ID - unique within its containing field */\nexport type OptionId = string;\n\n/** Qualified option reference - used in doc blocks and external references */\nexport type QualifiedOptionRef = `${Id}.${OptionId}`;\n\n/** Qualified column reference - used in table field references (e.g., \"team.name\") */\nexport type QualifiedColumnRef = `${Id}.${Id}`;\n\n/** Validator reference - simple ID or parameterized object */\nexport type ValidatorRef = string | { id: string; [key: string]: unknown };\n\n// =============================================================================\n// Answer State Types (markform-255)\n// =============================================================================\n\n/**\n * Answer state for a field.\n * What action was taken: no answer yet, answered, skipped, or aborted.\n */\nexport type AnswerState = 'unanswered' | 'answered' | 'skipped' | 'aborted';\n\n/**\n * Field response: combines answer state with optional value.\n * Used in responsesByFieldId for all fields.\n */\nexport interface FieldResponse {\n state: AnswerState;\n value?: FieldValue; // present only when state === 'answered'\n reason?: string; // present when state === 'skipped' or 'aborted'\n}\n\n// =============================================================================\n// Note Types (markform-205)\n// =============================================================================\n\n/** Unique note ID (implementation uses n1, n2, n3...) */\nexport type NoteId = string;\n\n/** Note attached to a field, group, or form */\nexport interface Note {\n id: NoteId;\n ref: Id; // target ID (field, group, or form)\n role: string; // who created (agent, user, ...)\n text: string; // markdown content\n}\n\n// =============================================================================\n// Checkbox Types\n// =============================================================================\n\n/** Multi-checkbox states (checkboxMode=\"multi\", default) - 5 states */\nexport type MultiCheckboxState = 'todo' | 'done' | 'incomplete' | 'active' | 'na';\n\n/** Simple checkbox states (checkboxMode=\"simple\") - 2 states, GFM-compatible */\nexport type SimpleCheckboxState = 'todo' | 'done';\n\n/** Explicit checkbox values (checkboxMode=\"explicit\") - requires yes/no answer */\nexport type ExplicitCheckboxValue = 'unfilled' | 'yes' | 'no';\n\n/** Union type for all checkbox values */\nexport type CheckboxValue = MultiCheckboxState | ExplicitCheckboxValue;\n\n/** Checkbox mode determines which states are valid */\nexport type CheckboxMode = 'multi' | 'simple' | 'explicit';\n\n/**\n * Controls how fill handles existing values for target role fields.\n * - 'continue': Skip fields that already have values (default)\n * - 'overwrite': Clear and re-fill all fields for the target role\n */\nexport type FillMode = 'continue' | 'overwrite';\n\n/**\n * Agent mode for fill operations.\n * - 'mock': Use mock agent (for testing, requires mock source file)\n * - 'live': Use live LLM agent (default, requires model)\n */\nexport type MockMode = 'mock' | 'live';\n\n/**\n * Controls whether a checkbox field acts as a blocking checkpoint.\n * - 'none': No blocking behavior (default)\n * - 'blocking': Fields after this cannot be filled until checkbox is complete\n */\nexport type ApprovalMode = 'none' | 'blocking';\n\n// =============================================================================\n// Field Kinds\n// =============================================================================\n\n/** Field kind discriminant */\nexport type FieldKind =\n | 'string'\n | 'number'\n | 'string_list'\n | 'checkboxes'\n | 'single_select'\n | 'multi_select'\n | 'url'\n | 'url_list'\n | 'date'\n | 'year'\n | 'table';\n\n// =============================================================================\n// Table Field Definitions\n// =============================================================================\n\n/** Base column type for table cells - simple types only */\nexport type ColumnTypeName = 'string' | 'number' | 'url' | 'date' | 'year';\n\n/**\n * Column type specification in attributes.\n * Can be a simple string or an object with required flag.\n */\nexport type ColumnTypeSpec = ColumnTypeName | { type: ColumnTypeName; required: boolean };\n\n/**\n * Column definition - derived from columnIds, columnLabels, columnTypes attributes.\n * After parsing, columns always have explicit required flag (default: false).\n */\nexport interface TableColumn {\n id: Id; // from columnIds array\n label: string; // from columnLabels array (defaults to id)\n type: ColumnTypeName; // from columnTypes array (defaults to 'string')\n required: boolean; // from columnTypes object or default false\n}\n\n/** Field priority level for issue scoring */\nexport type FieldPriorityLevel = 'high' | 'medium' | 'low';\n\n/** Base interface for all field kinds */\nexport interface FieldBase {\n id: Id;\n label: string;\n required: boolean; // explicit: parser defaults to false if not specified\n priority: FieldPriorityLevel; // explicit: parser defaults to 'medium' if not specified\n role: string; // explicit: parser defaults to AGENT_ROLE if not specified\n validate?: ValidatorRef[];\n /** Whether to include this field in report output. Default: true */\n report?: boolean;\n /** Hint text for empty field (text-entry fields only) */\n placeholder?: string;\n /** Example values (text-entry fields only) */\n examples?: string[];\n /** True for auto-generated implicit fields (e.g., 'checkboxes' for plan documents) */\n implicit?: boolean;\n /** Parallel batch identifier. Top-level fields only. */\n parallel?: string;\n /** Fill order. Lower values filled first. Default: 0. */\n order?: number;\n}\n\n// =============================================================================\n// Field Kind Categories\n// =============================================================================\n\n/** Field kinds that accept text entry (support placeholder/examples) */\nexport const TEXT_ENTRY_FIELD_KINDS = [\n 'string',\n 'number',\n 'string_list',\n 'url',\n 'url_list',\n] as const;\n\n/** Field kinds that are choosers (do NOT support placeholder/examples) */\nexport const CHOOSER_FIELD_KINDS = ['single_select', 'multi_select', 'checkboxes'] as const;\n\n/**\n * Check if a field kind accepts text entry (supports placeholder/examples).\n */\nexport function isTextEntryFieldKind(kind: FieldKind): boolean {\n return (TEXT_ENTRY_FIELD_KINDS as readonly string[]).includes(kind);\n}\n\n/** String field - single or multiline text */\nexport interface StringField extends FieldBase {\n kind: 'string';\n multiline?: boolean;\n pattern?: string;\n minLength?: number;\n maxLength?: number;\n}\n\n/** Number field - numeric value with optional constraints */\nexport interface NumberField extends FieldBase {\n kind: 'number';\n min?: number;\n max?: number;\n integer?: boolean;\n}\n\n/** String list field - array of user-provided strings */\nexport interface StringListField extends FieldBase {\n kind: 'string_list';\n minItems?: number;\n maxItems?: number;\n itemMinLength?: number;\n itemMaxLength?: number;\n uniqueItems?: boolean;\n}\n\n/** Option in select/checkbox fields */\nexport interface Option {\n id: Id;\n label: string;\n}\n\n/** Checkboxes field - stateful checklist with configurable modes */\nexport interface CheckboxesField extends FieldBase {\n kind: 'checkboxes';\n checkboxMode: CheckboxMode; // explicit: parser defaults to 'multi' if not specified\n minDone?: number;\n options: Option[];\n approvalMode: ApprovalMode; // explicit: parser defaults to 'none' if not specified\n}\n\n/** Single-select field - exactly one option can be selected */\nexport interface SingleSelectField extends FieldBase {\n kind: 'single_select';\n options: Option[];\n}\n\n/** Multi-select field - multiple options can be selected */\nexport interface MultiSelectField extends FieldBase {\n kind: 'multi_select';\n options: Option[];\n minSelections?: number;\n maxSelections?: number;\n}\n\n/** URL field - single URL value with built-in format validation */\nexport interface UrlField extends FieldBase {\n kind: 'url';\n // No additional constraints - URL format validation is built-in\n}\n\n/** URL list field - multiple URLs (for citations, sources, references) */\nexport interface UrlListField extends FieldBase {\n kind: 'url_list';\n minItems?: number;\n maxItems?: number;\n uniqueItems?: boolean;\n}\n\n/** Date field - ISO 8601 date (YYYY-MM-DD) with optional min/max constraints */\nexport interface DateField extends FieldBase {\n kind: 'date';\n min?: string; // ISO 8601 date string (YYYY-MM-DD)\n max?: string; // ISO 8601 date string (YYYY-MM-DD)\n}\n\n/** Year field - integer year with optional min/max constraints */\nexport interface YearField extends FieldBase {\n kind: 'year';\n min?: number; // minimum year (inclusive)\n max?: number; // maximum year (inclusive)\n}\n\n/**\n * Table field - structured tabular data with typed columns.\n * Inherits all FieldBase properties including `report?: boolean`.\n */\nexport interface TableField extends FieldBase {\n kind: 'table';\n columns: TableColumn[]; // column definitions in order\n minRows?: number;\n maxRows?: number;\n}\n\n/** Union of all field kinds */\nexport type Field =\n | StringField\n | NumberField\n | StringListField\n | CheckboxesField\n | SingleSelectField\n | MultiSelectField\n | UrlField\n | UrlListField\n | DateField\n | YearField\n | TableField;\n\n// =============================================================================\n// Form Structure Types\n// =============================================================================\n\n/**\n * Field group: container for fields (nested groups deferred to future).\n */\nexport interface FieldGroup {\n id: Id;\n title?: string;\n validate?: ValidatorRef[];\n children: Field[];\n /** Whether to include this group in report output. Default: true */\n report?: boolean;\n /**\n * True if this group was implicitly created for fields placed directly\n * under the form (not wrapped in an explicit group).\n * Implicit groups are serialized without group wrapper tags.\n */\n implicit?: boolean;\n /** Parallel batch identifier. */\n parallel?: string;\n /** Fill order. Lower values filled first. Default: 0. */\n order?: number;\n}\n\n// =============================================================================\n// Execution Plan Types\n// =============================================================================\n\n/** An item in an execution plan (a top-level field or group). */\nexport interface ExecutionPlanItem {\n itemId: Id;\n itemType: 'field' | 'group';\n order: number;\n}\n\n/** A parallel batch: items that can execute concurrently. */\nexport interface ParallelBatch {\n batchId: string;\n items: ExecutionPlanItem[];\n}\n\n/** Execution plan: partitions form into loose-serial pool + parallel batches. */\nexport interface ExecutionPlan {\n looseSerial: ExecutionPlanItem[];\n parallelBatches: ParallelBatch[];\n /** Distinct order levels found in the form, sorted ascending. */\n orderLevels: number[];\n}\n\n/** Form schema - root container with groups */\nexport interface FormSchema {\n id: Id;\n title?: string;\n description?: string;\n groups: FieldGroup[];\n}\n\n// =============================================================================\n// Field Value Types\n// =============================================================================\n\n/** String field value */\nexport interface StringValue {\n kind: 'string';\n value: string | null;\n}\n\n/** Number field value */\nexport interface NumberValue {\n kind: 'number';\n value: number | null;\n}\n\n/** String list field value */\nexport interface StringListValue {\n kind: 'string_list';\n items: string[];\n}\n\n/** Checkboxes field value */\nexport interface CheckboxesValue {\n kind: 'checkboxes';\n values: Record<OptionId, CheckboxValue>;\n}\n\n/** Single-select field value */\nexport interface SingleSelectValue {\n kind: 'single_select';\n selected: OptionId | null;\n}\n\n/** Multi-select field value */\nexport interface MultiSelectValue {\n kind: 'multi_select';\n selected: OptionId[];\n}\n\n/** URL field value */\nexport interface UrlValue {\n kind: 'url';\n value: string | null; // null if empty, validated URL string otherwise\n}\n\n/** URL list field value */\nexport interface UrlListValue {\n kind: 'url_list';\n items: string[]; // Array of URL strings\n}\n\n/** Date field value */\nexport interface DateValue {\n kind: 'date';\n value: string | null; // ISO 8601 date string (YYYY-MM-DD) or null\n}\n\n/** Year field value */\nexport interface YearValue {\n kind: 'year';\n value: number | null; // integer year or null\n}\n\n/**\n * Cell value - scalar value only (never null).\n * Empty/skipped cells use %SKIP% sentinel, not null.\n */\nexport type CellValue = string | number;\n\n/**\n * Cell response - matches FieldResponse pattern.\n * Used in internal representation (ParsedForm).\n */\nexport interface CellResponse {\n state: 'answered' | 'skipped' | 'aborted'; // cells cannot be 'unanswered'\n value?: CellValue; // present when state === 'answered'\n reason?: string; // present when state === 'skipped' or 'aborted'\n}\n\n/** Table row response - each cell has a response (internal representation) */\nexport type TableRowResponse = Record<Id, CellResponse>;\n\n/** Table field value (internal representation) */\nexport interface TableValue {\n kind: 'table';\n rows: TableRowResponse[];\n}\n\n/** Union of all field value types */\nexport type FieldValue =\n | StringValue\n | NumberValue\n | StringListValue\n | CheckboxesValue\n | SingleSelectValue\n | MultiSelectValue\n | UrlValue\n | UrlListValue\n | DateValue\n | YearValue\n | TableValue;\n\n// =============================================================================\n// Documentation Block\n// =============================================================================\n\n/** Documentation tag type - determines the semantic purpose of the block */\nexport type DocumentationTag = 'description' | 'instructions' | 'documentation';\n\n/** Documentation block attached to form elements */\nexport interface DocumentationBlock {\n /** The semantic tag type: description, instructions, or documentation */\n tag: DocumentationTag;\n /** Reference to form/group/field ID or qualified option ref (fieldId.optionId) */\n ref: string;\n bodyMarkdown: string;\n /**\n * Whether to include this block in report output.\n * Default: false for 'instructions' tag, true for others.\n */\n report?: boolean;\n}\n\n// =============================================================================\n// Form Metadata (from frontmatter)\n// =============================================================================\n\n/**\n * Optional harness configuration from frontmatter.\n * Forms can specify default harness settings for fill operations.\n */\nexport interface FrontmatterHarnessConfig {\n maxTurns?: number;\n maxPatchesPerTurn?: number;\n maxIssuesPerTurn?: number;\n maxParallelAgents?: number;\n}\n\n/**\n * Run mode for the form - determines how 'markform run' executes.\n * - interactive: Launch interactive fill for user-role fields\n * - fill: Prompt for model, run agent fill\n * - research: Prompt for web-search model, run research fill\n */\nexport type RunMode = 'interactive' | 'fill' | 'research';\n\n/** Form-level metadata from YAML frontmatter, including role configuration */\nexport interface FormMetadata {\n markformVersion: string;\n roles: string[];\n roleInstructions: Record<string, string>;\n /** Optional harness configuration from frontmatter */\n harnessConfig?: FrontmatterHarnessConfig;\n /** How this form should be executed by 'markform run' */\n runMode?: RunMode;\n}\n\n// =============================================================================\n// Parsed Form\n// =============================================================================\n\n/** Node type for ID index entries - identifies what structural element an ID refers to */\nexport type NodeType = 'form' | 'group' | 'field' | 'option';\n\n/** ID index entry for fast lookup and validation */\nexport interface IdIndexEntry {\n nodeType: NodeType; // what this ID refers to\n parentId?: Id;\n fieldId?: Id;\n}\n\n/**\n * The syntax style used in a Markform document.\n * - 'comments': HTML comment syntax with f: namespace (`<!-- f:tag -->`) - primary/default\n * - 'tags': Traditional Markdoc Jinja-style syntax (`{% tag %}`)\n */\nexport type SyntaxStyle = 'comments' | 'tags';\n\n/**\n * Tag types that can appear in Markform documents for position tracking.\n * - 'form': The root form tag\n * - 'group': Field group tags\n * - 'field': Individual field tags (may include value fence)\n * - 'note': Inline note tags (`{% note %}`)\n * - 'documentation': Documentation block tags (instructions, description, etc.)\n */\nexport type TagType = 'form' | 'group' | 'field' | 'note' | 'documentation';\n\n/**\n * Position of a Markform tag region in the source document.\n * Used for splice-based serialization to preserve content outside tags.\n */\nexport interface TagRegion {\n /** ID of the element (form, group, field ID, or note ID) */\n tagId: Id;\n /** Type of Markform tag */\n tagType: TagType;\n /** Start position in rawSource (inclusive, byte offset) */\n startOffset: number;\n /** End position in rawSource (exclusive, byte offset) */\n endOffset: number;\n /**\n * For field tags: whether region includes value fence.\n * True if field has a value block between open/close tags.\n */\n includesValue?: boolean;\n}\n\n/** Canonical internal representation returned by parseForm() */\nexport interface ParsedForm {\n schema: FormSchema;\n responsesByFieldId: Record<Id, FieldResponse>; // replaces valuesByFieldId + skipsByFieldId\n notes: Note[]; // agent/user notes\n docs: DocumentationBlock[];\n orderIndex: Id[];\n idIndex: Map<Id, IdIndexEntry>;\n metadata?: FormMetadata; // optional for backward compat with forms without frontmatter\n /** The syntax style detected in the original document (for round-trip serialization) */\n syntaxStyle?: SyntaxStyle;\n\n // Raw source preservation for content-preserving serialization\n /**\n * Original markdown source (post-frontmatter, post-preprocessing for comment syntax).\n * Used for splice-based serialization to preserve content outside Markform tags.\n */\n rawSource?: string;\n /**\n * Positions of all Markform tags in rawSource.\n * Sorted by startOffset in document order.\n */\n tagRegions?: TagRegion[];\n}\n\n// =============================================================================\n// Validation Types\n// =============================================================================\n\n/** Validation issue severity */\nexport type Severity = 'error' | 'warning' | 'info';\n\n/** Source position for error locations */\nexport interface SourcePosition {\n line: number;\n col: number;\n}\n\n/** Source range for error locations */\nexport interface SourceRange {\n start: SourcePosition;\n end: SourcePosition;\n}\n\n/** Validation issue from the validation pipeline */\nexport interface ValidationIssue {\n severity: Severity;\n message: string;\n code?: string;\n ref?: Id;\n path?: string;\n range?: SourceRange;\n validatorId?: string;\n source: 'builtin' | 'code' | 'llm';\n}\n\n// =============================================================================\n// Error Types (markform-210)\n// =============================================================================\n\n/** Location information for error reporting */\nexport interface ErrorLocation {\n line?: number;\n column?: number;\n fieldId?: Id;\n noteId?: NoteId;\n}\n\n/** Markdown/Markdoc syntax error */\nexport interface ParseError {\n type: 'parse';\n message: string;\n location?: ErrorLocation;\n}\n\n/** Markform model consistency error */\nexport interface MarkformValidationError {\n type: 'validation';\n message: string;\n location?: ErrorLocation;\n}\n\n/** Union of all Markform error types */\nexport type MarkformError = ParseError | MarkformValidationError;\n\n// =============================================================================\n// Inspect Types\n// =============================================================================\n\n/** Standard reason codes for inspect issues */\nexport type IssueReason =\n | 'validation_error'\n | 'required_missing'\n | 'checkbox_incomplete'\n | 'min_items_not_met'\n | 'optional_unanswered';\n\n/** Issue scope - the level at which the issue applies */\nexport type IssueScope = 'form' | 'group' | 'field' | 'option' | 'column' | 'cell';\n\n/** Inspect issue - unified type for agent/UI consumption */\nexport interface InspectIssue {\n ref: string;\n scope: IssueScope;\n reason: IssueReason;\n message: string;\n severity: 'required' | 'recommended';\n priority: number;\n blockedBy?: Id; // if field is blocked by an incomplete blocking checkpoint\n}\n\n// =============================================================================\n// Summary Types\n// =============================================================================\n\n/** Structure summary - describes static form schema */\nexport interface StructureSummary {\n groupCount: number;\n fieldCount: number;\n optionCount: number;\n /** Count of table columns across all table fields */\n columnCount: number;\n fieldCountByKind: Record<FieldKind, number>;\n groupsById: Record<Id, 'field_group'>;\n fieldsById: Record<Id, FieldKind>;\n optionsById: Record<QualifiedOptionRef, { parentFieldId: Id; parentFieldKind: FieldKind }>;\n /** Map of qualified column refs to column metadata */\n columnsById: Record<QualifiedColumnRef, { parentFieldId: Id; columnType: ColumnTypeName }>;\n}\n\n/** Progress state for a field or form */\nexport type ProgressState = 'empty' | 'incomplete' | 'invalid' | 'complete';\n\n/** Checkbox progress counts */\nexport interface CheckboxProgressCounts {\n total: number;\n // Multi mode\n todo: number;\n done: number;\n incomplete: number;\n active: number;\n na: number;\n // Explicit mode\n unfilled: number;\n yes: number;\n no: number;\n}\n\n/**\n * Field progress tracking.\n * Uses orthogonal booleans instead of ProgressState enum.\n */\nexport interface FieldProgress {\n kind: FieldKind;\n required: boolean;\n answerState: AnswerState;\n hasNotes: boolean;\n noteCount: number;\n /** Whether the field has a value (answered, or has checkbox selections) */\n empty: boolean;\n /** Whether the field passes validation (no issues) */\n valid: boolean;\n issueCount: number;\n checkboxProgress?: CheckboxProgressCounts;\n}\n\n/**\n * Progress counts rollup with three orthogonal dimensions.\n */\nexport interface ProgressCounts {\n totalFields: number;\n requiredFields: number;\n\n // Dimension 1: AnswerState (mutually exclusive, sum to totalFields)\n unansweredFields: number;\n answeredFields: number;\n skippedFields: number;\n abortedFields: number;\n\n // Dimension 2: Validity (mutually exclusive, sum to totalFields)\n validFields: number;\n invalidFields: number;\n\n // Dimension 3: Value presence (mutually exclusive, sum to totalFields)\n emptyFields: number;\n filledFields: number;\n\n // Derived counts\n emptyRequiredFields: number;\n totalNotes: number;\n}\n\n/** Progress summary - tracks filling progress */\nexport interface ProgressSummary {\n counts: ProgressCounts;\n fields: Record<Id, FieldProgress>;\n}\n\n// =============================================================================\n// Inspect/Apply Result Types\n// =============================================================================\n\n/** Result from inspect operation */\nexport interface InspectResult {\n structureSummary: StructureSummary;\n progressSummary: ProgressSummary;\n issues: InspectIssue[];\n isComplete: boolean;\n formState: ProgressState;\n}\n\n/** Details about a rejected patch */\nexport interface PatchRejection {\n patchIndex: number;\n message: string;\n /** Field ID if available (for type mismatch errors) */\n fieldId?: string;\n /** Field kind if available (for type mismatch errors) */\n fieldKind?: string;\n /** Column IDs if available (for table fields) */\n columnIds?: string[];\n}\n\n/** Coercion type for patch warnings */\nexport type PatchCoercionType =\n | 'string_to_list'\n | 'url_to_list'\n | 'option_to_array'\n | 'boolean_to_checkbox'\n | 'array_to_checkboxes';\n\n/** Warning for coerced patches */\nexport interface PatchWarning {\n patchIndex: number;\n fieldId: string;\n message: string;\n coercion: PatchCoercionType;\n}\n\n/** Status of patch application */\nexport type ApplyStatus = 'applied' | 'partial' | 'rejected';\n\n/** Result from apply operation */\nexport interface ApplyResult {\n applyStatus: ApplyStatus;\n structureSummary: StructureSummary;\n progressSummary: ProgressSummary;\n issues: InspectIssue[];\n isComplete: boolean;\n formState: ProgressState;\n /** Patches that were successfully applied (normalized/coerced) */\n appliedPatches: Patch[];\n /** Empty on success, contains rejection details on failure */\n rejectedPatches: PatchRejection[];\n /** Warnings for patches that were coerced */\n warnings: PatchWarning[];\n}\n\n// =============================================================================\n// Patch Types\n// =============================================================================\n\n/** Set string field value */\nexport interface SetStringPatch {\n op: 'set_string';\n fieldId: Id;\n value: string | null;\n}\n\n/** Set number field value */\nexport interface SetNumberPatch {\n op: 'set_number';\n fieldId: Id;\n value: number | null;\n}\n\n/** Set string list field value */\nexport interface SetStringListPatch {\n op: 'set_string_list';\n fieldId: Id;\n value: string[];\n}\n\n/** Set checkboxes field value (merges with existing) */\nexport interface SetCheckboxesPatch {\n op: 'set_checkboxes';\n fieldId: Id;\n value: Record<OptionId, CheckboxValue>;\n}\n\n/** Set single-select field value */\nexport interface SetSingleSelectPatch {\n op: 'set_single_select';\n fieldId: Id;\n value: OptionId | null;\n}\n\n/** Set multi-select field value */\nexport interface SetMultiSelectPatch {\n op: 'set_multi_select';\n fieldId: Id;\n value: OptionId[];\n}\n\n/** Set URL field value */\nexport interface SetUrlPatch {\n op: 'set_url';\n fieldId: Id;\n value: string | null;\n}\n\n/** Set URL list field value */\nexport interface SetUrlListPatch {\n op: 'set_url_list';\n fieldId: Id;\n value: string[];\n}\n\n/** Set date field value */\nexport interface SetDatePatch {\n op: 'set_date';\n fieldId: Id;\n value: string | null; // ISO 8601 date string (YYYY-MM-DD) or null\n}\n\n/** Set year field value */\nexport interface SetYearPatch {\n op: 'set_year';\n fieldId: Id;\n value: number | null; // integer year or null\n}\n\n/**\n * Table row for patches - simplified format.\n * Values can be:\n * - Actual value (string/number)\n * - null to indicate %SKIP% (serialized as %SKIP% in markdown)\n * - \"%SKIP%\" or \"%ABORT%\" sentinel strings with optional reason\n */\nexport type TableRowPatch = Record<Id, CellValue | null | string>;\n\n/**\n * Set table field patch.\n * Uses simplified format where null values become %SKIP% on serialize.\n */\nexport interface SetTablePatch {\n op: 'set_table';\n fieldId: Id;\n value: TableRowPatch[];\n}\n\n/** Clear field value */\nexport interface ClearFieldPatch {\n op: 'clear_field';\n fieldId: Id;\n}\n\n/** Skip field - explicitly skip an optional field without providing a value */\nexport interface SkipFieldPatch {\n op: 'skip_field';\n fieldId: Id;\n role: string; // required: who is skipping\n reason?: string; // optional reason for skipping\n}\n\n/** Abort field - mark a field as unable to be completed */\nexport interface AbortFieldPatch {\n op: 'abort_field';\n fieldId: Id;\n role: string;\n reason?: string;\n}\n\n/** Add note - attach a note to a form element */\nexport interface AddNotePatch {\n op: 'add_note';\n ref: Id;\n role: string;\n text: string;\n}\n\n/** Remove note - remove a specific note by ID */\nexport interface RemoveNotePatch {\n op: 'remove_note';\n noteId: NoteId;\n}\n\n/** Union of all patch types */\nexport type Patch =\n | SetStringPatch\n | SetNumberPatch\n | SetStringListPatch\n | SetCheckboxesPatch\n | SetSingleSelectPatch\n | SetMultiSelectPatch\n | SetUrlPatch\n | SetUrlListPatch\n | SetDatePatch\n | SetYearPatch\n | SetTablePatch\n | ClearFieldPatch\n | SkipFieldPatch\n | AbortFieldPatch\n | AddNotePatch\n | RemoveNotePatch;\n\n// =============================================================================\n// Harness Types\n// =============================================================================\n\n/** Result from harness step */\nexport interface StepResult {\n structureSummary: StructureSummary;\n progressSummary: ProgressSummary;\n issues: InspectIssue[];\n stepBudget: number;\n isComplete: boolean;\n turnNumber: number;\n /** Number of patches actually applied (set by harness.apply, undefined for step-only results) */\n patchesApplied?: number;\n /** Rejection details if patches failed (set by harness.apply, undefined for step-only results) */\n rejectedPatches?: PatchRejection[];\n}\n\n// =============================================================================\n// Session Transcript Types\n// =============================================================================\n\n/** Harness configuration */\nexport interface HarnessConfig {\n maxIssuesPerTurn: number;\n maxPatchesPerTurn: number;\n maxTurns: number;\n /** Maximum unique fields to include issues for per turn (undefined = unlimited) */\n maxFieldsPerTurn?: number;\n /** Maximum unique groups to include issues for per turn (undefined = unlimited) */\n maxGroupsPerTurn?: number;\n /** Target roles to fill (default: [AGENT_ROLE], '*' for all) */\n targetRoles?: string[];\n /** Fill mode: 'continue' (skip filled) or 'overwrite' (re-fill) */\n fillMode?: FillMode;\n /** Max concurrent agents for parallel batches (default: 4) */\n maxParallelAgents?: number;\n}\n\n/** LLM stats for a turn (from live agent) */\nexport interface SessionTurnStats {\n /** Input tokens for this turn */\n inputTokens?: number;\n /** Output tokens for this turn */\n outputTokens?: number;\n /** Tool calls made during this turn */\n toolCalls?: { name: string; count: number }[];\n}\n\n/** Context prompts sent to LLM (for session logging and debugging) */\nexport interface SessionTurnContext {\n /** System prompt with instructions */\n systemPrompt: string;\n /** Context prompt with issues and field schema */\n contextPrompt: string;\n}\n\n// =============================================================================\n// Wire Format Types (for comprehensive session logging)\n// =============================================================================\n\n/**\n * Tool call captured from LLM response step.\n * Omits toolCallId for stability (changes each run).\n */\nexport interface WireToolCall {\n /** Name of the tool that was called */\n toolName: string;\n /** Input passed to the tool */\n input: unknown;\n}\n\n/**\n * Tool result captured from LLM response step.\n * Omits toolCallId for stability (changes each run).\n */\nexport interface WireToolResult {\n /** Name of the tool that returned this result */\n toolName: string;\n /** Result returned by tool.execute() */\n result: unknown;\n}\n\n/**\n * A single step in the LLM response.\n * Corresponds to one iteration of the tool-calling loop.\n */\nexport interface WireResponseStep {\n /** Tool calls made in this step */\n toolCalls: WireToolCall[];\n /** Results returned by tools in this step */\n toolResults: WireToolResult[];\n /** Text output from the model in this step (null if none) */\n text: string | null;\n}\n\n/**\n * The request sent to the LLM via Vercel AI SDK generateText().\n */\nexport interface WireRequestFormat {\n /** System prompt with agent instructions */\n system: string;\n /** Context prompt with form state and issues */\n prompt: string;\n /** Tool definitions with descriptions and schemas */\n tools: Record<\n string,\n {\n /** Tool description shown to LLM */\n description: string;\n /** JSON Schema for tool input */\n inputSchema: unknown;\n }\n >;\n}\n\n/**\n * The response received from the LLM via Vercel AI SDK generateText().\n */\nexport interface WireResponseFormat {\n /** Steps in the tool-calling loop */\n steps: WireResponseStep[];\n /** Token usage for this call */\n usage: {\n inputTokens: number;\n outputTokens: number;\n };\n}\n\n/**\n * Complete wire format capturing the LLM request and response.\n *\n * This captures the exact data sent to and received from the LLM,\n * enabling comprehensive regression testing and prompt engineering visibility.\n *\n * Used in session logging to provide a \"transparent view\" of LLM interactions\n * that can be diffed to catch changes in prompts, schemas, or error messages.\n */\nexport interface WireFormat {\n /** The request sent to the LLM */\n request: WireRequestFormat;\n /** The response received from the LLM */\n response: WireResponseFormat;\n}\n\n/** Session turn - one iteration of the harness loop */\nexport interface SessionTurn {\n turn: number;\n inspect: {\n issues: InspectIssue[];\n };\n /** Context sent to LLM (prompts with field schema info) */\n context?: SessionTurnContext;\n apply: {\n patches: Patch[];\n /** Patches that were rejected (type mismatch, invalid field, etc.) */\n rejectedPatches?: PatchRejection[];\n /** Warnings for patches that were coerced (e.g., string → array) */\n warnings?: PatchWarning[];\n };\n after: {\n requiredIssueCount: number;\n markdownSha256: string;\n answeredFieldCount: number;\n skippedFieldCount: number;\n };\n /** LLM stats (only present for live agent sessions) */\n llm?: SessionTurnStats;\n /**\n * Complete wire format for comprehensive session logging.\n * Captures exact LLM request/response for regression testing.\n * Optional - only populated when wire format capture is enabled.\n */\n wire?: WireFormat;\n}\n\n/** Final session expectations */\nexport interface SessionFinal {\n expectComplete: boolean;\n expectedCompletedForm: string;\n}\n\n/** Session transcript for golden testing */\nexport interface SessionTranscript {\n sessionVersion: string;\n mode: MockMode;\n form: {\n path: string;\n };\n validators?: {\n code?: string;\n };\n mock?: {\n completedMock: string;\n };\n live?: {\n modelId: string;\n };\n harness: HarnessConfig;\n turns: SessionTurn[];\n final: SessionFinal;\n}\n\n// =============================================================================\n// Frontmatter Types\n// =============================================================================\n\n/** Markform frontmatter structure */\nexport interface MarkformFrontmatter {\n markformVersion: string;\n formSummary: StructureSummary;\n formProgress: ProgressSummary;\n formState: ProgressState;\n}\n\n// =============================================================================\n// Validator Types\n// =============================================================================\n\n/** Context passed to validator functions */\nexport interface ValidatorContext {\n schema: FormSchema;\n values: Record<Id, FieldValue>;\n targetId: Id;\n targetSchema: Field | FieldGroup | FormSchema;\n params: Record<string, unknown>;\n}\n\n/** Validator function signature */\nexport type ValidatorFn = (ctx: ValidatorContext) => ValidationIssue[];\n\n/** Validator registry from sidecar files */\nexport type ValidatorRegistry = Record<string, ValidatorFn>;\n\n// =============================================================================\n// Zod Schemas\n// =============================================================================\n\n// Basic schemas\nexport const IdSchema = z.string().min(1);\nexport const OptionIdSchema = z.string().min(1);\nexport const NoteIdSchema = z.string().min(1);\n\nexport const ValidatorRefSchema = z.union([z.string(), z.looseObject({ id: z.string() })]);\n\n// Answer state schema (markform-255)\nexport const AnswerStateSchema = z.enum(['unanswered', 'answered', 'skipped', 'aborted']);\n\n// Checkbox state schemas\nexport const MultiCheckboxStateSchema = z.enum(['todo', 'done', 'incomplete', 'active', 'na']);\n\nexport const SimpleCheckboxStateSchema = z.enum(['todo', 'done']);\n\nexport const ExplicitCheckboxValueSchema = z.enum(['unfilled', 'yes', 'no']);\n\nexport const CheckboxValueSchema = z.union([MultiCheckboxStateSchema, ExplicitCheckboxValueSchema]);\n\nexport const CheckboxModeSchema = z.enum(['multi', 'simple', 'explicit']);\n\nexport const FillModeSchema = z.enum(['continue', 'overwrite']);\n\nexport const MockModeSchema = z.enum(['mock', 'live']);\n\nexport const ApprovalModeSchema = z.enum(['none', 'blocking']);\n\n// Field kind schema\nexport const FieldKindSchema = z.enum([\n 'string',\n 'number',\n 'string_list',\n 'checkboxes',\n 'single_select',\n 'multi_select',\n 'url',\n 'url_list',\n 'date',\n 'year',\n 'table',\n]);\n\n// =============================================================================\n// Table Type Zod Schemas\n// =============================================================================\n\n/** Base column type name schema */\nexport const ColumnTypeNameSchema = z.enum(['string', 'number', 'url', 'date', 'year']);\n\n/**\n * Column type specification schema (for parsing attributes).\n * Either a simple type name or an object with type and required.\n */\nexport const ColumnTypeSpecSchema = z.union([\n ColumnTypeNameSchema,\n z.object({\n type: ColumnTypeNameSchema,\n required: z.boolean(),\n }),\n]);\n\n/**\n * Table column schema (normalized form after parsing).\n * Always has explicit required flag.\n */\nexport const TableColumnSchema = z.object({\n id: IdSchema,\n label: z.string(),\n type: ColumnTypeNameSchema,\n required: z.boolean(),\n});\n\n/** Cell value schema (never null - use sentinels for skipped) */\nexport const CellValueSchema = z.union([z.string(), z.number()]);\n\n/** Cell response schema */\nexport const CellResponseSchema = z.object({\n state: z.enum(['answered', 'skipped', 'aborted']),\n value: CellValueSchema.optional(),\n reason: z.string().optional(),\n});\n\n/** Table row response schema */\nexport const TableRowResponseSchema = z.record(IdSchema, CellResponseSchema);\n\n/** Table value schema */\nexport const TableValueSchema = z.object({\n kind: z.literal('table'),\n rows: z.array(TableRowResponseSchema),\n});\n\n/** Table row patch schema (simplified for patches) */\nexport const TableRowPatchSchema = z.record(\n IdSchema,\n z.union([CellValueSchema, z.null(), z.string()]), // null or sentinel string\n);\n\nexport const FieldPriorityLevelSchema = z.enum(['high', 'medium', 'low']);\n\n// Option schema\nexport const OptionSchema = z.object({\n id: IdSchema,\n label: z.string(),\n});\n\n// Field base schema (partial, used for extension)\n// NOTE: required, priority, and role are explicit (not optional) - parser assigns defaults\nconst FieldBaseSchemaPartial = {\n id: IdSchema,\n label: z.string(),\n required: z.boolean(),\n priority: FieldPriorityLevelSchema,\n role: z.string(),\n validate: z.array(ValidatorRefSchema).optional(),\n report: z.boolean().optional(),\n placeholder: z.string().optional(),\n examples: z.array(z.string()).optional(),\n parallel: z.string().optional(),\n order: z.number().optional(),\n};\n\n// Field schemas\nexport const StringFieldSchema = z.object({\n ...FieldBaseSchemaPartial,\n kind: z.literal('string'),\n multiline: z.boolean().optional(),\n pattern: z.string().optional(),\n minLength: z.number().int().nonnegative().optional(),\n maxLength: z.number().int().nonnegative().optional(),\n});\n\nexport const NumberFieldSchema = z.object({\n ...FieldBaseSchemaPartial,\n kind: z.literal('number'),\n min: z.number().optional(),\n max: z.number().optional(),\n integer: z.boolean().optional(),\n});\n\nexport const StringListFieldSchema = z.object({\n ...FieldBaseSchemaPartial,\n kind: z.literal('string_list'),\n minItems: z.number().int().nonnegative().optional(),\n maxItems: z.number().int().nonnegative().optional(),\n itemMinLength: z.number().int().nonnegative().optional(),\n itemMaxLength: z.number().int().nonnegative().optional(),\n uniqueItems: z.boolean().optional(),\n});\n\nexport const CheckboxesFieldSchema = z.object({\n ...FieldBaseSchemaPartial,\n kind: z.literal('checkboxes'),\n checkboxMode: CheckboxModeSchema, // explicit: parser defaults to 'multi'\n minDone: z.number().int().optional(),\n options: z.array(OptionSchema),\n approvalMode: ApprovalModeSchema, // explicit: parser defaults to 'none'\n});\n\nexport const SingleSelectFieldSchema = z.object({\n ...FieldBaseSchemaPartial,\n kind: z.literal('single_select'),\n options: z.array(OptionSchema),\n});\n\nexport const MultiSelectFieldSchema = z.object({\n ...FieldBaseSchemaPartial,\n kind: z.literal('multi_select'),\n options: z.array(OptionSchema),\n minSelections: z.number().int().nonnegative().optional(),\n maxSelections: z.number().int().nonnegative().optional(),\n});\n\nexport const UrlFieldSchema = z.object({\n ...FieldBaseSchemaPartial,\n kind: z.literal('url'),\n});\n\nexport const UrlListFieldSchema = z.object({\n ...FieldBaseSchemaPartial,\n kind: z.literal('url_list'),\n minItems: z.number().int().nonnegative().optional(),\n maxItems: z.number().int().nonnegative().optional(),\n uniqueItems: z.boolean().optional(),\n});\n\nexport const DateFieldSchema = z.object({\n ...FieldBaseSchemaPartial,\n kind: z.literal('date'),\n min: z.string().optional(), // ISO 8601 date string (YYYY-MM-DD)\n max: z.string().optional(), // ISO 8601 date string (YYYY-MM-DD)\n});\n\nexport const YearFieldSchema = z.object({\n ...FieldBaseSchemaPartial,\n kind: z.literal('year'),\n min: z.number().int().optional(), // minimum year\n max: z.number().int().optional(), // maximum year\n});\n\n/** Table field schema (extends FieldBase pattern) */\nexport const TableFieldSchema = z.object({\n ...FieldBaseSchemaPartial,\n kind: z.literal('table'),\n columns: z.array(TableColumnSchema),\n minRows: z.number().int().nonnegative().optional(),\n maxRows: z.number().int().positive().optional(),\n});\n\nexport const FieldSchema = z.discriminatedUnion('kind', [\n StringFieldSchema,\n NumberFieldSchema,\n StringListFieldSchema,\n CheckboxesFieldSchema,\n SingleSelectFieldSchema,\n MultiSelectFieldSchema,\n UrlFieldSchema,\n UrlListFieldSchema,\n DateFieldSchema,\n YearFieldSchema,\n TableFieldSchema,\n]);\n\n// Field group schema (no 'kind' property - reserved for Field/FieldValue types)\nexport const FieldGroupSchema = z.object({\n id: IdSchema,\n title: z.string().optional(),\n validate: z.array(ValidatorRefSchema).optional(),\n children: z.array(FieldSchema),\n parallel: z.string().optional(),\n order: z.number().optional(),\n});\n\n// Form schema\nexport const FormSchemaSchema = z.object({\n id: IdSchema,\n title: z.string().optional(),\n groups: z.array(FieldGroupSchema),\n});\n\n// Field value schemas\nexport const StringValueSchema = z.object({\n kind: z.literal('string'),\n value: z.string().nullable(),\n});\n\nexport const NumberValueSchema = z.object({\n kind: z.literal('number'),\n value: z.number().nullable(),\n});\n\nexport const StringListValueSchema = z.object({\n kind: z.literal('string_list'),\n items: z.array(z.string()),\n});\n\nexport const CheckboxesValueSchema = z.object({\n kind: z.literal('checkboxes'),\n values: z.record(OptionIdSchema, CheckboxValueSchema),\n});\n\nexport const SingleSelectValueSchema = z.object({\n kind: z.literal('single_select'),\n selected: OptionIdSchema.nullable(),\n});\n\nexport const MultiSelectValueSchema = z.object({\n kind: z.literal('multi_select'),\n selected: z.array(OptionIdSchema),\n});\n\nexport const UrlValueSchema = z.object({\n kind: z.literal('url'),\n value: z.string().nullable(),\n});\n\nexport const UrlListValueSchema = z.object({\n kind: z.literal('url_list'),\n items: z.array(z.string()),\n});\n\nexport const DateValueSchema = z.object({\n kind: z.literal('date'),\n value: z.string().nullable(), // ISO 8601 date string (YYYY-MM-DD) or null\n});\n\nexport const YearValueSchema = z.object({\n kind: z.literal('year'),\n value: z.number().int().nullable(), // integer year or null\n});\n\nexport const FieldValueSchema = z.discriminatedUnion('kind', [\n StringValueSchema,\n NumberValueSchema,\n StringListValueSchema,\n CheckboxesValueSchema,\n SingleSelectValueSchema,\n MultiSelectValueSchema,\n UrlValueSchema,\n UrlListValueSchema,\n DateValueSchema,\n YearValueSchema,\n TableValueSchema,\n]);\n\n// FieldResponse schema (markform-255)\nexport const FieldResponseSchema = z.object({\n state: AnswerStateSchema,\n value: FieldValueSchema.optional(),\n reason: z.string().optional(),\n});\n\n// Note schema (markform-205)\nexport const NoteSchema = z.object({\n id: NoteIdSchema,\n ref: IdSchema,\n role: z.string(),\n text: z.string(),\n});\n\n// Documentation block schema\nexport const DocumentationTagSchema = z.enum(['description', 'instructions', 'documentation']);\n\nexport const DocumentationBlockSchema = z.object({\n tag: DocumentationTagSchema,\n ref: z.string(),\n bodyMarkdown: z.string(),\n});\n\n// Frontmatter harness config schema\nexport const FrontmatterHarnessConfigSchema = z.object({\n maxTurns: z.number().int().positive().optional(),\n maxPatchesPerTurn: z.number().int().positive().optional(),\n maxIssuesPerTurn: z.number().int().positive().optional(),\n});\n\n// Run mode schema\nexport const RunModeSchema = z.enum(['interactive', 'fill', 'research']);\n\n// Form metadata schema\nexport const FormMetadataSchema = z.object({\n markformVersion: z.string(),\n roles: z.array(z.string()).min(1),\n roleInstructions: z.record(z.string(), z.string()),\n harnessConfig: FrontmatterHarnessConfigSchema.optional(),\n runMode: RunModeSchema.optional(),\n});\n\n// Validation schemas\nexport const SeveritySchema = z.enum(['error', 'warning', 'info']);\n\nexport const SourcePositionSchema = z.object({\n line: z.number().int().positive(),\n col: z.number().int().positive(),\n});\n\nexport const SourceRangeSchema = z.object({\n start: SourcePositionSchema,\n end: SourcePositionSchema,\n});\n\nexport const ValidationIssueSchema = z.object({\n severity: SeveritySchema,\n message: z.string(),\n code: z.string().optional(),\n ref: IdSchema.optional(),\n path: z.string().optional(),\n range: SourceRangeSchema.optional(),\n validatorId: z.string().optional(),\n source: z.enum(['builtin', 'code', 'llm']),\n});\n\n// Error location schema (markform-210)\nexport const ErrorLocationSchema = z.object({\n line: z.number().int().positive().optional(),\n column: z.number().int().positive().optional(),\n fieldId: IdSchema.optional(),\n noteId: NoteIdSchema.optional(),\n});\n\n// Error type schemas (markform-210)\nexport const ParseErrorSchema = z.object({\n type: z.literal('parse'),\n message: z.string(),\n location: ErrorLocationSchema.optional(),\n});\n\nexport const MarkformValidationErrorSchema = z.object({\n type: z.literal('validation'),\n message: z.string(),\n location: ErrorLocationSchema.optional(),\n});\n\nexport const MarkformErrorSchema = z.discriminatedUnion('type', [\n ParseErrorSchema,\n MarkformValidationErrorSchema,\n]);\n\n// Inspect issue schema\nexport const IssueReasonSchema = z.enum([\n 'validation_error',\n 'required_missing',\n 'checkbox_incomplete',\n 'min_items_not_met',\n 'optional_unanswered',\n]);\n\nexport const IssueScopeSchema = z.enum(['form', 'group', 'field', 'option', 'column', 'cell']);\n\nexport const InspectIssueSchema = z.object({\n ref: z.union([IdSchema, z.string()]), // Id or QualifiedOptionRef\n scope: IssueScopeSchema,\n reason: IssueReasonSchema,\n message: z.string(),\n severity: z.enum(['required', 'recommended']),\n priority: z.number().int().positive(),\n blockedBy: IdSchema.optional(),\n});\n\n// Summary schemas\nexport const ProgressStateSchema = z.enum(['empty', 'incomplete', 'invalid', 'complete']);\n\nexport const CheckboxProgressCountsSchema = z.object({\n total: z.number().int().nonnegative(),\n // Multi mode\n todo: z.number().int().nonnegative(),\n done: z.number().int().nonnegative(),\n incomplete: z.number().int().nonnegative(),\n active: z.number().int().nonnegative(),\n na: z.number().int().nonnegative(),\n // Explicit mode\n unfilled: z.number().int().nonnegative(),\n yes: z.number().int().nonnegative(),\n no: z.number().int().nonnegative(),\n});\n\nexport const FieldProgressSchema = z.object({\n kind: FieldKindSchema,\n required: z.boolean(),\n answerState: AnswerStateSchema,\n hasNotes: z.boolean(),\n noteCount: z.number().int().nonnegative(),\n empty: z.boolean(),\n valid: z.boolean(),\n issueCount: z.number().int().nonnegative(),\n checkboxProgress: CheckboxProgressCountsSchema.optional(),\n});\n\nexport const ProgressCountsSchema = z.object({\n totalFields: z.number().int().nonnegative(),\n requiredFields: z.number().int().nonnegative(),\n // Dimension 1: AnswerState (mutually exclusive, sum to totalFields)\n unansweredFields: z.number().int().nonnegative(),\n answeredFields: z.number().int().nonnegative(),\n skippedFields: z.number().int().nonnegative(),\n abortedFields: z.number().int().nonnegative(),\n // Dimension 2: Validity (mutually exclusive, sum to totalFields)\n validFields: z.number().int().nonnegative(),\n invalidFields: z.number().int().nonnegative(),\n // Dimension 3: Value presence (mutually exclusive, sum to totalFields)\n emptyFields: z.number().int().nonnegative(),\n filledFields: z.number().int().nonnegative(),\n // Derived counts\n emptyRequiredFields: z.number().int().nonnegative(),\n totalNotes: z.number().int().nonnegative(),\n});\n\nexport const ProgressSummarySchema = z.object({\n counts: ProgressCountsSchema,\n fields: z.record(IdSchema, FieldProgressSchema),\n});\n\nexport const StructureSummarySchema = z.object({\n groupCount: z.number().int().nonnegative(),\n fieldCount: z.number().int().nonnegative(),\n optionCount: z.number().int().nonnegative(),\n fieldCountByKind: z.record(FieldKindSchema, z.number().int().nonnegative()),\n groupsById: z.record(IdSchema, z.literal('field_group')),\n fieldsById: z.record(IdSchema, FieldKindSchema),\n optionsById: z.record(\n z.string(),\n z.object({\n parentFieldId: IdSchema,\n parentFieldKind: FieldKindSchema,\n }),\n ),\n});\n\n// Result schemas\nexport const InspectResultSchema = z.object({\n structureSummary: StructureSummarySchema,\n progressSummary: ProgressSummarySchema,\n issues: z.array(InspectIssueSchema),\n isComplete: z.boolean(),\n formState: ProgressStateSchema,\n});\n\n// Patch rejection schema\nexport const PatchRejectionSchema = z.object({\n patchIndex: z.number().int().nonnegative(),\n message: z.string(),\n fieldId: z.string().optional(),\n fieldKind: z.string().optional(),\n columnIds: z.array(z.string()).optional(),\n});\n\n// Patch warning schemas\nexport const PatchCoercionTypeSchema = z.enum([\n 'string_to_list',\n 'url_to_list',\n 'option_to_array',\n 'boolean_to_checkbox',\n 'array_to_checkboxes',\n]);\n\nexport const PatchWarningSchema = z.object({\n patchIndex: z.number().int().nonnegative(),\n fieldId: z.string(),\n message: z.string(),\n coercion: PatchCoercionTypeSchema,\n});\n\nexport const ApplyStatusSchema = z.enum(['applied', 'partial', 'rejected']);\n\nexport const ApplyResultSchema = z.object({\n applyStatus: ApplyStatusSchema,\n structureSummary: StructureSummarySchema,\n progressSummary: ProgressSummarySchema,\n issues: z.array(InspectIssueSchema),\n isComplete: z.boolean(),\n formState: ProgressStateSchema,\n appliedPatches: z.array(z.lazy(() => PatchSchema)),\n rejectedPatches: z.array(PatchRejectionSchema),\n warnings: z.array(PatchWarningSchema),\n});\n\n// Patch schemas\nexport const SetStringPatchSchema = z.object({\n op: z.literal('set_string'),\n fieldId: IdSchema,\n value: z.string().nullable(),\n});\n\nexport const SetNumberPatchSchema = z.object({\n op: z.literal('set_number'),\n fieldId: IdSchema,\n value: z.number().nullable(),\n});\n\nexport const SetStringListPatchSchema = z.object({\n op: z.literal('set_string_list'),\n fieldId: IdSchema,\n value: z.array(z.string()),\n});\n\nexport const SetCheckboxesPatchSchema = z.object({\n op: z.literal('set_checkboxes'),\n fieldId: IdSchema,\n value: z.record(OptionIdSchema, CheckboxValueSchema),\n});\n\nexport const SetSingleSelectPatchSchema = z.object({\n op: z.literal('set_single_select'),\n fieldId: IdSchema,\n value: OptionIdSchema.nullable(),\n});\n\nexport const SetMultiSelectPatchSchema = z.object({\n op: z.literal('set_multi_select'),\n fieldId: IdSchema,\n value: z.array(OptionIdSchema),\n});\n\nexport const SetUrlPatchSchema = z.object({\n op: z.literal('set_url'),\n fieldId: IdSchema,\n value: z.string().nullable(),\n});\n\nexport const SetUrlListPatchSchema = z.object({\n op: z.literal('set_url_list'),\n fieldId: IdSchema,\n value: z.array(z.string()),\n});\n\nexport const SetDatePatchSchema = z.object({\n op: z.literal('set_date'),\n fieldId: IdSchema,\n value: z.string().nullable(), // ISO 8601 date string (YYYY-MM-DD) or null\n});\n\nexport const SetYearPatchSchema = z.object({\n op: z.literal('set_year'),\n fieldId: IdSchema,\n value: z.number().int().nullable(), // integer year or null\n});\n\n/** Set table patch schema */\nexport const SetTablePatchSchema = z.object({\n op: z.literal('set_table'),\n fieldId: IdSchema,\n value: z.array(TableRowPatchSchema),\n});\n\nexport const ClearFieldPatchSchema = z.object({\n op: z.literal('clear_field'),\n fieldId: IdSchema,\n});\n\nexport const SkipFieldPatchSchema = z.object({\n op: z.literal('skip_field'),\n fieldId: IdSchema,\n role: z.string(),\n reason: z.string().optional(),\n});\n\nexport const AbortFieldPatchSchema = z.object({\n op: z.literal('abort_field'),\n fieldId: IdSchema,\n role: z.string(),\n reason: z.string().optional(),\n});\n\nexport const AddNotePatchSchema = z.object({\n op: z.literal('add_note'),\n ref: IdSchema,\n role: z.string(),\n text: z.string(),\n});\n\nexport const RemoveNotePatchSchema = z.object({\n op: z.literal('remove_note'),\n noteId: NoteIdSchema,\n});\n\nexport const PatchSchema = z.discriminatedUnion('op', [\n SetStringPatchSchema,\n SetNumberPatchSchema,\n SetStringListPatchSchema,\n SetCheckboxesPatchSchema,\n SetSingleSelectPatchSchema,\n SetMultiSelectPatchSchema,\n SetUrlPatchSchema,\n SetUrlListPatchSchema,\n SetDatePatchSchema,\n SetYearPatchSchema,\n SetTablePatchSchema,\n ClearFieldPatchSchema,\n SkipFieldPatchSchema,\n AbortFieldPatchSchema,\n AddNotePatchSchema,\n RemoveNotePatchSchema,\n]);\n\n// Harness schemas\nexport const StepResultSchema = z.object({\n structureSummary: StructureSummarySchema,\n progressSummary: ProgressSummarySchema,\n issues: z.array(InspectIssueSchema),\n stepBudget: z.number().int().nonnegative(),\n isComplete: z.boolean(),\n turnNumber: z.number().int().positive(),\n});\n\n// Session transcript schemas\nexport const HarnessConfigSchema = z.object({\n maxIssuesPerTurn: z.number().int().positive(),\n maxPatchesPerTurn: z.number().int().positive(),\n maxTurns: z.number().int().positive(),\n maxFieldsPerTurn: z.number().int().positive().optional(),\n maxGroupsPerTurn: z.number().int().positive().optional(),\n targetRoles: z.array(z.string()).optional(),\n fillMode: FillModeSchema.optional(),\n maxParallelAgents: z.number().int().positive().optional(),\n});\n\nexport const SessionTurnStatsSchema = z.object({\n inputTokens: z.number().int().nonnegative().optional(),\n outputTokens: z.number().int().nonnegative().optional(),\n toolCalls: z\n .array(\n z.object({\n name: z.string(),\n count: z.number().int().positive(),\n }),\n )\n .optional(),\n});\n\nexport const SessionTurnContextSchema = z.object({\n systemPrompt: z.string(),\n contextPrompt: z.string(),\n});\n\n// Wire format Zod schemas for session logging\nexport const WireToolCallSchema = z.object({\n toolName: z.string(),\n input: z.unknown(),\n});\n\nexport const WireToolResultSchema = z.object({\n toolName: z.string(),\n result: z.unknown(),\n});\n\nexport const WireResponseStepSchema = z.object({\n toolCalls: z.array(WireToolCallSchema),\n toolResults: z.array(WireToolResultSchema),\n text: z.string().nullable(),\n});\n\nexport const WireRequestFormatSchema = z.object({\n system: z.string(),\n prompt: z.string(),\n tools: z.record(\n z.string(),\n z.object({\n description: z.string(),\n inputSchema: z.unknown(),\n }),\n ),\n});\n\nexport const WireResponseFormatSchema = z.object({\n steps: z.array(WireResponseStepSchema),\n usage: z.object({\n inputTokens: z.number().int().nonnegative(),\n outputTokens: z.number().int().nonnegative(),\n }),\n});\n\nexport const WireFormatSchema = z.object({\n request: WireRequestFormatSchema,\n response: WireResponseFormatSchema,\n});\n\nexport const SessionTurnSchema = z.object({\n turn: z.number().int().positive(),\n inspect: z.object({\n issues: z.array(InspectIssueSchema),\n }),\n context: SessionTurnContextSchema.optional(),\n apply: z.object({\n patches: z.array(PatchSchema),\n rejectedPatches: z.array(PatchRejectionSchema).optional(),\n warnings: z.array(PatchWarningSchema).optional(),\n }),\n after: z.object({\n requiredIssueCount: z.number().int().nonnegative(),\n markdownSha256: z.string(),\n answeredFieldCount: z.number().int().nonnegative(),\n skippedFieldCount: z.number().int().nonnegative(),\n }),\n llm: SessionTurnStatsSchema.optional(),\n wire: WireFormatSchema.optional(),\n});\n\nexport const SessionFinalSchema = z.object({\n expectComplete: z.boolean(),\n expectedCompletedForm: z.string(),\n});\n\nexport const SessionTranscriptSchema = z.object({\n sessionVersion: z.string(),\n mode: MockModeSchema,\n form: z.object({\n path: z.string(),\n }),\n validators: z\n .object({\n code: z.string().optional(),\n })\n .optional(),\n mock: z\n .object({\n completedMock: z.string(),\n })\n .optional(),\n live: z\n .object({\n modelId: z.string(),\n })\n .optional(),\n harness: HarnessConfigSchema,\n turns: z.array(SessionTurnSchema),\n final: SessionFinalSchema,\n});\n\n// Frontmatter schema\nexport const MarkformFrontmatterSchema = z.object({\n markformVersion: z.string(),\n formSummary: StructureSummarySchema,\n formProgress: ProgressSummarySchema,\n formState: ProgressStateSchema,\n});\n"],"mappings":"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"}
package/dist/index.d.mts CHANGED
@@ -1,5 +1,5 @@
1
1
 
2
- import { $ as IdIndexEntry, $n as UrlFieldSchema, $t as SetMultiSelectPatch, A as ExplicitCheckboxValue, An as StepResultSchema, At as PatchSchema, B as FieldProgressSchema, Bn as StructureSummarySchema, Bt as RunModeSchema, C as DateFieldSchema, Cn as SingleSelectValue, Cr as WireToolResult, Ct as Option, D as DocumentationBlockSchema, Dn as SourceRange, Dr as YearValue, Dt as ParsedForm, E as DocumentationBlock, En as SourcePositionSchema, Er as YearFieldSchema, Et as OptionSchema, F as FieldGroupSchema, Fn as StringListValue, Ft as ProgressSummary, G as FieldValueSchema, Gn as TableFieldSchema, Gt as SessionTurn, H as FieldResponseSchema, Hn as TableColumn, Ht as SessionFinalSchema, I as FieldKind, In as StringListValueSchema, It as ProgressSummarySchema, J as FormSchemaSchema, Jn as TableRowResponse, Jt as SessionTurnStats, K as FillMode, Kn as TableRowPatch, Kt as SessionTurnContext, L as FieldKindSchema, Ln as StringValue, Lt as QualifiedColumnRef, M as Field, Mn as StringFieldSchema, Mt as ProgressCountsSchema, N as FieldBase, Nn as StringListField, Nt as ProgressState, O as DocumentationTag, On as SourceRangeSchema, Or as YearValueSchema, Ot as Patch, P as FieldGroup, Pn as StringListFieldSchema, Pt as ProgressStateSchema, Q as Id, Qn as UrlField, Qt as SetDatePatchSchema, R as FieldPriorityLevel, Rn as StringValueSchema, Rt as QualifiedOptionRef, S as DateField, Sn as SingleSelectFieldSchema, Sr as WireToolCallSchema, St as NumberValueSchema, T as DateValueSchema, Tn as SourcePosition, Tr as YearField, Tt as OptionIdSchema, U as FieldSchema, Un as TableColumnSchema, Ut as SessionTranscript, V as FieldResponse, Vn as SyntaxStyle, Vt as SessionFinal, W as FieldValue, Wn as TableField, Wt as SessionTranscriptSchema, X as HarnessConfig, Xn as TableValue, Xt as SetCheckboxesPatchSchema, Y as FrontmatterHarnessConfig, Yn as TableRowResponseSchema, Yt as SetCheckboxesPatch, Z as HarnessConfigSchema, Zn as TableValueSchema, Zt as SetDatePatch, _ as CheckboxesValueSchema, _n as Severity, _r as WireResponseFormat, _t as NodeType, a as ApprovalMode, an as SetStringListPatch, ar as UrlValueSchema, at as IssueReason, b as ColumnTypeName, bn as SimpleCheckboxStateSchema, br as WireResponseStepSchema, bt as NumberFieldSchema, c as CheckboxMode, cn as SetStringPatchSchema, cr as ValidatorContext, ct as IssueScopeSchema, d as CheckboxProgressCountsSchema, dn as SetUrlListPatch, dr as ValidatorRefSchema, dt as MultiCheckboxState, en as SetMultiSelectPatchSchema, er as UrlListField, et as IdSchema, f as CheckboxValue, fn as SetUrlListPatchSchema, fr as ValidatorRegistry, ft as MultiCheckboxStateSchema, g as CheckboxesValue, gn as SetYearPatchSchema, gr as WireRequestFormatSchema, gt as MultiSelectValueSchema, h as CheckboxesFieldSchema, hn as SetYearPatch, hr as WireRequestFormat, ht as MultiSelectValue, i as ApplyResultSchema, in as SetSingleSelectPatchSchema, ir as UrlValue, it as InspectResultSchema, j as ExplicitCheckboxValueSchema, jn as StringField, jt as ProgressCounts, k as DocumentationTagSchema, kn as StepResult, kt as PatchRejection, l as CheckboxModeSchema, ln as SetTablePatch, lr as ValidatorFn, lt as MarkformFrontmatter, m as CheckboxesField, mn as SetUrlPatchSchema, mr as WireFormatSchema, mt as MultiSelectFieldSchema, n as AnswerStateSchema, nn as SetNumberPatchSchema, nr as UrlListValue, nt as InspectIssueSchema, o as CellResponse, on as SetStringListPatchSchema, or as ValidationIssue, ot as IssueReasonSchema, p as CheckboxValueSchema, pn as SetUrlPatch, pr as WireFormat, pt as MultiSelectField, q as FormSchema, qn as TableRowPatchSchema, qt as SessionTurnSchema, r as ApplyResult, rn as SetSingleSelectPatch, rr as UrlListValueSchema, rt as InspectResult, s as CellResponseSchema, sn as SetStringPatch, sr as ValidationIssueSchema, st as IssueScope, t as AnswerState, tn as SetNumberPatch, tr as UrlListFieldSchema, tt as InspectIssue, u as CheckboxProgressCounts, un as SetTablePatchSchema, ur as ValidatorRef, ut as MarkformFrontmatterSchema, v as ClearFieldPatch, vn as SeveritySchema, vr as WireResponseFormatSchema, vt as Note, w as DateValue, wn as SingleSelectValueSchema, wr as WireToolResultSchema, wt as OptionId, x as ColumnTypeNameSchema, xn as SingleSelectField, xr as WireToolCall, xt as NumberValue, y as ClearFieldPatchSchema, yn as SimpleCheckboxState, yr as WireResponseStep, yt as NumberField, z as FieldProgress, zn as StructureSummary, zt as RunMode } from "./coreTypes-DE6Giau5.mjs";
2
+ import { $ as HarnessConfigSchema, $n as TableValueSchema, $t as SetDatePatch, A as ExecutionPlan, An as SourceRangeSchema, Ar as YearValueSchema, At as Patch, B as FieldPriorityLevel, Bn as StringValueSchema, Bt as QualifiedOptionRef, C as DateFieldSchema, Cn as SingleSelectField, Cr as WireToolCall, Ct as NumberValue, D as DocumentationBlockSchema, Dn as SourcePosition, Dr as YearField, Dt as OptionIdSchema, E as DocumentationBlock, En as SingleSelectValueSchema, Er as WireToolResultSchema, Et as OptionId, F as FieldBase, Fn as StringListField, Ft as ProgressState, G as FieldSchema, Gn as TableColumnSchema, Gt as SessionTranscript, H as FieldProgressSchema, Hn as StructureSummarySchema, Ht as RunModeSchema, I as FieldGroup, In as StringListFieldSchema, It as ProgressStateSchema, J as FillMode, Jn as TableRowPatch, Jt as SessionTurnContext, K as FieldValue, Kn as TableField, Kt as SessionTranscriptSchema, L as FieldGroupSchema, Ln as StringListValue, Lt as ProgressSummary, M as ExplicitCheckboxValue, Mn as StepResultSchema, Mt as PatchSchema, N as ExplicitCheckboxValueSchema, Nn as StringField, Nt as ProgressCounts, O as DocumentationTag, On as SourcePositionSchema, Or as YearFieldSchema, Ot as OptionSchema, P as Field, Pn as StringFieldSchema, Pt as ProgressCountsSchema, Q as HarnessConfig, Qn as TableValue, Qt as SetCheckboxesPatchSchema, R as FieldKind, Rn as StringListValueSchema, Rt as ProgressSummarySchema, S as DateField, Sn as SimpleCheckboxStateSchema, Sr as WireResponseStepSchema, St as NumberFieldSchema, T as DateValueSchema, Tn as SingleSelectValue, Tr as WireToolResult, Tt as Option, U as FieldResponse, Un as SyntaxStyle, Ut as SessionFinal, V as FieldProgress, Vn as StructureSummary, Vt as RunMode, W as FieldResponseSchema, Wn as TableColumn, Wt as SessionFinalSchema, X as FormSchemaSchema, Xn as TableRowResponse, Xt as SessionTurnStats, Y as FormSchema, Yn as TableRowPatchSchema, Yt as SessionTurnSchema, Z as FrontmatterHarnessConfig, Zn as TableRowResponseSchema, Zt as SetCheckboxesPatch, _ as CheckboxesValueSchema, _n as SetYearPatch, _r as WireRequestFormat, _t as MultiSelectValue, a as ApprovalMode, an as SetSingleSelectPatch, ar as UrlListValueSchema, at as InspectResult, b as ColumnTypeName, bn as SeveritySchema, br as WireResponseFormatSchema, bt as Note, c as CheckboxMode, cn as SetStringListPatchSchema, cr as ValidationIssue, ct as IssueReasonSchema, d as CheckboxProgressCountsSchema, dn as SetTablePatch, dr as ValidatorFn, dt as MarkformFrontmatter, en as SetDatePatchSchema, er as UrlField, et as Id, f as CheckboxValue, fn as SetTablePatchSchema, fr as ValidatorRef, ft as MarkformFrontmatterSchema, g as CheckboxesValue, gn as SetUrlPatchSchema, gr as WireFormatSchema, gt as MultiSelectFieldSchema, h as CheckboxesFieldSchema, hn as SetUrlPatch, hr as WireFormat, ht as MultiSelectField, i as ApplyResultSchema, in as SetNumberPatchSchema, ir as UrlListValue, it as InspectIssueSchema, j as ExecutionPlanItem, jn as StepResult, jt as PatchRejection, k as DocumentationTagSchema, kn as SourceRange, kr as YearValue, kt as ParsedForm, l as CheckboxModeSchema, ln as SetStringPatch, lr as ValidationIssueSchema, lt as IssueScope, m as CheckboxesField, mn as SetUrlListPatchSchema, mr as ValidatorRegistry, mt as MultiCheckboxStateSchema, n as AnswerStateSchema, nn as SetMultiSelectPatchSchema, nr as UrlListField, nt as IdSchema, o as CellResponse, on as SetSingleSelectPatchSchema, or as UrlValue, ot as InspectResultSchema, p as CheckboxValueSchema, pn as SetUrlListPatch, pr as ValidatorRefSchema, pt as MultiCheckboxState, q as FieldValueSchema, qn as TableFieldSchema, qt as SessionTurn, r as ApplyResult, rn as SetNumberPatch, rr as UrlListFieldSchema, rt as InspectIssue, s as CellResponseSchema, sn as SetStringListPatch, sr as UrlValueSchema, st as IssueReason, t as AnswerState, tn as SetMultiSelectPatch, tr as UrlFieldSchema, tt as IdIndexEntry, u as CheckboxProgressCounts, un as SetStringPatchSchema, ur as ValidatorContext, ut as IssueScopeSchema, v as ClearFieldPatch, vn as SetYearPatchSchema, vr as WireRequestFormatSchema, vt as MultiSelectValueSchema, w as DateValue, wn as SingleSelectFieldSchema, wr as WireToolCallSchema, wt as NumberValueSchema, x as ColumnTypeNameSchema, xn as SimpleCheckboxState, xr as WireResponseStep, xt as NumberField, y as ClearFieldPatchSchema, yn as Severity, yr as WireResponseFormat, yt as NodeType, z as FieldKindSchema, zn as StringValue, zt as QualifiedColumnRef } from "./coreTypes-BMEs8h_2.mjs";
3
3
  import { LanguageModel, Tool } from "ai";
4
4
 
5
5
  //#region src/errors.d.ts
@@ -182,10 +182,26 @@ interface SerializeOptions {
182
182
  * defaulting to 'tags' if not detected.
183
183
  */
184
184
  syntaxStyle?: SyntaxStyle;
185
+ /**
186
+ * Whether to preserve content outside Markform tags during serialization.
187
+ * - true (default): Use splice-based serialization to preserve markdown content
188
+ * outside Markform tags (headings, paragraphs, code blocks, etc.)
189
+ * - false: Regenerate entire document from structured data
190
+ *
191
+ * When true and rawSource/tagRegions are available, content preservation uses
192
+ * "raw slicing" - keeping original text and only replacing Markform tag regions.
193
+ * Falls back to regeneration if rawSource is unavailable.
194
+ */
195
+ preserveContent?: boolean;
185
196
  }
186
197
  /**
187
198
  * Serialize a ParsedForm to canonical Markdoc markdown format.
188
199
  *
200
+ * Supports two modes:
201
+ * 1. Content-preserving (default): When rawSource is available, preserves markdown
202
+ * content outside Markform tags using splice-based serialization.
203
+ * 2. Regeneration: Builds entire document from structured data.
204
+ *
189
205
  * @param form - The parsed form to serialize
190
206
  * @param opts - Serialization options
191
207
  * @returns The canonical markdown string
@@ -346,6 +362,127 @@ declare function serializeSession(session: SessionTranscript): string;
346
362
  */
347
363
  declare function applyPatches(form: ParsedForm, patches: Patch[]): ApplyResult;
348
364
  //#endregion
365
+ //#region src/markdown/markdownHeaders.d.ts
366
+ /**
367
+ * Information about a markdown heading.
368
+ */
369
+ interface HeadingInfo {
370
+ /** Heading level (1-6 for h1-h6) */
371
+ level: number;
372
+ /** Heading text content (without # prefix) */
373
+ title: string;
374
+ /** Line number (1-indexed) where heading starts */
375
+ line: number;
376
+ /** Full source position */
377
+ position: SourceRange;
378
+ }
379
+ /**
380
+ * Find all headings in a markdown document.
381
+ * Returns headings in document order.
382
+ *
383
+ * Only ATX-style headings (# Title) are recognized.
384
+ * Headings inside fenced code blocks are ignored.
385
+ */
386
+ declare function findAllHeadings(markdown: string): HeadingInfo[];
387
+ /**
388
+ * Find all headings that enclose a given line position.
389
+ * Returns headings from innermost (most specific) to outermost (least specific).
390
+ *
391
+ * A heading "encloses" a line if:
392
+ * 1. The heading appears before the line
393
+ * 2. No heading of equal or higher level appears between them
394
+ *
395
+ * @param markdown - The markdown source text
396
+ * @param line - The line number (1-indexed)
397
+ * @returns Array of enclosing headings, innermost first
398
+ */
399
+ declare function findEnclosingHeadings(markdown: string, line: number): HeadingInfo[];
400
+ //#endregion
401
+ //#region src/engine/injectIds.d.ts
402
+ /**
403
+ * Information about a checkbox found in markdown.
404
+ */
405
+ interface CheckboxInfo {
406
+ /** Existing ID, if any (from {% #id %} annotation) */
407
+ id?: string;
408
+ /** Checkbox label text */
409
+ label: string;
410
+ /** Current checkbox state from marker */
411
+ state: CheckboxValue;
412
+ /** Line number (1-indexed) where checkbox appears */
413
+ line: number;
414
+ /** Source position of the checkbox line */
415
+ position: SourceRange;
416
+ /** Enclosing headings, innermost first */
417
+ enclosingHeadings: HeadingInfo[];
418
+ }
419
+ /**
420
+ * Find all checkboxes in a markdown document.
421
+ * Returns checkboxes in document order with enclosing heading info.
422
+ */
423
+ declare function findAllCheckboxes(markdown: string): CheckboxInfo[];
424
+ /**
425
+ * Options for ID injection.
426
+ */
427
+ interface InjectCheckboxIdsOptions {
428
+ /**
429
+ * Generator function to create IDs for checkboxes.
430
+ * Receives checkbox info and 0-based index of checkboxes needing IDs.
431
+ */
432
+ generator: (info: CheckboxInfo, index: number) => string;
433
+ /**
434
+ * If true (default), only inject IDs for checkboxes missing them.
435
+ * If false, replace all IDs.
436
+ */
437
+ onlyMissing?: boolean;
438
+ }
439
+ /**
440
+ * Result of ID injection.
441
+ */
442
+ interface InjectIdsResult {
443
+ /** Updated markdown with injected IDs */
444
+ markdown: string;
445
+ /** Number of IDs that were injected */
446
+ injectedCount: number;
447
+ /** Map of checkbox label to injected ID */
448
+ injectedIds: Map<string, string>;
449
+ }
450
+ /**
451
+ * Inject IDs into checkboxes in a markdown document.
452
+ *
453
+ * Uses a generator function to create unique IDs for each checkbox.
454
+ * Throws if duplicate IDs are generated or if generated IDs conflict
455
+ * with existing ones.
456
+ */
457
+ declare function injectCheckboxIds(markdown: string, options: InjectCheckboxIdsOptions): InjectIdsResult;
458
+ /**
459
+ * Options for header ID injection.
460
+ */
461
+ interface InjectHeaderIdsOptions {
462
+ /**
463
+ * Generator function to create IDs for headings.
464
+ * Receives heading info and 0-based index of headings needing IDs.
465
+ */
466
+ generator: (info: HeadingInfo, index: number) => string;
467
+ /**
468
+ * If true (default), only inject IDs for headings missing them.
469
+ * If false, replace all IDs.
470
+ */
471
+ onlyMissing?: boolean;
472
+ /**
473
+ * Heading levels to process. Defaults to all levels [1, 2, 3, 4, 5, 6].
474
+ */
475
+ levels?: number[];
476
+ }
477
+ /**
478
+ * Inject IDs into headings in a markdown document.
479
+ *
480
+ * Uses a generator function to create unique IDs for each heading.
481
+ * Throws if duplicate IDs are generated or if generated IDs conflict
482
+ * with existing ones.
483
+ */
484
+ declare function injectHeaderIds(markdown: string, options: InjectHeaderIdsOptions): InjectIdsResult;
485
+ //#endregion
349
486
  //#region src/engine/jsonSchema.d.ts
350
487
  /** JSON Schema type values */
351
488
  type JsonSchemaType = 'string' | 'number' | 'integer' | 'boolean' | 'array' | 'object' | 'null';
@@ -694,6 +831,14 @@ declare class FormHarness {
694
831
  * Form-level issues are always included.
695
832
  */
696
833
  private filterIssuesByScope;
834
+ /**
835
+ * Filter issues by order level.
836
+ *
837
+ * Only includes issues for fields at the current (lowest incomplete) order level.
838
+ * Fields at higher order levels are deferred until all lower-order fields are complete.
839
+ * If no order attributes are used, all issues pass through (all at order 0).
840
+ */
841
+ private filterIssuesByOrder;
697
842
  /**
698
843
  * Extract field ID from an issue ref.
699
844
  */
@@ -847,6 +992,25 @@ interface FillCallbacks {
847
992
  inputTokens: number;
848
993
  outputTokens: number;
849
994
  }): void;
995
+ /** Called when a parallel batch starts execution */
996
+ onBatchStart?(info: {
997
+ batchId: string;
998
+ itemCount: number;
999
+ }): void;
1000
+ /** Called when a parallel batch completes */
1001
+ onBatchComplete?(info: {
1002
+ batchId: string;
1003
+ patchesApplied: number;
1004
+ }): void;
1005
+ /** Called when an order level starts processing */
1006
+ onOrderLevelStart?(info: {
1007
+ order: number;
1008
+ }): void;
1009
+ /** Called when an order level completes */
1010
+ onOrderLevelComplete?(info: {
1011
+ order: number;
1012
+ patchesApplied: number;
1013
+ }): void;
850
1014
  }
851
1015
  /**
852
1016
  * Options for the fillForm function.
@@ -899,6 +1063,16 @@ interface FillOptions {
899
1063
  targetRoles?: string[];
900
1064
  /** Fill mode: 'continue' (skip filled) or 'overwrite' (re-fill) */
901
1065
  fillMode?: FillMode;
1066
+ /**
1067
+ * Enable parallel execution for forms with `parallel` batches.
1068
+ * When false (default), parallel attributes are ignored and everything runs serially.
1069
+ * When true, batch items run concurrently up to `maxParallelAgents`.
1070
+ *
1071
+ * @default false
1072
+ */
1073
+ enableParallel?: boolean;
1074
+ /** Max concurrent agents for parallel batches (default: 4) */
1075
+ maxParallelAgents?: number;
902
1076
  /** Callbacks for observing form-filling execution */
903
1077
  callbacks?: FillCallbacks;
904
1078
  /** AbortSignal for cancellation */
@@ -1091,6 +1265,96 @@ declare function fillForm(options: FillOptions): Promise<FillResult>;
1091
1265
  */
1092
1266
  declare function resolveHarnessConfig(form: ParsedForm, options?: Partial<FillOptions>): HarnessConfig;
1093
1267
  //#endregion
1268
+ //#region src/harness/parallelHarness.d.ts
1269
+ /**
1270
+ * Scoped fill request for a parallel agent.
1271
+ * Provides the full form for context but limits the agent to specific fields.
1272
+ */
1273
+ interface ScopedFillRequest {
1274
+ /** Full form for read-only context */
1275
+ form: ParsedForm;
1276
+ /** Field IDs this agent should fill */
1277
+ targetFieldIds: string[];
1278
+ /** Group IDs this agent is responsible for */
1279
+ targetGroupIds: string[];
1280
+ /** Issues scoped to target fields */
1281
+ issues: InspectIssue[];
1282
+ }
1283
+ /**
1284
+ * Result of running a single order level.
1285
+ */
1286
+ interface ParallelStepResult {
1287
+ /** Total patches applied in this order level */
1288
+ patchesApplied: number;
1289
+ /** Whether any errors occurred */
1290
+ errors: string[];
1291
+ }
1292
+ /**
1293
+ * Result of running all order levels.
1294
+ */
1295
+ interface ParallelRunResult {
1296
+ /** Whether the form is complete */
1297
+ isComplete: boolean;
1298
+ /** Total patches applied across all levels */
1299
+ totalPatchesApplied: number;
1300
+ /** Order levels processed */
1301
+ orderLevelsProcessed: number[];
1302
+ /** Errors from any level */
1303
+ errors: string[];
1304
+ }
1305
+ /**
1306
+ * Configuration for the parallel harness.
1307
+ */
1308
+ interface ParallelHarnessConfig {
1309
+ /** Maximum concurrent agents for parallel batches (default: DEFAULT_MAX_PARALLEL_AGENTS) */
1310
+ maxParallelAgents?: number;
1311
+ /** Factory to create scoped agents for parallel batch items */
1312
+ agentFactory?: (request: ScopedFillRequest) => Agent;
1313
+ /** Callback when a parallel batch starts */
1314
+ onBatchStart?: (batchId: string) => void;
1315
+ /** Callback when a parallel batch completes */
1316
+ onBatchComplete?: (batchId: string) => void;
1317
+ /** Callback when an order level starts processing */
1318
+ onOrderLevelStart?: (order: number) => void;
1319
+ /** Callback when an order level completes */
1320
+ onOrderLevelComplete?: (order: number) => void;
1321
+ /** Target roles (default: ['agent']) */
1322
+ targetRoles?: string[];
1323
+ /** Max patches per agent turn */
1324
+ maxPatchesPerTurn?: number;
1325
+ }
1326
+ /**
1327
+ * Filter issues to only those relevant to an execution plan item's fields.
1328
+ * Form-scoped issues are excluded (they don't belong to individual agents).
1329
+ */
1330
+ declare function scopeIssuesForItem(form: ParsedForm, item: ExecutionPlanItem, allIssues: InspectIssue[]): InspectIssue[];
1331
+ /**
1332
+ * Parallel harness that orchestrates concurrent agent execution.
1333
+ */
1334
+ declare class ParallelHarness {
1335
+ private form;
1336
+ private plan;
1337
+ private config;
1338
+ constructor(form: ParsedForm, config?: ParallelHarnessConfig);
1339
+ /**
1340
+ * Get the execution plan.
1341
+ */
1342
+ getExecutionPlan(): ExecutionPlan;
1343
+ /**
1344
+ * Run a single order level: execute loose serial items with the primary agent,
1345
+ * and parallel batch items concurrently.
1346
+ */
1347
+ runOrderLevel(order: number, primaryAgent: Agent): Promise<ParallelStepResult>;
1348
+ /**
1349
+ * Run all order levels sequentially, filling the entire form.
1350
+ */
1351
+ runAll(primaryAgent: Agent): Promise<ParallelRunResult>;
1352
+ }
1353
+ /**
1354
+ * Create a parallel harness for the given form.
1355
+ */
1356
+ declare function createParallelHarness(form: ParsedForm, config?: ParallelHarnessConfig): ParallelHarness;
1357
+ //#endregion
1094
1358
  //#region src/research/researchTypes.d.ts
1095
1359
  /**
1096
1360
  * Research execution status.
@@ -1178,5 +1442,5 @@ declare function validateResearchForm(form: ParsedForm): {
1178
1442
  /** Markform version (injected at build time). */
1179
1443
  declare const VERSION: string;
1180
1444
  //#endregion
1181
- export { type AgentResponse, type AnswerState, AnswerStateSchema, type ApplyResult, ApplyResultSchema, type CellResponse, CellResponseSchema, type CellScopeRef, type CheckboxMode, CheckboxModeSchema, type CheckboxProgressCounts, CheckboxProgressCountsSchema, type CheckboxValue, CheckboxValueSchema, type CheckboxesField, CheckboxesFieldSchema, type CheckboxesValue, CheckboxesValueSchema, type ClearFieldPatch, ClearFieldPatchSchema, type CoerceInputContextResult, type CoercionResult, type ColumnTypeName, ColumnTypeNameSchema, type ComputedSummaries, type DateField, DateFieldSchema, type DateValue, DateValueSchema, type DocumentationBlock, DocumentationBlockSchema, type DocumentationTag, DocumentationTagSchema, type ExplicitCheckboxValue, ExplicitCheckboxValueSchema, type Field, type FieldBase, type FieldGroup, FieldGroupSchema, type FieldKind, FieldKindSchema, type FieldProgress, FieldProgressSchema, type FieldResponse, FieldResponseSchema, FieldSchema, type FieldScopeRef, type FieldValue, FieldValueSchema, type FillCallbacks, type FillOptions, type FillResult, type FillStatus, FormHarness, type FormSchema, FormSchemaSchema, type FrontmatterHarnessConfig, type HarnessConfig, HarnessConfigSchema, type Id, type IdIndexEntry, IdSchema, type InputContext, type InspectIssue, InspectIssueSchema, type InspectOptions, type InspectResult, InspectResultSchema, type IssueReason, IssueReasonSchema, type IssueScope, IssueScopeSchema, type JsonSchemaDraft, type JsonSchemaOptions, type JsonSchemaResult, MarkformAbortError, MarkformConfigError, MarkformError, type MarkformFieldExtension, type MarkformFrontmatter, MarkformFrontmatterSchema, MarkformLlmError, MarkformParseError, MarkformPatchError, type MarkformSchemaExtension, MarkformValidationError, MockAgent, type MultiCheckboxState, MultiCheckboxStateSchema, type MultiSelectField, MultiSelectFieldSchema, type MultiSelectValue, MultiSelectValueSchema, type NodeType, type NumberField, NumberFieldSchema, type NumberValue, NumberValueSchema, type Option, type OptionId, OptionIdSchema, OptionSchema, ParseError, type ParseScopeRefResult, type ParseTableResult, type ParsedForm, type ParsedRawTable, type ParsedScopeRef, type Patch, type PatchRejection, PatchSchema, type ProgressCounts, ProgressCountsSchema, type ProgressState, ProgressStateSchema, type ProgressSummary, ProgressSummarySchema, type QualifiedColumnRef, type QualifiedOptionRef, type QualifiedScopeRef, type RawFieldValue, type ResearchOptions, type ResearchResult, type ResearchStatus, type RunMode, RunModeSchema, type SerializeOptions, type SessionFinal, SessionFinalSchema, type SessionTranscript, SessionTranscriptSchema, type SessionTurn, SessionTurnSchema, type SessionTurnStats, type SetCheckboxesPatch, SetCheckboxesPatchSchema, type SetDatePatch, SetDatePatchSchema, type SetMultiSelectPatch, SetMultiSelectPatchSchema, type SetNumberPatch, SetNumberPatchSchema, type SetSingleSelectPatch, SetSingleSelectPatchSchema, type SetStringListPatch, SetStringListPatchSchema, type SetStringPatch, SetStringPatchSchema, type SetTablePatch, SetTablePatchSchema, type SetUrlListPatch, SetUrlListPatchSchema, type SetUrlPatch, SetUrlPatchSchema, type SetYearPatch, SetYearPatchSchema, type Severity, SeveritySchema, type SimpleCheckboxState, SimpleCheckboxStateSchema, type SingleSelectField, SingleSelectFieldSchema, type SingleSelectValue, SingleSelectValueSchema, type SourcePosition, SourcePositionSchema, type SourceRange, SourceRangeSchema, type StepResult, StepResultSchema, type StringField, StringFieldSchema, type StringListField, StringListFieldSchema, type StringListValue, StringListValueSchema, type StringValue, StringValueSchema, type StructureSummary, StructureSummarySchema, type TableColumn, TableColumnSchema, type TableField, TableFieldSchema, type TableRowPatch, TableRowPatchSchema, type TableRowResponse, TableRowResponseSchema, type TableValue, TableValueSchema, type TurnProgress, type TurnStats, type UrlField, UrlFieldSchema, type UrlListField, UrlListFieldSchema, type UrlListValue, UrlListValueSchema, type UrlValue, UrlValueSchema, VERSION, type ValidateOptions, type ValidateResult, type ValidationIssue, ValidationIssueSchema, type ValidatorContext, type ValidatorFn, type ValidatorRef, ValidatorRefSchema, type ValidatorRegistry, type WireFormat, WireFormatSchema, type WireRequestFormat, WireRequestFormatSchema, type WireResponseFormat, WireResponseFormatSchema, type WireResponseStep, WireResponseStepSchema, type WireToolCall, WireToolCallSchema, type WireToolResult, WireToolResultSchema, type YearField, YearFieldSchema, type YearValue, YearValueSchema, applyPatches, coerceInputContext, coerceToFieldPatch, computeAllSummaries, computeFormState, computeProgressSummary, computeStructureSummary, createHarness, createMockAgent, fieldToJsonSchema, fillForm, findFieldById, formToJsonSchema, getFieldId, inspect, isAbortError, isCellRef, isConfigError, isFieldRef, isFormComplete, isLlmError, isMarkformError, isParseError, isPatchError, isQualifiedRef, isResearchForm, isRetryableError, isValidationError, parseCellValue, parseForm, parseMarkdownTable, parseRawTable, parseScopeRef, parseSession, resolveHarnessConfig, runResearch, serializeForm, serializeReport, serializeScopeRef, serializeSession, validate, validateResearchForm };
1445
+ export { type AgentResponse, type AnswerState, AnswerStateSchema, type ApplyResult, ApplyResultSchema, type CellResponse, CellResponseSchema, type CellScopeRef, type CheckboxInfo, type CheckboxMode, CheckboxModeSchema, type CheckboxProgressCounts, CheckboxProgressCountsSchema, type CheckboxValue, CheckboxValueSchema, type CheckboxesField, CheckboxesFieldSchema, type CheckboxesValue, CheckboxesValueSchema, type ClearFieldPatch, ClearFieldPatchSchema, type CoerceInputContextResult, type CoercionResult, type ColumnTypeName, ColumnTypeNameSchema, type ComputedSummaries, type DateField, DateFieldSchema, type DateValue, DateValueSchema, type DocumentationBlock, DocumentationBlockSchema, type DocumentationTag, DocumentationTagSchema, type ExplicitCheckboxValue, ExplicitCheckboxValueSchema, type Field, type FieldBase, type FieldGroup, FieldGroupSchema, type FieldKind, FieldKindSchema, type FieldProgress, FieldProgressSchema, type FieldResponse, FieldResponseSchema, FieldSchema, type FieldScopeRef, type FieldValue, FieldValueSchema, type FillCallbacks, type FillOptions, type FillResult, type FillStatus, FormHarness, type FormSchema, FormSchemaSchema, type FrontmatterHarnessConfig, type HarnessConfig, HarnessConfigSchema, type HeadingInfo, type Id, type IdIndexEntry, IdSchema, type InjectCheckboxIdsOptions, type InjectHeaderIdsOptions, type InjectIdsResult, type InputContext, type InspectIssue, InspectIssueSchema, type InspectOptions, type InspectResult, InspectResultSchema, type IssueReason, IssueReasonSchema, type IssueScope, IssueScopeSchema, type JsonSchemaDraft, type JsonSchemaOptions, type JsonSchemaResult, MarkformAbortError, MarkformConfigError, MarkformError, type MarkformFieldExtension, type MarkformFrontmatter, MarkformFrontmatterSchema, MarkformLlmError, MarkformParseError, MarkformPatchError, type MarkformSchemaExtension, MarkformValidationError, MockAgent, type MultiCheckboxState, MultiCheckboxStateSchema, type MultiSelectField, MultiSelectFieldSchema, type MultiSelectValue, MultiSelectValueSchema, type NodeType, type NumberField, NumberFieldSchema, type NumberValue, NumberValueSchema, type Option, type OptionId, OptionIdSchema, OptionSchema, ParallelHarness, type ParallelHarnessConfig, type ParallelRunResult, type ParallelStepResult, ParseError, type ParseScopeRefResult, type ParseTableResult, type ParsedForm, type ParsedRawTable, type ParsedScopeRef, type Patch, type PatchRejection, PatchSchema, type ProgressCounts, ProgressCountsSchema, type ProgressState, ProgressStateSchema, type ProgressSummary, ProgressSummarySchema, type QualifiedColumnRef, type QualifiedOptionRef, type QualifiedScopeRef, type RawFieldValue, type ResearchOptions, type ResearchResult, type ResearchStatus, type RunMode, RunModeSchema, type ScopedFillRequest, type SerializeOptions, type SessionFinal, SessionFinalSchema, type SessionTranscript, SessionTranscriptSchema, type SessionTurn, SessionTurnSchema, type SessionTurnStats, type SetCheckboxesPatch, SetCheckboxesPatchSchema, type SetDatePatch, SetDatePatchSchema, type SetMultiSelectPatch, SetMultiSelectPatchSchema, type SetNumberPatch, SetNumberPatchSchema, type SetSingleSelectPatch, SetSingleSelectPatchSchema, type SetStringListPatch, SetStringListPatchSchema, type SetStringPatch, SetStringPatchSchema, type SetTablePatch, SetTablePatchSchema, type SetUrlListPatch, SetUrlListPatchSchema, type SetUrlPatch, SetUrlPatchSchema, type SetYearPatch, SetYearPatchSchema, type Severity, SeveritySchema, type SimpleCheckboxState, SimpleCheckboxStateSchema, type SingleSelectField, SingleSelectFieldSchema, type SingleSelectValue, SingleSelectValueSchema, type SourcePosition, SourcePositionSchema, type SourceRange, SourceRangeSchema, type StepResult, StepResultSchema, type StringField, StringFieldSchema, type StringListField, StringListFieldSchema, type StringListValue, StringListValueSchema, type StringValue, StringValueSchema, type StructureSummary, StructureSummarySchema, type TableColumn, TableColumnSchema, type TableField, TableFieldSchema, type TableRowPatch, TableRowPatchSchema, type TableRowResponse, TableRowResponseSchema, type TableValue, TableValueSchema, type TurnProgress, type TurnStats, type UrlField, UrlFieldSchema, type UrlListField, UrlListFieldSchema, type UrlListValue, UrlListValueSchema, type UrlValue, UrlValueSchema, VERSION, type ValidateOptions, type ValidateResult, type ValidationIssue, ValidationIssueSchema, type ValidatorContext, type ValidatorFn, type ValidatorRef, ValidatorRefSchema, type ValidatorRegistry, type WireFormat, WireFormatSchema, type WireRequestFormat, WireRequestFormatSchema, type WireResponseFormat, WireResponseFormatSchema, type WireResponseStep, WireResponseStepSchema, type WireToolCall, WireToolCallSchema, type WireToolResult, WireToolResultSchema, type YearField, YearFieldSchema, type YearValue, YearValueSchema, applyPatches, coerceInputContext, coerceToFieldPatch, computeAllSummaries, computeFormState, computeProgressSummary, computeStructureSummary, createHarness, createMockAgent, createParallelHarness, fieldToJsonSchema, fillForm, findAllCheckboxes, findAllHeadings, findEnclosingHeadings, findFieldById, formToJsonSchema, getFieldId, injectCheckboxIds, injectHeaderIds, inspect, isAbortError, isCellRef, isConfigError, isFieldRef, isFormComplete, isLlmError, isMarkformError, isParseError, isPatchError, isQualifiedRef, isResearchForm, isRetryableError, isValidationError, parseCellValue, parseForm, parseMarkdownTable, parseRawTable, parseScopeRef, parseSession, resolveHarnessConfig, runResearch, scopeIssuesForItem, serializeForm, serializeReport, serializeScopeRef, serializeSession, validate, validateResearchForm };
1182
1446
  //# sourceMappingURL=index.d.mts.map
package/dist/index.mjs CHANGED
@@ -1,7 +1,7 @@
1
1
 
2
- import { $ as SetUrlListPatchSchema, A as MultiCheckboxStateSchema, At as WireToolResultSchema, B as ProgressSummarySchema, C as HarnessConfigSchema, Ct as ValidationIssueSchema, D as IssueReasonSchema, Dt as WireResponseFormatSchema, E as InspectResultSchema, Et as WireRequestFormatSchema, F as OptionIdSchema, G as SetCheckboxesPatchSchema, H as SessionFinalSchema, I as OptionSchema, J as SetNumberPatchSchema, K as SetDatePatchSchema, L as PatchSchema, M as MultiSelectValueSchema, Mt as YearValueSchema, N as NumberFieldSchema, O as IssueScopeSchema, Ot as WireResponseStepSchema, P as NumberValueSchema, Q as SetTablePatchSchema, R as ProgressCountsSchema, S as FormSchemaSchema, St as UrlValueSchema, T as InspectIssueSchema, Tt as WireFormatSchema, U as SessionTranscriptSchema, V as RunModeSchema, W as SessionTurnSchema, X as SetStringListPatchSchema, Y as SetSingleSelectPatchSchema, Z as SetStringPatchSchema, _ as FieldKindSchema, _t as TableRowResponseSchema, a as CheckboxProgressCountsSchema, at as SingleSelectValueSchema, b as FieldSchema, bt as UrlListFieldSchema, c as CheckboxesValueSchema, ct as StepResultSchema, d as DateFieldSchema, dt as StringListValueSchema, et as SetUrlPatchSchema, f as DateValueSchema, ft as StringValueSchema, g as FieldGroupSchema, gt as TableRowPatchSchema, h as ExplicitCheckboxValueSchema, ht as TableFieldSchema, i as CheckboxModeSchema, it as SingleSelectFieldSchema, j as MultiSelectFieldSchema, jt as YearFieldSchema, k as MarkformFrontmatterSchema, kt as WireToolCallSchema, l as ClearFieldPatchSchema, lt as StringFieldSchema, m as DocumentationTagSchema, mt as TableColumnSchema, n as ApplyResultSchema, nt as SeveritySchema, o as CheckboxValueSchema, ot as SourcePositionSchema, p as DocumentationBlockSchema, pt as StructureSummarySchema, q as SetMultiSelectPatchSchema, r as CellResponseSchema, rt as SimpleCheckboxStateSchema, s as CheckboxesFieldSchema, st as SourceRangeSchema, t as AnswerStateSchema, tt as SetYearPatchSchema, u as ColumnTypeNameSchema, ut as StringListFieldSchema, v as FieldProgressSchema, vt as TableValueSchema, w as IdSchema, wt as ValidatorRefSchema, x as FieldValueSchema, xt as UrlListValueSchema, y as FieldResponseSchema, yt as UrlFieldSchema, z as ProgressStateSchema } from "./coreTypes-DiCddBKu.mjs";
3
- import { $ as isConfigError, G as MarkformConfigError, J as MarkformParseError, K as MarkformError, Q as isAbortError, W as MarkformAbortError, X as MarkformValidationError, Y as MarkformPatchError, Z as ParseError, a as validate, at as isValidationError, c as computeProgressSummary, d as serializeForm, et as isLlmError, i as inspect, it as isRetryableError, l as computeStructureSummary, nt as isParseError, o as computeAllSummaries, p as serializeReport, q as MarkformLlmError, rt as isPatchError, s as computeFormState, t as applyPatches, tt as isMarkformError, u as isFormComplete } from "./apply-CXsI5N9x.mjs";
4
- import { A as parseRawTable, C as parseScopeRef, D as parseForm, E as formToJsonSchema, O as parseCellValue, S as isQualifiedRef, T as fieldToJsonSchema, _ as coerceToFieldPatch, a as resolveHarnessConfig, b as isCellRef, f as MockAgent, g as coerceInputContext, h as createHarness, i as runResearch, k as parseMarkdownTable, m as FormHarness, n as isResearchForm, o as fillForm, p as createMockAgent, r as validateResearchForm, t as VERSION, v as findFieldById, w as serializeScopeRef, x as isFieldRef, y as getFieldId } from "./src-Dv3IZSQU.mjs";
5
- import { n as serializeSession, t as parseSession } from "./session-XDrocA3j.mjs";
2
+ import { $ as SetUrlListPatchSchema, A as MultiCheckboxStateSchema, At as WireToolResultSchema, B as ProgressSummarySchema, C as HarnessConfigSchema, Ct as ValidationIssueSchema, D as IssueReasonSchema, Dt as WireResponseFormatSchema, E as InspectResultSchema, Et as WireRequestFormatSchema, F as OptionIdSchema, G as SetCheckboxesPatchSchema, H as SessionFinalSchema, I as OptionSchema, J as SetNumberPatchSchema, K as SetDatePatchSchema, L as PatchSchema, M as MultiSelectValueSchema, Mt as YearValueSchema, N as NumberFieldSchema, O as IssueScopeSchema, Ot as WireResponseStepSchema, P as NumberValueSchema, Q as SetTablePatchSchema, R as ProgressCountsSchema, S as FormSchemaSchema, St as UrlValueSchema, T as InspectIssueSchema, Tt as WireFormatSchema, U as SessionTranscriptSchema, V as RunModeSchema, W as SessionTurnSchema, X as SetStringListPatchSchema, Y as SetSingleSelectPatchSchema, Z as SetStringPatchSchema, _ as FieldKindSchema, _t as TableRowResponseSchema, a as CheckboxProgressCountsSchema, at as SingleSelectValueSchema, b as FieldSchema, bt as UrlListFieldSchema, c as CheckboxesValueSchema, ct as StepResultSchema, d as DateFieldSchema, dt as StringListValueSchema, et as SetUrlPatchSchema, f as DateValueSchema, ft as StringValueSchema, g as FieldGroupSchema, gt as TableRowPatchSchema, h as ExplicitCheckboxValueSchema, ht as TableFieldSchema, i as CheckboxModeSchema, it as SingleSelectFieldSchema, j as MultiSelectFieldSchema, jt as YearFieldSchema, k as MarkformFrontmatterSchema, kt as WireToolCallSchema, l as ClearFieldPatchSchema, lt as StringFieldSchema, m as DocumentationTagSchema, mt as TableColumnSchema, n as ApplyResultSchema, nt as SeveritySchema, o as CheckboxValueSchema, ot as SourcePositionSchema, p as DocumentationBlockSchema, pt as StructureSummarySchema, q as SetMultiSelectPatchSchema, r as CellResponseSchema, rt as SimpleCheckboxStateSchema, s as CheckboxesFieldSchema, st as SourceRangeSchema, t as AnswerStateSchema, tt as SetYearPatchSchema, u as ColumnTypeNameSchema, ut as StringListFieldSchema, v as FieldProgressSchema, vt as TableValueSchema, w as IdSchema, wt as ValidatorRefSchema, x as FieldValueSchema, xt as UrlListValueSchema, y as FieldResponseSchema, yt as UrlFieldSchema, z as ProgressStateSchema } from "./coreTypes-SDB3KRRJ.mjs";
3
+ import { $ as isAbortError, G as MarkformAbortError, J as MarkformLlmError, K as MarkformConfigError, Q as ParseError, X as MarkformPatchError, Y as MarkformParseError, Z as MarkformValidationError, a as validate, at as isRetryableError, c as computeProgressSummary, d as serializeForm, et as isConfigError, i as inspect, it as isPatchError, l as computeStructureSummary, nt as isMarkformError, o as computeAllSummaries, ot as isValidationError, p as serializeReport, q as MarkformError, rt as isParseError, s as computeFormState, t as applyPatches, tt as isLlmError, u as isFormComplete } from "./apply-BYgtU64w.mjs";
4
+ import { A as formToJsonSchema, C as getFieldId, D as parseScopeRef, E as isQualifiedRef, F as findAllHeadings, I as findEnclosingHeadings, L as parseCellValue, M as findAllCheckboxes, N as injectCheckboxIds, O as serializeScopeRef, P as injectHeaderIds, R as parseMarkdownTable, S as findFieldById, T as isFieldRef, _ as createMockAgent, a as resolveHarnessConfig, b as coerceInputContext, c as createParallelHarness, g as MockAgent, i as runResearch, j as parseForm, k as fieldToJsonSchema, l as scopeIssuesForItem, n as isResearchForm, o as fillForm, r as validateResearchForm, s as ParallelHarness, t as VERSION, v as FormHarness, w as isCellRef, x as coerceToFieldPatch, y as createHarness, z as parseRawTable } from "./src-DDxi-2ne.mjs";
5
+ import { n as serializeSession, t as parseSession } from "./session-Ci4B0Pna.mjs";
6
6
 
7
- export { AnswerStateSchema, ApplyResultSchema, CellResponseSchema, CheckboxModeSchema, CheckboxProgressCountsSchema, CheckboxValueSchema, CheckboxesFieldSchema, CheckboxesValueSchema, ClearFieldPatchSchema, ColumnTypeNameSchema, DateFieldSchema, DateValueSchema, DocumentationBlockSchema, DocumentationTagSchema, ExplicitCheckboxValueSchema, FieldGroupSchema, FieldKindSchema, FieldProgressSchema, FieldResponseSchema, FieldSchema, FieldValueSchema, FormHarness, FormSchemaSchema, HarnessConfigSchema, IdSchema, InspectIssueSchema, InspectResultSchema, IssueReasonSchema, IssueScopeSchema, MarkformAbortError, MarkformConfigError, MarkformError, MarkformFrontmatterSchema, MarkformLlmError, MarkformParseError, MarkformPatchError, MarkformValidationError, MockAgent, MultiCheckboxStateSchema, MultiSelectFieldSchema, MultiSelectValueSchema, NumberFieldSchema, NumberValueSchema, OptionIdSchema, OptionSchema, ParseError, PatchSchema, ProgressCountsSchema, ProgressStateSchema, ProgressSummarySchema, RunModeSchema, SessionFinalSchema, SessionTranscriptSchema, SessionTurnSchema, SetCheckboxesPatchSchema, SetDatePatchSchema, SetMultiSelectPatchSchema, SetNumberPatchSchema, SetSingleSelectPatchSchema, SetStringListPatchSchema, SetStringPatchSchema, SetTablePatchSchema, SetUrlListPatchSchema, SetUrlPatchSchema, SetYearPatchSchema, SeveritySchema, SimpleCheckboxStateSchema, SingleSelectFieldSchema, SingleSelectValueSchema, SourcePositionSchema, SourceRangeSchema, StepResultSchema, StringFieldSchema, StringListFieldSchema, StringListValueSchema, StringValueSchema, StructureSummarySchema, TableColumnSchema, TableFieldSchema, TableRowPatchSchema, TableRowResponseSchema, TableValueSchema, UrlFieldSchema, UrlListFieldSchema, UrlListValueSchema, UrlValueSchema, VERSION, ValidationIssueSchema, ValidatorRefSchema, WireFormatSchema, WireRequestFormatSchema, WireResponseFormatSchema, WireResponseStepSchema, WireToolCallSchema, WireToolResultSchema, YearFieldSchema, YearValueSchema, applyPatches, coerceInputContext, coerceToFieldPatch, computeAllSummaries, computeFormState, computeProgressSummary, computeStructureSummary, createHarness, createMockAgent, fieldToJsonSchema, fillForm, findFieldById, formToJsonSchema, getFieldId, inspect, isAbortError, isCellRef, isConfigError, isFieldRef, isFormComplete, isLlmError, isMarkformError, isParseError, isPatchError, isQualifiedRef, isResearchForm, isRetryableError, isValidationError, parseCellValue, parseForm, parseMarkdownTable, parseRawTable, parseScopeRef, parseSession, resolveHarnessConfig, runResearch, serializeForm, serializeReport, serializeScopeRef, serializeSession, validate, validateResearchForm };
7
+ export { AnswerStateSchema, ApplyResultSchema, CellResponseSchema, CheckboxModeSchema, CheckboxProgressCountsSchema, CheckboxValueSchema, CheckboxesFieldSchema, CheckboxesValueSchema, ClearFieldPatchSchema, ColumnTypeNameSchema, DateFieldSchema, DateValueSchema, DocumentationBlockSchema, DocumentationTagSchema, ExplicitCheckboxValueSchema, FieldGroupSchema, FieldKindSchema, FieldProgressSchema, FieldResponseSchema, FieldSchema, FieldValueSchema, FormHarness, FormSchemaSchema, HarnessConfigSchema, IdSchema, InspectIssueSchema, InspectResultSchema, IssueReasonSchema, IssueScopeSchema, MarkformAbortError, MarkformConfigError, MarkformError, MarkformFrontmatterSchema, MarkformLlmError, MarkformParseError, MarkformPatchError, MarkformValidationError, MockAgent, MultiCheckboxStateSchema, MultiSelectFieldSchema, MultiSelectValueSchema, NumberFieldSchema, NumberValueSchema, OptionIdSchema, OptionSchema, ParallelHarness, ParseError, PatchSchema, ProgressCountsSchema, ProgressStateSchema, ProgressSummarySchema, RunModeSchema, SessionFinalSchema, SessionTranscriptSchema, SessionTurnSchema, SetCheckboxesPatchSchema, SetDatePatchSchema, SetMultiSelectPatchSchema, SetNumberPatchSchema, SetSingleSelectPatchSchema, SetStringListPatchSchema, SetStringPatchSchema, SetTablePatchSchema, SetUrlListPatchSchema, SetUrlPatchSchema, SetYearPatchSchema, SeveritySchema, SimpleCheckboxStateSchema, SingleSelectFieldSchema, SingleSelectValueSchema, SourcePositionSchema, SourceRangeSchema, StepResultSchema, StringFieldSchema, StringListFieldSchema, StringListValueSchema, StringValueSchema, StructureSummarySchema, TableColumnSchema, TableFieldSchema, TableRowPatchSchema, TableRowResponseSchema, TableValueSchema, UrlFieldSchema, UrlListFieldSchema, UrlListValueSchema, UrlValueSchema, VERSION, ValidationIssueSchema, ValidatorRefSchema, WireFormatSchema, WireRequestFormatSchema, WireResponseFormatSchema, WireResponseStepSchema, WireToolCallSchema, WireToolResultSchema, YearFieldSchema, YearValueSchema, applyPatches, coerceInputContext, coerceToFieldPatch, computeAllSummaries, computeFormState, computeProgressSummary, computeStructureSummary, createHarness, createMockAgent, createParallelHarness, fieldToJsonSchema, fillForm, findAllCheckboxes, findAllHeadings, findEnclosingHeadings, findFieldById, formToJsonSchema, getFieldId, injectCheckboxIds, injectHeaderIds, inspect, isAbortError, isCellRef, isConfigError, isFieldRef, isFormComplete, isLlmError, isMarkformError, isParseError, isPatchError, isQualifiedRef, isResearchForm, isRetryableError, isValidationError, parseCellValue, parseForm, parseMarkdownTable, parseRawTable, parseScopeRef, parseSession, resolveHarnessConfig, runResearch, scopeIssuesForItem, serializeForm, serializeReport, serializeScopeRef, serializeSession, validate, validateResearchForm };
@@ -1,4 +1,4 @@
1
1
 
2
- import { n as serializeSession, t as parseSession } from "./session-XDrocA3j.mjs";
2
+ import { n as serializeSession, t as parseSession } from "./session-Ci4B0Pna.mjs";
3
3
 
4
4
  export { serializeSession };
@@ -1,5 +1,5 @@
1
1
 
2
- import { U as SessionTranscriptSchema } from "./coreTypes-DiCddBKu.mjs";
2
+ import { U as SessionTranscriptSchema } from "./coreTypes-SDB3KRRJ.mjs";
3
3
  import YAML from "yaml";
4
4
 
5
5
  //#region src/engine/session.ts
@@ -113,4 +113,4 @@ function toSnakeCaseDeep(obj, preserveKeys = false) {
113
113
 
114
114
  //#endregion
115
115
  export { serializeSession as n, parseSession as t };
116
- //# sourceMappingURL=session-XDrocA3j.mjs.map
116
+ //# sourceMappingURL=session-Ci4B0Pna.mjs.map