@hawkeyexl/manni 4.1.0 → 4.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.ts CHANGED
@@ -1,7 +1,8 @@
1
1
  import { ProviderSelector, InferenceProvider, ConsensusResult, ExecFn, ProviderSpec, ProviderName as ProviderName$1, CompleteJSONRequest, CompleteJSONResponse, JudgeRun, JudgeVerdict, Match as Match$1, MockProvider, MockResponse, Zone, ZoneThresholds, computeConsensus, mockVerdict, zoneFor } from '@hawkeyexl/inference';
2
- import { Buffer } from 'node:buffer';
2
+ import { Buffer as Buffer$1 } from 'node:buffer';
3
3
  import { DatabaseSync } from 'node:sqlite';
4
4
  import pc from 'picocolors';
5
+ import { Store } from 'n3';
5
6
 
6
7
  /**
7
8
  * The error every tool under the umbrella throws for an operational failure.
@@ -403,6 +404,18 @@ interface ProviderFlags {
403
404
  /** Run inference on this machine, with llama-cpp, whatever a level asks for. */
404
405
  local?: boolean;
405
406
  }
407
+ /** A configured choice that `--local` set aside. */
408
+ interface ReplacedChoice {
409
+ provider: string;
410
+ source: string;
411
+ }
412
+ /** The effective choice, before it is checked or detected. */
413
+ interface ProviderSelection {
414
+ provider: string;
415
+ model: string | undefined;
416
+ /** Under `--local`, the configured provider that would otherwise have run. */
417
+ replaced?: ReplacedChoice;
418
+ }
406
419
 
407
420
  /** Vale's settings under `tools.vale`. */
408
421
  interface ValeToolConfig {
@@ -587,7 +600,7 @@ interface LoadSchemaOptions {
587
600
  /** A fetched schema, with the bytes it arrived as. */
588
601
  interface FetchedSchema {
589
602
  /** Exactly what the server sent, undecoded. */
590
- bytes: Buffer;
603
+ bytes: Buffer$1;
591
604
  /** The same payload, parsed and guarded. */
592
605
  schema: Record<string, unknown>;
593
606
  }
@@ -799,7 +812,7 @@ type DerivableField = string;
799
812
  declare function isBuiltinField(x: string): x is BuiltinDerivableField;
800
813
  /** Every source `derive.sources` may name; absent means all five. */
801
814
  declare const DERIVE_SOURCES: readonly ["git", "codeowners", "github", "gitlab", "command"];
802
- type DeriveSource = (typeof DERIVE_SOURCES)[number];
815
+ type DeriveSource$1 = (typeof DERIVE_SOURCES)[number];
803
816
  /**
804
817
  * One configured command, as `derive.commands` reads after parsing: the argv
805
818
  * to run, the program first, and how long to wait for it.
@@ -808,7 +821,7 @@ interface DeriveCommand {
808
821
  run: readonly string[];
809
822
  timeoutMs: number;
810
823
  }
811
- declare function isDeriveSource(x: string): x is DeriveSource;
824
+ declare function isDeriveSource(x: string): x is DeriveSource$1;
812
825
  /**
813
826
  * One fact a source produced, with where it came from. `evidence` is the
814
827
  * short human-readable trail a finding quotes — a commit, a CODEOWNERS line,
@@ -816,7 +829,7 @@ declare function isDeriveSource(x: string): x is DeriveSource;
816
829
  */
817
830
  interface DerivedValue {
818
831
  value: unknown;
819
- source: DeriveSource;
832
+ source: DeriveSource$1;
820
833
  evidence: string;
821
834
  }
822
835
  /**
@@ -914,7 +927,7 @@ interface DeriveContext {
914
927
  /** Directory the input labels are relative to, as `resolveRunConfig` settled it. */
915
928
  base: string;
916
929
  configDir?: string;
917
- sources: readonly DeriveSource[];
930
+ sources: readonly DeriveSource$1[];
918
931
  fields: readonly DerivableField[];
919
932
  /** CODEOWNERS path, when the config names one; resolved from `configDir`. */
920
933
  codeowners?: string;
@@ -947,7 +960,7 @@ interface DerivedField {
947
960
  * when `status` is `unknown`.
948
961
  */
949
962
  derived: unknown;
950
- source?: DeriveSource;
963
+ source?: DeriveSource$1;
951
964
  evidence?: string;
952
965
  status: DerivedStatus;
953
966
  /** Whether `derive` wrote the value into the document. */
@@ -1145,7 +1158,7 @@ interface DeriveConfig {
1145
1158
  */
1146
1159
  fields?: DerivableField[];
1147
1160
  /** Which sources to consult; absent means all of `DERIVE_SOURCES`. */
1148
- sources?: DeriveSource[];
1161
+ sources?: DeriveSource$1[];
1149
1162
  /**
1150
1163
  * CODEOWNERS path, relative to the config file's directory, when it is not
1151
1164
  * in one of the places the codeowners source looks by itself. Checked for
@@ -1275,7 +1288,7 @@ interface DocmetaConfig {
1275
1288
  * tool's config — a pre-family `docmeta.config.yaml`, or a section already
1276
1289
  * cut out of the family file.
1277
1290
  */
1278
- declare function parseConfig$2(text: string, source: string): DocmetaConfig;
1291
+ declare function parseConfig$3(text: string, source: string): DocmetaConfig;
1279
1292
  interface LoadedConfig {
1280
1293
  config: DocmetaConfig;
1281
1294
  /** Absolute path to the file the config was read from. */
@@ -1356,7 +1369,7 @@ interface SchemaTrustRoot {
1356
1369
  *
1357
1370
  * Returns null when no config is found via discovery.
1358
1371
  */
1359
- declare function loadConfig$2(explicitPath?: string, cwd?: string): Promise<LoadedConfig | null>;
1372
+ declare function loadConfig$3(explicitPath?: string, cwd?: string): Promise<LoadedConfig | null>;
1360
1373
  /** Told to a caller once, when a run turns out to be governed by a config. */
1361
1374
  interface ConfigNotice {
1362
1375
  /** Absolute path to the config file. */
@@ -1364,7 +1377,7 @@ interface ConfigNotice {
1364
1377
  /** Directory holding it. */
1365
1378
  dir: string;
1366
1379
  }
1367
- interface RunConfigOptions {
1380
+ interface RunConfigOptions$1 {
1368
1381
  /** Defaults to `process.cwd()`, matching `loadConfig`. */
1369
1382
  cwd?: string;
1370
1383
  /** `-c/--config`. */
@@ -1475,7 +1488,7 @@ interface RunConfig {
1475
1488
  * touch the filesystem: which config governs the run, what to resolve, and
1476
1489
  * what those relative paths are relative to.
1477
1490
  */
1478
- declare function resolveRunConfig(opts: RunConfigOptions): Promise<RunConfig>;
1491
+ declare function resolveRunConfig(opts: RunConfigOptions$1): Promise<RunConfig>;
1479
1492
 
1480
1493
  interface ValidateOptions$1 {
1481
1494
  inputs: string[];
@@ -2024,6 +2037,25 @@ declare class Validator {
2024
2037
  * compile throws, as it would for `validate`.
2025
2038
  */
2026
2039
  claimedProperties(refs: readonly string[]): Promise<Set<string>>;
2040
+ /**
2041
+ * Whether each top-level key of `data` belongs in a published graph under
2042
+ * `refs`, as its `x-manni-graph-output` mark says. A key no schema marks has no
2043
+ * entry, which the caller reads as `true`: absent means harvested.
2044
+ *
2045
+ * A first pass with the recording keyword, as `locationPreferences` runs, so
2046
+ * a mark counts exactly where validation would evaluate it, and a mark nested
2047
+ * inside `graph` is ignored. Only present values are marked: Ajv applies a
2048
+ * property's subschema to a property that exists. `$schema` is stripped
2049
+ * first, as validation does.
2050
+ *
2051
+ * Refs are evaluated in order and a later ref's mark wins, so a house schema
2052
+ * listed after a vocabulary refines it. A schema that says both on paths
2053
+ * every document takes is refused when it compiles. A ref whose conditional
2054
+ * branches say both `true` and `false` gives that key no preference: with
2055
+ * `allErrors`, Ajv evaluates failing branches too, so neither value is that
2056
+ * ref's answer and an earlier ref's stands.
2057
+ */
2058
+ graphOutputPreferences(data: Record<string, unknown>, refs: string[]): Promise<Map<string, boolean>>;
2027
2059
  /**
2028
2060
  * Validate `data` against every schema in `refs`. Returns all violations,
2029
2061
  * each tagged with the schema that produced it and a source line via
@@ -2121,7 +2153,7 @@ interface RelocateResult {
2121
2153
  summary: RelocateSummary;
2122
2154
  }
2123
2155
 
2124
- interface QueryOptions {
2156
+ interface QueryOptions$1 {
2125
2157
  /**
2126
2158
  * One SQL statement. The table is `docs`; see the system columns below.
2127
2159
  * May be empty when `db` is set — export without querying.
@@ -2308,7 +2340,7 @@ interface QueryRun {
2308
2340
  */
2309
2341
  frame?: FingerprintContext;
2310
2342
  }
2311
- declare function runQuery(opts: QueryOptions): Promise<QueryRun>;
2343
+ declare function runQuery$1(opts: QueryOptions$1): Promise<QueryRun>;
2312
2344
 
2313
2345
  /** One schema `meta.register` loaded: its `$id` and its file. */
2314
2346
  interface RegisteredInfo {
@@ -2511,7 +2543,7 @@ interface FillRun {
2511
2543
  /** True when the call cap stopped the run before every file was seen. */
2512
2544
  turnsSpent: boolean;
2513
2545
  }
2514
- interface FillOptions$1 {
2546
+ interface FillOptions$2 {
2515
2547
  inputs: string[];
2516
2548
  cliSchemas?: string[];
2517
2549
  exts?: string[];
@@ -2606,9 +2638,9 @@ interface FillOptions$1 {
2606
2638
  onRelocated?: (result: RelocateResult) => void;
2607
2639
  }
2608
2640
 
2609
- declare function runFill$1(opts: FillOptions$1): Promise<FillRun>;
2641
+ declare function runFill$2(opts: FillOptions$2): Promise<FillRun>;
2610
2642
 
2611
- interface DeriveOptions {
2643
+ interface DeriveOptions$1 {
2612
2644
  inputs: string[];
2613
2645
  /**
2614
2646
  * `--collection <name>`, repeatable: stamp only the named configured
@@ -2717,11 +2749,11 @@ interface DeriveRun {
2717
2749
  dryRun: boolean;
2718
2750
  check: boolean;
2719
2751
  /** One status per source the run consulted; a source nobody asked for is absent. */
2720
- sources: Partial<Record<DeriveSource, SourceStatus$1>>;
2752
+ sources: Partial<Record<DeriveSource$1, SourceStatus$1>>;
2721
2753
  /** Where the run stood, for the SARIF reporter under `check`. See `ValidateRun.frame`. */
2722
2754
  frame: FingerprintContext;
2723
2755
  }
2724
- declare function runDerive(opts: DeriveOptions): Promise<DeriveRun>;
2756
+ declare function runDerive(opts: DeriveOptions$1): Promise<DeriveRun>;
2725
2757
 
2726
2758
  /**
2727
2759
  * `relocate` (proposal 0047): move every value to where its schema's
@@ -2769,6 +2801,33 @@ interface RelocateOptions {
2769
2801
  }
2770
2802
  declare function runRelocate(opts: RelocateOptions): Promise<RelocateResult>;
2771
2803
 
2804
+ /**
2805
+ * `x-manni-graph-output` (proposal 0051 §5): whether a top-level key belongs in a
2806
+ * published knowledge graph. graph harvests frontmatter into Turtle, JSON-LD,
2807
+ * iiRDS and a search index, all of which get published, and which fields belong
2808
+ * in that output is a property of the field rather than of the tool — so it is
2809
+ * recorded where the field is defined.
2810
+ *
2811
+ * The keyword is registered on every Ajv meta builds (validator.ts), next to
2812
+ * `x-manni-location`, and like it records where it was evaluated. Ajv's own
2813
+ * resolution is the walker, so a mark counts through `$ref`, `allOf` and a
2814
+ * referenced built-in, and inside the `anyOf`, `oneOf` and `if`/`then` branches
2815
+ * Ajv takes. Absent means `true`: every field is harvested unless a schema says
2816
+ * otherwise. Only a top-level property's mark counts; a mark nested inside `graph`
2817
+ * is accepted and ignored, as 0047 rule 2 ignores a nested `x-manni-location`.
2818
+ * `Validator.graphOutputPreferences` is the one question a tool asks of it.
2819
+ *
2820
+ * Why this is not `x-manni-location` (0051 stress test 3): the two answer
2821
+ * different questions. `x-manni-location` says where a field is *written* — in
2822
+ * the page or in a manifest — and says nothing about whether a delivered
2823
+ * artifact should carry it. A field can be `external` and still belong in the
2824
+ * graph (`authors` on a published page), or be page-local and not belong in it
2825
+ * at all. Overloading one mark would make `manni meta relocate` a publishing
2826
+ * decision.
2827
+ */
2828
+ /** The schema keyword. */
2829
+ declare const GRAPH_OUTPUT_KEYWORD = "x-manni-graph-output";
2830
+
2772
2831
  /** One value re-encrypted: where, and the ciphertext before and after. */
2773
2832
  interface ReencryptedValue {
2774
2833
  pointer: string;
@@ -2984,7 +3043,7 @@ interface ExternalMetadataFetchOptions {
2984
3043
  declare function fetchExternalMetadata(url: string, opts?: ExternalMetadataFetchOptions): Promise<string>;
2985
3044
 
2986
3045
  /** Which sources can state each built-in field, in precedence order. */
2987
- declare const FIELD_SOURCES: Readonly<Record<BuiltinDerivableField, readonly DeriveSource[]>>;
3046
+ declare const FIELD_SOURCES: Readonly<Record<BuiltinDerivableField, readonly DeriveSource$1[]>>;
2988
3047
  interface DeriveResult {
2989
3048
  /** Keyed by `DeriveInput.label`; every input has a record. */
2990
3049
  records: Map<string, DerivedRecord>;
@@ -2993,7 +3052,7 @@ interface DeriveResult {
2993
3052
  * absent, and so is whichever of `github` and `gitlab` the origin remote does
2994
3053
  * not point at. Absent means not applicable here, never unavailable.
2995
3054
  */
2996
- sources: Partial<Record<DeriveSource, SourceStatus$1>>;
3055
+ sources: Partial<Record<DeriveSource$1, SourceStatus$1>>;
2997
3056
  /**
2998
3057
  * The provenance derivation per input label (proposal 0046), for the
2999
3058
  * comparison with a page's stamp: present only when `provenance` was
@@ -3006,14 +3065,14 @@ interface DeriveResult {
3006
3065
  * for one of the six, `command` for a key of `commands`, nothing otherwise.
3007
3066
  * A built-in never reaches the command arm, whatever the table says.
3008
3067
  */
3009
- declare function sourcesFor(field: DerivableField, commands?: Readonly<Record<string, DeriveCommand>>): readonly DeriveSource[];
3068
+ declare function sourcesFor(field: DerivableField, commands?: Readonly<Record<string, DeriveCommand>>): readonly DeriveSource$1[];
3010
3069
  /** The sources a run consults: requested, and able to state a requested field. */
3011
- declare function consultedSources(fields: readonly DerivableField[], sources: readonly DeriveSource[], commands?: Readonly<Record<string, DeriveCommand>>): DeriveSource[];
3070
+ declare function consultedSources(fields: readonly DerivableField[], sources: readonly DeriveSource$1[], commands?: Readonly<Record<string, DeriveCommand>>): DeriveSource$1[];
3012
3071
  /**
3013
3072
  * Throw the exit-2 error for the first consulted source that could not
3014
3073
  * answer. `hint` is the command's own way out, appended after a semicolon.
3015
3074
  */
3016
- declare function assertSourcesAvailable(sources: Partial<Record<DeriveSource, SourceStatus$1>>, hint?: string): void;
3075
+ declare function assertSourcesAvailable(sources: Partial<Record<DeriveSource$1, SourceStatus$1>>, hint?: string): void;
3017
3076
  declare function deriveMetadata(inputs: readonly DeriveInput[], ctx: DeriveContext): Promise<DeriveResult>;
3018
3077
 
3019
3078
  /** How a client reaches the binary; tests point `bin` at node and a fake script. */
@@ -3750,7 +3809,7 @@ interface CitationSource {
3750
3809
  "commit-sha"?: string;
3751
3810
  }
3752
3811
  /** One entry of `citations`, as the schema (`manni:citations:1.0.0`) spells it. */
3753
- interface Citation {
3812
+ interface Citation$1 {
3754
3813
  id?: string;
3755
3814
  claim?: CitationClaim;
3756
3815
  source: CitationSource;
@@ -3900,7 +3959,7 @@ interface SourceEnd {
3900
3959
  }
3901
3960
  /** One classified citation: both ends, and how it is anchored. */
3902
3961
  interface CitationResult {
3903
- citation: Citation;
3962
+ citation: Citation$1;
3904
3963
  origin: CitationOrigin;
3905
3964
  anchor: CitationAnchor;
3906
3965
  /** File line of the marker that names the entry, when one does. */
@@ -4114,7 +4173,7 @@ interface InlineStatement {
4114
4173
  }
4115
4174
  /** A validated citation with where it sits and the marker that names it, before classification. */
4116
4175
  interface PageCitation {
4117
- citation: Citation;
4176
+ citation: Citation$1;
4118
4177
  origin: CitationOrigin;
4119
4178
  /** The first marker naming the entry's id. */
4120
4179
  marker?: InlineStatement;
@@ -4245,7 +4304,7 @@ interface ManifestWrite {
4245
4304
  }
4246
4305
  interface AddResult {
4247
4306
  file: string;
4248
- citation: Citation;
4307
+ citation: Citation$1;
4249
4308
  /**
4250
4309
  * Where the entry was written: the page's frontmatter, or the manifest the
4251
4310
  * page's collection declares. The config decides, not a flag.
@@ -5549,7 +5608,7 @@ declare function errorSite(finding: CitationFinding): Pick<CitationFinding, "lin
5549
5608
  declare function toValidationResult(report: PageCitationReport): ValidationResult;
5550
5609
 
5551
5610
  /** Append one entry to `citations` (creating the key), via the format's extractor. */
5552
- declare function appendFrontmatterCitation(content: string, format: string, citation: Citation, filePath?: string): string;
5611
+ declare function appendFrontmatterCitation(content: string, format: string, citation: Citation$1, filePath?: string): string;
5553
5612
  /**
5554
5613
  * Take entries out of a page's `citations`, by their index in the list, and
5555
5614
  * write what is left back through the format's extractor. An empty list
@@ -5567,7 +5626,7 @@ declare function removeLine(content: string, line: number): string;
5567
5626
  * The entry as a plain object, in the order a reader scans it, with every
5568
5627
  * absent optional left out rather than written as `null`.
5569
5628
  */
5570
- declare function entryObject(citation: Citation): Record<string, unknown>;
5629
+ declare function entryObject(citation: Citation$1): Record<string, unknown>;
5571
5630
  /** One scalar of an entry a repair may rewrite: a file, an end's lines, its pin, or the commit. */
5572
5631
  type EntryPath = readonly [
5573
5632
  end: "claim" | "source",
@@ -5584,7 +5643,7 @@ declare function insertStatementBefore(content: string, offset: number, statemen
5584
5643
  */
5585
5644
  declare function unifiedDiff(label: string, before: string, after: string): string;
5586
5645
 
5587
- declare function mintCitation(opts: MintOptions): Promise<Citation>;
5646
+ declare function mintCitation(opts: MintOptions): Promise<Citation$1>;
5588
5647
 
5589
5648
  declare const CITE_SECTION = "cite";
5590
5649
  declare const DEFAULT_CITE_BASELINE_PATH = ".manni-cite-baseline.json";
@@ -5806,226 +5865,225 @@ declare function renderCheckGithub(run: CheckRun): string;
5806
5865
  * `cite` namespace: `import { cite } from "@hawkeyexl/manni"`.
5807
5866
  */
5808
5867
 
5809
- type index$3_AddOptions = AddOptions;
5810
- type index$3_AddResult = AddResult;
5811
- type index$3_BuildIndexOptions = BuildIndexOptions;
5812
- declare const index$3_CITATIONS_KEY: typeof CITATIONS_KEY;
5813
- declare const index$3_CITE_RULES: typeof CITE_RULES;
5814
- declare const index$3_CITE_SECTION: typeof CITE_SECTION;
5815
- type index$3_CheckOptions = CheckOptions;
5816
- type index$3_CheckPageOptions = CheckPageOptions;
5817
- type index$3_CheckRun = CheckRun;
5818
- type index$3_Citation = Citation;
5819
- type index$3_CitationAnchor = CitationAnchor;
5820
- type index$3_CitationClaim = CitationClaim;
5821
- type index$3_CitationFinding = CitationFinding;
5822
- type index$3_CitationInput = CitationInput;
5823
- type index$3_CitationManifest = CitationManifest;
5824
- type index$3_CitationOrigin = CitationOrigin;
5825
- type index$3_CitationResult = CitationResult;
5826
- type index$3_CitationSidecars = CitationSidecars;
5827
- type index$3_CitationSource = CitationSource;
5828
- type index$3_CiteConfig = CiteConfig;
5829
- type index$3_CiteError = CiteError;
5830
- declare const index$3_CiteError: typeof CiteError;
5831
- type index$3_CiteRule = CiteRule;
5832
- type index$3_CiteRun = CiteRun;
5833
- type index$3_CiteRunOptions = CiteRunOptions;
5834
- type index$3_CiteSeverity = CiteSeverity;
5835
- type index$3_ClaimEnd = ClaimEnd;
5836
- type index$3_ClaimHistory = ClaimHistory;
5837
- type index$3_ClaimHistoryInput = ClaimHistoryInput;
5838
- type index$3_ClaimStatus = ClaimStatus;
5839
- type index$3_ClaimUnit = ClaimUnit;
5840
- type index$3_ClassifyOptions = ClassifyOptions;
5841
- declare const index$3_DEFAULT_CITE_BASELINE_PATH: typeof DEFAULT_CITE_BASELINE_PATH;
5842
- declare const index$3_DEFAULT_SEVERITY: typeof DEFAULT_SEVERITY;
5843
- type index$3_EntryPath = EntryPath;
5844
- declare const index$3_FILE_PATTERN: typeof FILE_PATTERN;
5845
- type index$3_FindWindowsOptions = FindWindowsOptions;
5846
- declare const index$3_GIT_UNAVAILABLE_COMMIT: typeof GIT_UNAVAILABLE_COMMIT;
5847
- declare const index$3_GIT_UNAVAILABLE_HISTORY: typeof GIT_UNAVAILABLE_HISTORY;
5848
- type index$3_GitClient = GitClient;
5849
- type index$3_HeldManifest = HeldManifest;
5850
- type index$3_History = History;
5851
- type index$3_InlineStatement = InlineStatement;
5852
- type index$3_LineSpec = LineSpec;
5853
- type index$3_LoadSidecarOptions = LoadSidecarOptions;
5854
- type index$3_LoadedCiteConfig = LoadedCiteConfig;
5855
- declare const index$3_MARKER_JSON: typeof MARKER_JSON;
5856
- declare const index$3_MAX_MARKERS_PER_PAGE: typeof MAX_MARKERS_PER_PAGE;
5857
- declare const index$3_MAX_PAGE_COMMITS: typeof MAX_PAGE_COMMITS;
5858
- declare const index$3_MAX_RANGE_LINES: typeof MAX_RANGE_LINES;
5859
- declare const index$3_MOVE_BUDGET_BYTES: typeof MOVE_BUDGET_BYTES;
5860
- declare const index$3_MOVE_WINDOW_LINES: typeof MOVE_WINDOW_LINES;
5861
- type index$3_ManifestSet = ManifestSet;
5862
- declare const index$3_ManifestSet: typeof ManifestSet;
5863
- type index$3_ManifestWrite = ManifestWrite;
5864
- type index$3_MarkerEnd = MarkerEnd;
5865
- type index$3_MintOptions = MintOptions;
5866
- type index$3_MisplacedMarker = MisplacedMarker;
5867
- type index$3_MisplacedMarkerReport = MisplacedMarkerReport;
5868
- type index$3_MissingReason = MissingReason;
5869
- type index$3_NoUnit = NoUnit;
5870
- type index$3_OriginKind = OriginKind;
5871
- declare const index$3_PAGE_HISTORY_UNAVAILABLE: typeof PAGE_HISTORY_UNAVAILABLE;
5872
- type index$3_PageCitation = PageCitation;
5873
- type index$3_PageCitationReport = PageCitationReport;
5874
- type index$3_PageCitations = PageCitations;
5875
- type index$3_PageCommit = PageCommit;
5876
- type index$3_PageHistory = PageHistory;
5877
- type index$3_PageLines = PageLines;
5878
- type index$3_PageSidecar = PageSidecar;
5879
- type index$3_PrettyOptions = PrettyOptions;
5880
- type index$3_ReadPageOptions = ReadPageOptions;
5881
- type index$3_ReadSourceResult = ReadSourceResult;
5882
- type index$3_RecommitReason = RecommitReason;
5883
- type index$3_ReencryptCitationsResult = ReencryptCitationsResult;
5884
- type index$3_ReencryptEntriesResult = ReencryptEntriesResult;
5885
- type index$3_ReencryptOptions = ReencryptOptions;
5886
- type index$3_ReencryptedCitation = ReencryptedCitation;
5887
- type index$3_RefineClaimInput = RefineClaimInput;
5888
- type index$3_Removal = Removal;
5889
- type index$3_RemoveOptions = RemoveOptions;
5890
- type index$3_RemovePage = RemovePage;
5891
- type index$3_RemoveRun = RemoveRun;
5892
- declare const index$3_SRC_PATTERN: typeof SRC_PATTERN;
5893
- type index$3_ShiftOptions = ShiftOptions;
5894
- type index$3_Shifted = Shifted;
5895
- type index$3_ShownFile = ShownFile;
5896
- type index$3_SourceEnd = SourceEnd;
5897
- type index$3_SourceIndex = SourceIndex;
5898
- type index$3_SourceRange = SourceRange;
5899
- type index$3_SourceStatus = SourceStatus;
5900
- type index$3_StatementForm = StatementForm;
5901
- type index$3_TextEdit = TextEdit;
5902
- type index$3_UpdateOptions = UpdateOptions;
5903
- type index$3_UpdatePage = UpdatePage;
5904
- type index$3_UpdateRewrite = UpdateRewrite;
5905
- type index$3_UpdateRun = UpdateRun;
5906
- declare const index$3_anchoredLines: typeof anchoredLines;
5907
- declare const index$3_appendFrontmatterCitation: typeof appendFrontmatterCitation;
5908
- declare const index$3_blockMatches: typeof blockMatches;
5909
- declare const index$3_bodyLineOf: typeof bodyLineOf;
5910
- declare const index$3_buildSourceIndex: typeof buildSourceIndex;
5911
- declare const index$3_checkCitations: typeof checkCitations;
5912
- declare const index$3_citationInputs: typeof citationInputs;
5913
- declare const index$3_claimDiff: typeof claimDiff;
5914
- declare const index$3_claimEnd: typeof claimEnd;
5915
- declare const index$3_claimHistory: typeof claimHistory;
5916
- declare const index$3_claimLine: typeof claimLine;
5917
- declare const index$3_claimMessageFor: typeof claimMessageFor;
5918
- declare const index$3_claimWords: typeof claimWords;
5919
- declare const index$3_classifyCitation: typeof classifyCitation;
5920
- declare const index$3_detectEol: typeof detectEol;
5921
- declare const index$3_duplicateJoinRefusal: typeof duplicateJoinRefusal;
5922
- declare const index$3_entryObject: typeof entryObject;
5923
- declare const index$3_errorSite: typeof errorSite;
5924
- declare const index$3_fenceSpanAt: typeof fenceSpanAt;
5925
- declare const index$3_fencedBlockAfter: typeof fencedBlockAfter;
5926
- declare const index$3_fencedBlockAt: typeof fencedBlockAt;
5927
- declare const index$3_fencedBlocks: typeof fencedBlocks;
5928
- declare const index$3_findWindows: typeof findWindows;
5929
- declare const index$3_findingsFor: typeof findingsFor;
5930
- declare const index$3_formatSrc: typeof formatSrc;
5931
- declare const index$3_formatStatement: typeof formatStatement;
5932
- declare const index$3_gitClient: typeof gitClient;
5933
- declare const index$3_hashLines: typeof hashLines;
5934
- declare const index$3_hashRange: typeof hashRange;
5935
- declare const index$3_historyOf: typeof historyOf;
5936
- declare const index$3_holdsWords: typeof holdsWords;
5937
- declare const index$3_insertStatementBefore: typeof insertStatementBefore;
5938
- declare const index$3_insideFence: typeof insideFence;
5939
- declare const index$3_isBoundLine: typeof isBoundLine;
5940
- declare const index$3_isCiteRule: typeof isCiteRule;
5941
- declare const index$3_isKeyedPin: typeof isKeyedPin;
5942
- declare const index$3_isTableRow: typeof isTableRow;
5943
- declare const index$3_isUnitText: typeof isUnitText;
5944
- declare const index$3_itemLine: typeof itemLine;
5945
- declare const index$3_lineAt: typeof lineAt;
5946
- declare const index$3_lineSpec: typeof lineSpec;
5947
- declare const index$3_loadCitationSidecars: typeof loadCitationSidecars;
5948
- declare const index$3_loadCiteConfig: typeof loadCiteConfig;
5949
- declare const index$3_markerClaimEnd: typeof markerClaimEnd;
5950
- declare const index$3_markerRunAt: typeof markerRunAt;
5951
- declare const index$3_markerUnit: typeof markerUnit;
5952
- declare const index$3_messageFor: typeof messageFor;
5953
- declare const index$3_mintCitation: typeof mintCitation;
5954
- declare const index$3_misplacedMarkerAt: typeof misplacedMarkerAt;
5955
- declare const index$3_misplacedMarkers: typeof misplacedMarkers;
5956
- declare const index$3_misplacedMessageFor: typeof misplacedMessageFor;
5957
- declare const index$3_movedUnit: typeof movedUnit;
5958
- declare const index$3_noGit: typeof noGit;
5959
- declare const index$3_noUnitAt: typeof noUnitAt;
5960
- declare const index$3_normalizeText: typeof normalizeText;
5961
- declare const index$3_normalizeWhitespace: typeof normalizeWhitespace;
5962
- declare const index$3_offsetOfLine: typeof offsetOfLine;
5963
- declare const index$3_orphanRefusal: typeof orphanRefusal;
5964
- declare const index$3_ownedMessage: typeof ownedMessage;
5965
- declare const index$3_paragraphAfter: typeof paragraphAfter;
5966
- declare const index$3_parseCiteConfig: typeof parseCiteConfig;
5967
- declare const index$3_parseLines: typeof parseLines;
5968
- declare const index$3_parseSrc: typeof parseSrc;
5969
- declare const index$3_parseStatements: typeof parseStatements;
5970
- declare const index$3_pickExtractor: typeof pickExtractor;
5971
- declare const index$3_pinOfLines: typeof pinOfLines;
5972
- declare const index$3_pre43Span: typeof pre43Span;
5973
- declare const index$3_rangeLines: typeof rangeLines;
5974
- declare const index$3_readCiteConfigFile: typeof readCiteConfigFile;
5975
- declare const index$3_readSource: typeof readSource;
5976
- declare const index$3_reencryptCitationEntries: typeof reencryptCitationEntries;
5977
- declare const index$3_reencryptCitations: typeof reencryptCitations;
5978
- declare const index$3_refineClaim: typeof refineClaim;
5979
- declare const index$3_refusalLine: typeof refusalLine;
5980
- declare const index$3_removalLine: typeof removalLine;
5981
- declare const index$3_removeFrontmatterCitations: typeof removeFrontmatterCitations;
5982
- declare const index$3_removeLine: typeof removeLine;
5983
- declare const index$3_renderCheckGithub: typeof renderCheckGithub;
5984
- declare const index$3_renderCheckJson: typeof renderCheckJson;
5985
- declare const index$3_renderCheckPretty: typeof renderCheckPretty;
5986
- declare const index$3_renderRemoveJson: typeof renderRemoveJson;
5987
- declare const index$3_renderRemovePretty: typeof renderRemovePretty;
5988
- declare const index$3_renderUpdateJson: typeof renderUpdateJson;
5989
- declare const index$3_renderUpdatePretty: typeof renderUpdatePretty;
5990
- declare const index$3_resolveCiteRun: typeof resolveCiteRun;
5991
- declare const index$3_resolveSeverity: typeof resolveSeverity;
5992
- declare const index$3_rewriteLine: typeof rewriteLine;
5993
- declare const index$3_runAdd: typeof runAdd;
5994
- declare const index$3_runCheck: typeof runCheck;
5995
- declare const index$3_runRemove: typeof runRemove;
5996
- declare const index$3_runUpdate: typeof runUpdate;
5997
- declare const index$3_runsHolding: typeof runsHolding;
5998
- declare const index$3_sentencesOf: typeof sentencesOf;
5999
- declare const index$3_sharesSentence: typeof sharesSentence;
6000
- declare const index$3_shiftedEntries: typeof shiftedEntries;
6001
- declare const index$3_shortCommit: typeof shortCommit;
6002
- declare const index$3_shortLine: typeof shortLine;
6003
- declare const index$3_shortPin: typeof shortPin;
6004
- declare const index$3_shortSrc: typeof shortSrc;
6005
- declare const index$3_sidecarsFor: typeof sidecarsFor;
6006
- declare const index$3_sliceLines: typeof sliceLines;
6007
- declare const index$3_sourceRange: typeof sourceRange;
6008
- declare const index$3_spellAt: typeof spellAt;
6009
- declare const index$3_spellLines: typeof spellLines;
6010
- declare const index$3_spellSource: typeof spellSource;
6011
- declare const index$3_splice: typeof splice;
6012
- declare const index$3_spliceEntryField: typeof spliceEntryField;
6013
- declare const index$3_splitLines: typeof splitLines;
6014
- declare const index$3_splitUnit: typeof splitUnit;
6015
- declare const index$3_statementForms: typeof statementForms;
6016
- declare const index$3_stripMarkers: typeof stripMarkers;
6017
- declare const index$3_toBodyLines: typeof toBodyLines;
6018
- declare const index$3_toFileLines: typeof toFileLines;
6019
- declare const index$3_toValidationResult: typeof toValidationResult;
6020
- declare const index$3_twoManifestsRefusal: typeof twoManifestsRefusal;
6021
- declare const index$3_unifiedDiff: typeof unifiedDiff;
6022
- declare const index$3_unitAt: typeof unitAt;
6023
- declare const index$3_unitText: typeof unitText;
6024
- declare const index$3_urlManifestRefusal: typeof urlManifestRefusal;
6025
- declare const index$3_validateEntry: typeof validateEntry;
6026
- declare const index$3_withClaimLines: typeof withClaimLines;
6027
- declare namespace index$3 {
6028
- export { type index$3_AddOptions as AddOptions, type index$3_AddResult as AddResult, type index$3_BuildIndexOptions as BuildIndexOptions, index$3_CITATIONS_KEY as CITATIONS_KEY, index$3_CITE_RULES as CITE_RULES, index$3_CITE_SECTION as CITE_SECTION, type index$3_CheckOptions as CheckOptions, type index$3_CheckPageOptions as CheckPageOptions, type index$3_CheckRun as CheckRun, type index$3_Citation as Citation, type index$3_CitationAnchor as CitationAnchor, type index$3_CitationClaim as CitationClaim, type index$3_CitationFinding as CitationFinding, type index$3_CitationInput as CitationInput, type index$3_CitationManifest as CitationManifest, type index$3_CitationOrigin as CitationOrigin, type index$3_CitationResult as CitationResult, type index$3_CitationSidecars as CitationSidecars, type index$3_CitationSource as CitationSource, type index$3_CiteConfig as CiteConfig, index$3_CiteError as CiteError, type index$3_CiteRule as CiteRule, type index$3_CiteRun as CiteRun, type index$3_CiteRunOptions as CiteRunOptions, type index$3_CiteSeverity as CiteSeverity, type index$3_ClaimEnd as ClaimEnd, type index$3_ClaimHistory as ClaimHistory, type index$3_ClaimHistoryInput as ClaimHistoryInput, type index$3_ClaimStatus as ClaimStatus, type index$3_ClaimUnit as ClaimUnit, type index$3_ClassifyOptions as ClassifyOptions, index$3_DEFAULT_CITE_BASELINE_PATH as DEFAULT_CITE_BASELINE_PATH, index$3_DEFAULT_SEVERITY as DEFAULT_SEVERITY, type index$3_EntryPath as EntryPath, index$3_FILE_PATTERN as FILE_PATTERN, type index$3_FindWindowsOptions as FindWindowsOptions, index$3_GIT_UNAVAILABLE_COMMIT as GIT_UNAVAILABLE_COMMIT, index$3_GIT_UNAVAILABLE_HISTORY as GIT_UNAVAILABLE_HISTORY, type index$3_GitClient as GitClient, type index$3_HeldManifest as HeldManifest, type index$3_History as History, type index$3_InlineStatement as InlineStatement, type index$3_LineSpec as LineSpec, type index$3_LoadSidecarOptions as LoadSidecarOptions, type index$3_LoadedCiteConfig as LoadedCiteConfig, index$3_MARKER_JSON as MARKER_JSON, index$3_MAX_MARKERS_PER_PAGE as MAX_MARKERS_PER_PAGE, index$3_MAX_PAGE_COMMITS as MAX_PAGE_COMMITS, index$3_MAX_RANGE_LINES as MAX_RANGE_LINES, index$3_MOVE_BUDGET_BYTES as MOVE_BUDGET_BYTES, index$3_MOVE_WINDOW_LINES as MOVE_WINDOW_LINES, type ManifestChange$1 as ManifestChange, index$3_ManifestSet as ManifestSet, type index$3_ManifestWrite as ManifestWrite, type index$3_MarkerEnd as MarkerEnd, type index$3_MintOptions as MintOptions, type index$3_MisplacedMarker as MisplacedMarker, type index$3_MisplacedMarkerReport as MisplacedMarkerReport, type index$3_MissingReason as MissingReason, type index$3_NoUnit as NoUnit, type index$3_OriginKind as OriginKind, index$3_PAGE_HISTORY_UNAVAILABLE as PAGE_HISTORY_UNAVAILABLE, type index$3_PageCitation as PageCitation, type index$3_PageCitationReport as PageCitationReport, type index$3_PageCitations as PageCitations, type index$3_PageCommit as PageCommit, type index$3_PageHistory as PageHistory, type index$3_PageLines as PageLines, type index$3_PageSidecar as PageSidecar, type index$3_PrettyOptions as PrettyOptions, RULE_ID_PREFIX$1 as RULE_ID_PREFIX, type index$3_ReadPageOptions as ReadPageOptions, type index$3_ReadSourceResult as ReadSourceResult, type index$3_RecommitReason as RecommitReason, type index$3_ReencryptCitationsResult as ReencryptCitationsResult, type index$3_ReencryptEntriesResult as ReencryptEntriesResult, type index$3_ReencryptOptions as ReencryptOptions, type index$3_ReencryptedCitation as ReencryptedCitation, type index$3_RefineClaimInput as RefineClaimInput, type index$3_Removal as Removal, type index$3_RemoveOptions as RemoveOptions, type index$3_RemovePage as RemovePage, type index$3_RemoveRun as RemoveRun, index$3_SRC_PATTERN as SRC_PATTERN, type index$3_ShiftOptions as ShiftOptions, type index$3_Shifted as Shifted, type index$3_ShownFile as ShownFile, type index$3_SourceEnd as SourceEnd, type index$3_SourceIndex as SourceIndex, type index$3_SourceRange as SourceRange, type index$3_SourceStatus as SourceStatus, type index$3_StatementForm as StatementForm, type index$3_TextEdit as TextEdit, type index$3_UpdateOptions as UpdateOptions, type index$3_UpdatePage as UpdatePage, type index$3_UpdateRewrite as UpdateRewrite, type index$3_UpdateRun as UpdateRun, index$3_anchoredLines as anchoredLines, index$3_appendFrontmatterCitation as appendFrontmatterCitation, index$3_blockMatches as blockMatches, index$3_bodyLineOf as bodyLineOf, index$3_buildSourceIndex as buildSourceIndex, index$3_checkCitations as checkCitations, index$3_citationInputs as citationInputs, index$3_claimDiff as claimDiff, index$3_claimEnd as claimEnd, index$3_claimHistory as claimHistory, index$3_claimLine as claimLine, index$3_claimMessageFor as claimMessageFor, index$3_claimWords as claimWords, index$3_classifyCitation as classifyCitation, index$3_detectEol as detectEol, index$3_duplicateJoinRefusal as duplicateJoinRefusal, index$3_entryObject as entryObject, index$3_errorSite as errorSite, index$3_fenceSpanAt as fenceSpanAt, index$3_fencedBlockAfter as fencedBlockAfter, index$3_fencedBlockAt as fencedBlockAt, index$3_fencedBlocks as fencedBlocks, index$3_findWindows as findWindows, index$3_findingsFor as findingsFor, index$3_formatSrc as formatSrc, index$3_formatStatement as formatStatement, index$3_gitClient as gitClient, index$3_hashLines as hashLines, index$3_hashRange as hashRange, index$3_historyOf as historyOf, index$3_holdsWords as holdsWords, index$3_insertStatementBefore as insertStatementBefore, index$3_insideFence as insideFence, index$3_isBoundLine as isBoundLine, index$3_isCiteRule as isCiteRule, index$3_isKeyedPin as isKeyedPin, index$3_isTableRow as isTableRow, index$3_isUnitText as isUnitText, index$3_itemLine as itemLine, index$3_lineAt as lineAt, index$3_lineSpec as lineSpec, index$3_loadCitationSidecars as loadCitationSidecars, index$3_loadCiteConfig as loadCiteConfig, index$3_markerClaimEnd as markerClaimEnd, index$3_markerRunAt as markerRunAt, index$3_markerUnit as markerUnit, index$3_messageFor as messageFor, index$3_mintCitation as mintCitation, index$3_misplacedMarkerAt as misplacedMarkerAt, index$3_misplacedMarkers as misplacedMarkers, index$3_misplacedMessageFor as misplacedMessageFor, index$3_movedUnit as movedUnit, index$3_noGit as noGit, index$3_noUnitAt as noUnitAt, index$3_normalizeText as normalizeText, index$3_normalizeWhitespace as normalizeWhitespace, index$3_offsetOfLine as offsetOfLine, index$3_orphanRefusal as orphanRefusal, index$3_ownedMessage as ownedMessage, index$3_paragraphAfter as paragraphAfter, index$3_parseCiteConfig as parseCiteConfig, index$3_parseLines as parseLines, index$3_parseSrc as parseSrc, index$3_parseStatements as parseStatements, index$3_pickExtractor as pickExtractor, index$3_pinOfLines as pinOfLines, index$3_pre43Span as pre43Span, index$3_rangeLines as rangeLines, index$3_readCiteConfigFile as readCiteConfigFile, readPage$1 as readPage, index$3_readSource as readSource, index$3_reencryptCitationEntries as reencryptCitationEntries, index$3_reencryptCitations as reencryptCitations, index$3_refineClaim as refineClaim, index$3_refusalLine as refusalLine, index$3_removalLine as removalLine, index$3_removeFrontmatterCitations as removeFrontmatterCitations, index$3_removeLine as removeLine, index$3_renderCheckGithub as renderCheckGithub, index$3_renderCheckJson as renderCheckJson, index$3_renderCheckPretty as renderCheckPretty, index$3_renderRemoveJson as renderRemoveJson, index$3_renderRemovePretty as renderRemovePretty, index$3_renderUpdateJson as renderUpdateJson, index$3_renderUpdatePretty as renderUpdatePretty, index$3_resolveCiteRun as resolveCiteRun, index$3_resolveSeverity as resolveSeverity, index$3_rewriteLine as rewriteLine, ruleId$1 as ruleId, index$3_runAdd as runAdd, index$3_runCheck as runCheck, index$3_runRemove as runRemove, index$3_runUpdate as runUpdate, index$3_runsHolding as runsHolding, index$3_sentencesOf as sentencesOf, index$3_sharesSentence as sharesSentence, index$3_shiftedEntries as shiftedEntries, index$3_shortCommit as shortCommit, index$3_shortLine as shortLine, index$3_shortPin as shortPin, index$3_shortSrc as shortSrc, index$3_sidecarsFor as sidecarsFor, index$3_sliceLines as sliceLines, index$3_sourceRange as sourceRange, index$3_spellAt as spellAt, index$3_spellLines as spellLines, index$3_spellSource as spellSource, index$3_splice as splice, index$3_spliceEntryField as spliceEntryField, index$3_splitLines as splitLines, index$3_splitUnit as splitUnit, index$3_statementForms as statementForms, index$3_stripMarkers as stripMarkers, index$3_toBodyLines as toBodyLines, index$3_toFileLines as toFileLines, index$3_toValidationResult as toValidationResult, index$3_twoManifestsRefusal as twoManifestsRefusal, index$3_unifiedDiff as unifiedDiff, index$3_unitAt as unitAt, index$3_unitText as unitText, index$3_urlManifestRefusal as urlManifestRefusal, index$3_validateEntry as validateEntry, index$3_withClaimLines as withClaimLines };
5868
+ type index$4_AddOptions = AddOptions;
5869
+ type index$4_AddResult = AddResult;
5870
+ type index$4_BuildIndexOptions = BuildIndexOptions;
5871
+ declare const index$4_CITATIONS_KEY: typeof CITATIONS_KEY;
5872
+ declare const index$4_CITE_RULES: typeof CITE_RULES;
5873
+ declare const index$4_CITE_SECTION: typeof CITE_SECTION;
5874
+ type index$4_CheckOptions = CheckOptions;
5875
+ type index$4_CheckPageOptions = CheckPageOptions;
5876
+ type index$4_CheckRun = CheckRun;
5877
+ type index$4_CitationAnchor = CitationAnchor;
5878
+ type index$4_CitationClaim = CitationClaim;
5879
+ type index$4_CitationFinding = CitationFinding;
5880
+ type index$4_CitationInput = CitationInput;
5881
+ type index$4_CitationManifest = CitationManifest;
5882
+ type index$4_CitationOrigin = CitationOrigin;
5883
+ type index$4_CitationResult = CitationResult;
5884
+ type index$4_CitationSidecars = CitationSidecars;
5885
+ type index$4_CitationSource = CitationSource;
5886
+ type index$4_CiteConfig = CiteConfig;
5887
+ type index$4_CiteError = CiteError;
5888
+ declare const index$4_CiteError: typeof CiteError;
5889
+ type index$4_CiteRule = CiteRule;
5890
+ type index$4_CiteRun = CiteRun;
5891
+ type index$4_CiteRunOptions = CiteRunOptions;
5892
+ type index$4_CiteSeverity = CiteSeverity;
5893
+ type index$4_ClaimEnd = ClaimEnd;
5894
+ type index$4_ClaimHistory = ClaimHistory;
5895
+ type index$4_ClaimHistoryInput = ClaimHistoryInput;
5896
+ type index$4_ClaimStatus = ClaimStatus;
5897
+ type index$4_ClaimUnit = ClaimUnit;
5898
+ type index$4_ClassifyOptions = ClassifyOptions;
5899
+ declare const index$4_DEFAULT_CITE_BASELINE_PATH: typeof DEFAULT_CITE_BASELINE_PATH;
5900
+ declare const index$4_DEFAULT_SEVERITY: typeof DEFAULT_SEVERITY;
5901
+ type index$4_EntryPath = EntryPath;
5902
+ declare const index$4_FILE_PATTERN: typeof FILE_PATTERN;
5903
+ type index$4_FindWindowsOptions = FindWindowsOptions;
5904
+ declare const index$4_GIT_UNAVAILABLE_COMMIT: typeof GIT_UNAVAILABLE_COMMIT;
5905
+ declare const index$4_GIT_UNAVAILABLE_HISTORY: typeof GIT_UNAVAILABLE_HISTORY;
5906
+ type index$4_GitClient = GitClient;
5907
+ type index$4_HeldManifest = HeldManifest;
5908
+ type index$4_History = History;
5909
+ type index$4_InlineStatement = InlineStatement;
5910
+ type index$4_LineSpec = LineSpec;
5911
+ type index$4_LoadSidecarOptions = LoadSidecarOptions;
5912
+ type index$4_LoadedCiteConfig = LoadedCiteConfig;
5913
+ declare const index$4_MARKER_JSON: typeof MARKER_JSON;
5914
+ declare const index$4_MAX_MARKERS_PER_PAGE: typeof MAX_MARKERS_PER_PAGE;
5915
+ declare const index$4_MAX_PAGE_COMMITS: typeof MAX_PAGE_COMMITS;
5916
+ declare const index$4_MAX_RANGE_LINES: typeof MAX_RANGE_LINES;
5917
+ declare const index$4_MOVE_BUDGET_BYTES: typeof MOVE_BUDGET_BYTES;
5918
+ declare const index$4_MOVE_WINDOW_LINES: typeof MOVE_WINDOW_LINES;
5919
+ type index$4_ManifestSet = ManifestSet;
5920
+ declare const index$4_ManifestSet: typeof ManifestSet;
5921
+ type index$4_ManifestWrite = ManifestWrite;
5922
+ type index$4_MarkerEnd = MarkerEnd;
5923
+ type index$4_MintOptions = MintOptions;
5924
+ type index$4_MisplacedMarker = MisplacedMarker;
5925
+ type index$4_MisplacedMarkerReport = MisplacedMarkerReport;
5926
+ type index$4_MissingReason = MissingReason;
5927
+ type index$4_NoUnit = NoUnit;
5928
+ type index$4_OriginKind = OriginKind;
5929
+ declare const index$4_PAGE_HISTORY_UNAVAILABLE: typeof PAGE_HISTORY_UNAVAILABLE;
5930
+ type index$4_PageCitation = PageCitation;
5931
+ type index$4_PageCitationReport = PageCitationReport;
5932
+ type index$4_PageCitations = PageCitations;
5933
+ type index$4_PageCommit = PageCommit;
5934
+ type index$4_PageHistory = PageHistory;
5935
+ type index$4_PageLines = PageLines;
5936
+ type index$4_PageSidecar = PageSidecar;
5937
+ type index$4_PrettyOptions = PrettyOptions;
5938
+ type index$4_ReadPageOptions = ReadPageOptions;
5939
+ type index$4_ReadSourceResult = ReadSourceResult;
5940
+ type index$4_RecommitReason = RecommitReason;
5941
+ type index$4_ReencryptCitationsResult = ReencryptCitationsResult;
5942
+ type index$4_ReencryptEntriesResult = ReencryptEntriesResult;
5943
+ type index$4_ReencryptOptions = ReencryptOptions;
5944
+ type index$4_ReencryptedCitation = ReencryptedCitation;
5945
+ type index$4_RefineClaimInput = RefineClaimInput;
5946
+ type index$4_Removal = Removal;
5947
+ type index$4_RemoveOptions = RemoveOptions;
5948
+ type index$4_RemovePage = RemovePage;
5949
+ type index$4_RemoveRun = RemoveRun;
5950
+ declare const index$4_SRC_PATTERN: typeof SRC_PATTERN;
5951
+ type index$4_ShiftOptions = ShiftOptions;
5952
+ type index$4_Shifted = Shifted;
5953
+ type index$4_ShownFile = ShownFile;
5954
+ type index$4_SourceEnd = SourceEnd;
5955
+ type index$4_SourceIndex = SourceIndex;
5956
+ type index$4_SourceRange = SourceRange;
5957
+ type index$4_SourceStatus = SourceStatus;
5958
+ type index$4_StatementForm = StatementForm;
5959
+ type index$4_TextEdit = TextEdit;
5960
+ type index$4_UpdateOptions = UpdateOptions;
5961
+ type index$4_UpdatePage = UpdatePage;
5962
+ type index$4_UpdateRewrite = UpdateRewrite;
5963
+ type index$4_UpdateRun = UpdateRun;
5964
+ declare const index$4_anchoredLines: typeof anchoredLines;
5965
+ declare const index$4_appendFrontmatterCitation: typeof appendFrontmatterCitation;
5966
+ declare const index$4_blockMatches: typeof blockMatches;
5967
+ declare const index$4_bodyLineOf: typeof bodyLineOf;
5968
+ declare const index$4_buildSourceIndex: typeof buildSourceIndex;
5969
+ declare const index$4_checkCitations: typeof checkCitations;
5970
+ declare const index$4_citationInputs: typeof citationInputs;
5971
+ declare const index$4_claimDiff: typeof claimDiff;
5972
+ declare const index$4_claimEnd: typeof claimEnd;
5973
+ declare const index$4_claimHistory: typeof claimHistory;
5974
+ declare const index$4_claimLine: typeof claimLine;
5975
+ declare const index$4_claimMessageFor: typeof claimMessageFor;
5976
+ declare const index$4_claimWords: typeof claimWords;
5977
+ declare const index$4_classifyCitation: typeof classifyCitation;
5978
+ declare const index$4_detectEol: typeof detectEol;
5979
+ declare const index$4_duplicateJoinRefusal: typeof duplicateJoinRefusal;
5980
+ declare const index$4_entryObject: typeof entryObject;
5981
+ declare const index$4_errorSite: typeof errorSite;
5982
+ declare const index$4_fenceSpanAt: typeof fenceSpanAt;
5983
+ declare const index$4_fencedBlockAfter: typeof fencedBlockAfter;
5984
+ declare const index$4_fencedBlockAt: typeof fencedBlockAt;
5985
+ declare const index$4_fencedBlocks: typeof fencedBlocks;
5986
+ declare const index$4_findWindows: typeof findWindows;
5987
+ declare const index$4_findingsFor: typeof findingsFor;
5988
+ declare const index$4_formatSrc: typeof formatSrc;
5989
+ declare const index$4_formatStatement: typeof formatStatement;
5990
+ declare const index$4_gitClient: typeof gitClient;
5991
+ declare const index$4_hashLines: typeof hashLines;
5992
+ declare const index$4_hashRange: typeof hashRange;
5993
+ declare const index$4_historyOf: typeof historyOf;
5994
+ declare const index$4_holdsWords: typeof holdsWords;
5995
+ declare const index$4_insertStatementBefore: typeof insertStatementBefore;
5996
+ declare const index$4_insideFence: typeof insideFence;
5997
+ declare const index$4_isBoundLine: typeof isBoundLine;
5998
+ declare const index$4_isCiteRule: typeof isCiteRule;
5999
+ declare const index$4_isKeyedPin: typeof isKeyedPin;
6000
+ declare const index$4_isTableRow: typeof isTableRow;
6001
+ declare const index$4_isUnitText: typeof isUnitText;
6002
+ declare const index$4_itemLine: typeof itemLine;
6003
+ declare const index$4_lineAt: typeof lineAt;
6004
+ declare const index$4_lineSpec: typeof lineSpec;
6005
+ declare const index$4_loadCitationSidecars: typeof loadCitationSidecars;
6006
+ declare const index$4_loadCiteConfig: typeof loadCiteConfig;
6007
+ declare const index$4_markerClaimEnd: typeof markerClaimEnd;
6008
+ declare const index$4_markerRunAt: typeof markerRunAt;
6009
+ declare const index$4_markerUnit: typeof markerUnit;
6010
+ declare const index$4_messageFor: typeof messageFor;
6011
+ declare const index$4_mintCitation: typeof mintCitation;
6012
+ declare const index$4_misplacedMarkerAt: typeof misplacedMarkerAt;
6013
+ declare const index$4_misplacedMarkers: typeof misplacedMarkers;
6014
+ declare const index$4_misplacedMessageFor: typeof misplacedMessageFor;
6015
+ declare const index$4_movedUnit: typeof movedUnit;
6016
+ declare const index$4_noGit: typeof noGit;
6017
+ declare const index$4_noUnitAt: typeof noUnitAt;
6018
+ declare const index$4_normalizeText: typeof normalizeText;
6019
+ declare const index$4_normalizeWhitespace: typeof normalizeWhitespace;
6020
+ declare const index$4_offsetOfLine: typeof offsetOfLine;
6021
+ declare const index$4_orphanRefusal: typeof orphanRefusal;
6022
+ declare const index$4_ownedMessage: typeof ownedMessage;
6023
+ declare const index$4_paragraphAfter: typeof paragraphAfter;
6024
+ declare const index$4_parseCiteConfig: typeof parseCiteConfig;
6025
+ declare const index$4_parseLines: typeof parseLines;
6026
+ declare const index$4_parseSrc: typeof parseSrc;
6027
+ declare const index$4_parseStatements: typeof parseStatements;
6028
+ declare const index$4_pickExtractor: typeof pickExtractor;
6029
+ declare const index$4_pinOfLines: typeof pinOfLines;
6030
+ declare const index$4_pre43Span: typeof pre43Span;
6031
+ declare const index$4_rangeLines: typeof rangeLines;
6032
+ declare const index$4_readCiteConfigFile: typeof readCiteConfigFile;
6033
+ declare const index$4_readSource: typeof readSource;
6034
+ declare const index$4_reencryptCitationEntries: typeof reencryptCitationEntries;
6035
+ declare const index$4_reencryptCitations: typeof reencryptCitations;
6036
+ declare const index$4_refineClaim: typeof refineClaim;
6037
+ declare const index$4_refusalLine: typeof refusalLine;
6038
+ declare const index$4_removalLine: typeof removalLine;
6039
+ declare const index$4_removeFrontmatterCitations: typeof removeFrontmatterCitations;
6040
+ declare const index$4_removeLine: typeof removeLine;
6041
+ declare const index$4_renderCheckGithub: typeof renderCheckGithub;
6042
+ declare const index$4_renderCheckJson: typeof renderCheckJson;
6043
+ declare const index$4_renderCheckPretty: typeof renderCheckPretty;
6044
+ declare const index$4_renderRemoveJson: typeof renderRemoveJson;
6045
+ declare const index$4_renderRemovePretty: typeof renderRemovePretty;
6046
+ declare const index$4_renderUpdateJson: typeof renderUpdateJson;
6047
+ declare const index$4_renderUpdatePretty: typeof renderUpdatePretty;
6048
+ declare const index$4_resolveCiteRun: typeof resolveCiteRun;
6049
+ declare const index$4_resolveSeverity: typeof resolveSeverity;
6050
+ declare const index$4_rewriteLine: typeof rewriteLine;
6051
+ declare const index$4_runAdd: typeof runAdd;
6052
+ declare const index$4_runCheck: typeof runCheck;
6053
+ declare const index$4_runRemove: typeof runRemove;
6054
+ declare const index$4_runUpdate: typeof runUpdate;
6055
+ declare const index$4_runsHolding: typeof runsHolding;
6056
+ declare const index$4_sentencesOf: typeof sentencesOf;
6057
+ declare const index$4_sharesSentence: typeof sharesSentence;
6058
+ declare const index$4_shiftedEntries: typeof shiftedEntries;
6059
+ declare const index$4_shortCommit: typeof shortCommit;
6060
+ declare const index$4_shortLine: typeof shortLine;
6061
+ declare const index$4_shortPin: typeof shortPin;
6062
+ declare const index$4_shortSrc: typeof shortSrc;
6063
+ declare const index$4_sidecarsFor: typeof sidecarsFor;
6064
+ declare const index$4_sliceLines: typeof sliceLines;
6065
+ declare const index$4_sourceRange: typeof sourceRange;
6066
+ declare const index$4_spellAt: typeof spellAt;
6067
+ declare const index$4_spellLines: typeof spellLines;
6068
+ declare const index$4_spellSource: typeof spellSource;
6069
+ declare const index$4_splice: typeof splice;
6070
+ declare const index$4_spliceEntryField: typeof spliceEntryField;
6071
+ declare const index$4_splitLines: typeof splitLines;
6072
+ declare const index$4_splitUnit: typeof splitUnit;
6073
+ declare const index$4_statementForms: typeof statementForms;
6074
+ declare const index$4_stripMarkers: typeof stripMarkers;
6075
+ declare const index$4_toBodyLines: typeof toBodyLines;
6076
+ declare const index$4_toFileLines: typeof toFileLines;
6077
+ declare const index$4_toValidationResult: typeof toValidationResult;
6078
+ declare const index$4_twoManifestsRefusal: typeof twoManifestsRefusal;
6079
+ declare const index$4_unifiedDiff: typeof unifiedDiff;
6080
+ declare const index$4_unitAt: typeof unitAt;
6081
+ declare const index$4_unitText: typeof unitText;
6082
+ declare const index$4_urlManifestRefusal: typeof urlManifestRefusal;
6083
+ declare const index$4_validateEntry: typeof validateEntry;
6084
+ declare const index$4_withClaimLines: typeof withClaimLines;
6085
+ declare namespace index$4 {
6086
+ export { type index$4_AddOptions as AddOptions, type index$4_AddResult as AddResult, type index$4_BuildIndexOptions as BuildIndexOptions, index$4_CITATIONS_KEY as CITATIONS_KEY, index$4_CITE_RULES as CITE_RULES, index$4_CITE_SECTION as CITE_SECTION, type index$4_CheckOptions as CheckOptions, type index$4_CheckPageOptions as CheckPageOptions, type index$4_CheckRun as CheckRun, type Citation$1 as Citation, type index$4_CitationAnchor as CitationAnchor, type index$4_CitationClaim as CitationClaim, type index$4_CitationFinding as CitationFinding, type index$4_CitationInput as CitationInput, type index$4_CitationManifest as CitationManifest, type index$4_CitationOrigin as CitationOrigin, type index$4_CitationResult as CitationResult, type index$4_CitationSidecars as CitationSidecars, type index$4_CitationSource as CitationSource, type index$4_CiteConfig as CiteConfig, index$4_CiteError as CiteError, type index$4_CiteRule as CiteRule, type index$4_CiteRun as CiteRun, type index$4_CiteRunOptions as CiteRunOptions, type index$4_CiteSeverity as CiteSeverity, type index$4_ClaimEnd as ClaimEnd, type index$4_ClaimHistory as ClaimHistory, type index$4_ClaimHistoryInput as ClaimHistoryInput, type index$4_ClaimStatus as ClaimStatus, type index$4_ClaimUnit as ClaimUnit, type index$4_ClassifyOptions as ClassifyOptions, index$4_DEFAULT_CITE_BASELINE_PATH as DEFAULT_CITE_BASELINE_PATH, index$4_DEFAULT_SEVERITY as DEFAULT_SEVERITY, type index$4_EntryPath as EntryPath, index$4_FILE_PATTERN as FILE_PATTERN, type index$4_FindWindowsOptions as FindWindowsOptions, index$4_GIT_UNAVAILABLE_COMMIT as GIT_UNAVAILABLE_COMMIT, index$4_GIT_UNAVAILABLE_HISTORY as GIT_UNAVAILABLE_HISTORY, type index$4_GitClient as GitClient, type index$4_HeldManifest as HeldManifest, type index$4_History as History, type index$4_InlineStatement as InlineStatement, type index$4_LineSpec as LineSpec, type index$4_LoadSidecarOptions as LoadSidecarOptions, type index$4_LoadedCiteConfig as LoadedCiteConfig, index$4_MARKER_JSON as MARKER_JSON, index$4_MAX_MARKERS_PER_PAGE as MAX_MARKERS_PER_PAGE, index$4_MAX_PAGE_COMMITS as MAX_PAGE_COMMITS, index$4_MAX_RANGE_LINES as MAX_RANGE_LINES, index$4_MOVE_BUDGET_BYTES as MOVE_BUDGET_BYTES, index$4_MOVE_WINDOW_LINES as MOVE_WINDOW_LINES, type ManifestChange$1 as ManifestChange, index$4_ManifestSet as ManifestSet, type index$4_ManifestWrite as ManifestWrite, type index$4_MarkerEnd as MarkerEnd, type index$4_MintOptions as MintOptions, type index$4_MisplacedMarker as MisplacedMarker, type index$4_MisplacedMarkerReport as MisplacedMarkerReport, type index$4_MissingReason as MissingReason, type index$4_NoUnit as NoUnit, type index$4_OriginKind as OriginKind, index$4_PAGE_HISTORY_UNAVAILABLE as PAGE_HISTORY_UNAVAILABLE, type index$4_PageCitation as PageCitation, type index$4_PageCitationReport as PageCitationReport, type index$4_PageCitations as PageCitations, type index$4_PageCommit as PageCommit, type index$4_PageHistory as PageHistory, type index$4_PageLines as PageLines, type index$4_PageSidecar as PageSidecar, type index$4_PrettyOptions as PrettyOptions, RULE_ID_PREFIX$1 as RULE_ID_PREFIX, type index$4_ReadPageOptions as ReadPageOptions, type index$4_ReadSourceResult as ReadSourceResult, type index$4_RecommitReason as RecommitReason, type index$4_ReencryptCitationsResult as ReencryptCitationsResult, type index$4_ReencryptEntriesResult as ReencryptEntriesResult, type index$4_ReencryptOptions as ReencryptOptions, type index$4_ReencryptedCitation as ReencryptedCitation, type index$4_RefineClaimInput as RefineClaimInput, type index$4_Removal as Removal, type index$4_RemoveOptions as RemoveOptions, type index$4_RemovePage as RemovePage, type index$4_RemoveRun as RemoveRun, index$4_SRC_PATTERN as SRC_PATTERN, type index$4_ShiftOptions as ShiftOptions, type index$4_Shifted as Shifted, type index$4_ShownFile as ShownFile, type index$4_SourceEnd as SourceEnd, type index$4_SourceIndex as SourceIndex, type index$4_SourceRange as SourceRange, type index$4_SourceStatus as SourceStatus, type index$4_StatementForm as StatementForm, type index$4_TextEdit as TextEdit, type index$4_UpdateOptions as UpdateOptions, type index$4_UpdatePage as UpdatePage, type index$4_UpdateRewrite as UpdateRewrite, type index$4_UpdateRun as UpdateRun, index$4_anchoredLines as anchoredLines, index$4_appendFrontmatterCitation as appendFrontmatterCitation, index$4_blockMatches as blockMatches, index$4_bodyLineOf as bodyLineOf, index$4_buildSourceIndex as buildSourceIndex, index$4_checkCitations as checkCitations, index$4_citationInputs as citationInputs, index$4_claimDiff as claimDiff, index$4_claimEnd as claimEnd, index$4_claimHistory as claimHistory, index$4_claimLine as claimLine, index$4_claimMessageFor as claimMessageFor, index$4_claimWords as claimWords, index$4_classifyCitation as classifyCitation, index$4_detectEol as detectEol, index$4_duplicateJoinRefusal as duplicateJoinRefusal, index$4_entryObject as entryObject, index$4_errorSite as errorSite, index$4_fenceSpanAt as fenceSpanAt, index$4_fencedBlockAfter as fencedBlockAfter, index$4_fencedBlockAt as fencedBlockAt, index$4_fencedBlocks as fencedBlocks, index$4_findWindows as findWindows, index$4_findingsFor as findingsFor, index$4_formatSrc as formatSrc, index$4_formatStatement as formatStatement, index$4_gitClient as gitClient, index$4_hashLines as hashLines, index$4_hashRange as hashRange, index$4_historyOf as historyOf, index$4_holdsWords as holdsWords, index$4_insertStatementBefore as insertStatementBefore, index$4_insideFence as insideFence, index$4_isBoundLine as isBoundLine, index$4_isCiteRule as isCiteRule, index$4_isKeyedPin as isKeyedPin, index$4_isTableRow as isTableRow, index$4_isUnitText as isUnitText, index$4_itemLine as itemLine, index$4_lineAt as lineAt, index$4_lineSpec as lineSpec, index$4_loadCitationSidecars as loadCitationSidecars, index$4_loadCiteConfig as loadCiteConfig, index$4_markerClaimEnd as markerClaimEnd, index$4_markerRunAt as markerRunAt, index$4_markerUnit as markerUnit, index$4_messageFor as messageFor, index$4_mintCitation as mintCitation, index$4_misplacedMarkerAt as misplacedMarkerAt, index$4_misplacedMarkers as misplacedMarkers, index$4_misplacedMessageFor as misplacedMessageFor, index$4_movedUnit as movedUnit, index$4_noGit as noGit, index$4_noUnitAt as noUnitAt, index$4_normalizeText as normalizeText, index$4_normalizeWhitespace as normalizeWhitespace, index$4_offsetOfLine as offsetOfLine, index$4_orphanRefusal as orphanRefusal, index$4_ownedMessage as ownedMessage, index$4_paragraphAfter as paragraphAfter, index$4_parseCiteConfig as parseCiteConfig, index$4_parseLines as parseLines, index$4_parseSrc as parseSrc, index$4_parseStatements as parseStatements, index$4_pickExtractor as pickExtractor, index$4_pinOfLines as pinOfLines, index$4_pre43Span as pre43Span, index$4_rangeLines as rangeLines, index$4_readCiteConfigFile as readCiteConfigFile, readPage$1 as readPage, index$4_readSource as readSource, index$4_reencryptCitationEntries as reencryptCitationEntries, index$4_reencryptCitations as reencryptCitations, index$4_refineClaim as refineClaim, index$4_refusalLine as refusalLine, index$4_removalLine as removalLine, index$4_removeFrontmatterCitations as removeFrontmatterCitations, index$4_removeLine as removeLine, index$4_renderCheckGithub as renderCheckGithub, index$4_renderCheckJson as renderCheckJson, index$4_renderCheckPretty as renderCheckPretty, index$4_renderRemoveJson as renderRemoveJson, index$4_renderRemovePretty as renderRemovePretty, index$4_renderUpdateJson as renderUpdateJson, index$4_renderUpdatePretty as renderUpdatePretty, index$4_resolveCiteRun as resolveCiteRun, index$4_resolveSeverity as resolveSeverity, index$4_rewriteLine as rewriteLine, ruleId$1 as ruleId, index$4_runAdd as runAdd, index$4_runCheck as runCheck, index$4_runRemove as runRemove, index$4_runUpdate as runUpdate, index$4_runsHolding as runsHolding, index$4_sentencesOf as sentencesOf, index$4_sharesSentence as sharesSentence, index$4_shiftedEntries as shiftedEntries, index$4_shortCommit as shortCommit, index$4_shortLine as shortLine, index$4_shortPin as shortPin, index$4_shortSrc as shortSrc, index$4_sidecarsFor as sidecarsFor, index$4_sliceLines as sliceLines, index$4_sourceRange as sourceRange, index$4_spellAt as spellAt, index$4_spellLines as spellLines, index$4_spellSource as spellSource, index$4_splice as splice, index$4_spliceEntryField as spliceEntryField, index$4_splitLines as splitLines, index$4_splitUnit as splitUnit, index$4_statementForms as statementForms, index$4_stripMarkers as stripMarkers, index$4_toBodyLines as toBodyLines, index$4_toFileLines as toFileLines, index$4_toValidationResult as toValidationResult, index$4_twoManifestsRefusal as twoManifestsRefusal, index$4_unifiedDiff as unifiedDiff, index$4_unitAt as unitAt, index$4_unitText as unitText, index$4_urlManifestRefusal as urlManifestRefusal, index$4_validateEntry as validateEntry, index$4_withClaimLines as withClaimLines };
6029
6087
  }
6030
6088
 
6031
6089
  /**
@@ -6282,8 +6340,8 @@ declare function stripFrontmatterBlock(content: string): string;
6282
6340
  /** Read and extract a single page. Extraction errors are captured, not thrown. */
6283
6341
  declare function readPage(absPath: string, root: string): PageFile;
6284
6342
  /** The word the empty-input message uses for what the command would do. */
6285
- type DocumentVerb = "evaluate" | "list" | "fill" | "read";
6286
- interface DocumentSetOptions {
6343
+ type DocumentVerb$1 = "evaluate" | "list" | "fill" | "read";
6344
+ interface DocumentSetOptions$1 {
6287
6345
  /**
6288
6346
  * Positional paths: files, directories and globs, relative to the working
6289
6347
  * directory. Empty or absent means the selected collections' `paths:`.
@@ -6298,13 +6356,13 @@ interface DocumentSetOptions {
6298
6356
  /** `--exclude <glob>`, repeatable. Applies to paths and collections alike. */
6299
6357
  exclude?: string[];
6300
6358
  /** Defaults to `evaluate`. */
6301
- verb?: DocumentVerb;
6359
+ verb?: DocumentVerb$1;
6302
6360
  }
6303
6361
  /**
6304
6362
  * The document-set options every command that reads pages takes beside its
6305
6363
  * positional paths: `-c`, `--no-config`, `--collection` and `--exclude`.
6306
6364
  */
6307
- interface DocumentInputOptions extends Pick<DocumentSetOptions, "collection" | "exclude"> {
6365
+ interface DocumentInputOptions$1 extends Pick<DocumentSetOptions$1, "collection" | "exclude"> {
6308
6366
  /** `-c/--config`. */
6309
6367
  config?: string;
6310
6368
  /** `--no-config`: skip discovery and run on the built-in defaults. */
@@ -6318,7 +6376,7 @@ interface DocumentInputOptions extends Pick<DocumentSetOptions, "collection" | "
6318
6376
  * exclusions and `--exclude` apply to both. Page labels stay relative to
6319
6377
  * `root` either way.
6320
6378
  */
6321
- declare function discoverPages(config: DocevalsConfig, options?: DocumentSetOptions, root?: string): PageFile[];
6379
+ declare function discoverPages(config: DocevalsConfig, options?: DocumentSetOptions$1, root?: string): PageFile[];
6322
6380
 
6323
6381
  interface ResolvedEval {
6324
6382
  /** Kebab-case id, unique per page. */
@@ -6550,14 +6608,14 @@ interface DocevalsConfig {
6550
6608
  }
6551
6609
  declare const DEFAULT_CONFIG_FILENAME = "manni.config.yaml";
6552
6610
  /** Parse and validate config YAML text. `configPath` is used for messages and path resolution. */
6553
- declare function parseConfig$1(text: string, configPath: string): DocevalsConfig;
6611
+ declare function parseConfig$2(text: string, configPath: string): DocevalsConfig;
6554
6612
  /**
6555
6613
  * Load config from an explicit path, or discover the family file from the
6556
6614
  * working directory upward (`src/shared/config-file.ts`: the family file,
6557
6615
  * read at its `docevals:` key). With no config file present, built-in
6558
6616
  * defaults apply (no named evals or suites).
6559
6617
  */
6560
- declare function loadConfig$1(path?: string, cwd?: string): DocevalsConfig;
6618
+ declare function loadConfig$2(path?: string, cwd?: string): DocevalsConfig;
6561
6619
 
6562
6620
  /**
6563
6621
  * Grader option validation.
@@ -6777,7 +6835,7 @@ type SummaryFormat = (typeof SUMMARY_FORMATS)[number];
6777
6835
  */
6778
6836
  declare function parseFormat<T extends string>(value: string, allowed: readonly T[], flag: string): T;
6779
6837
 
6780
- interface ListOptions extends DocumentInputOptions {
6838
+ interface ListOptions extends DocumentInputOptions$1 {
6781
6839
  format?: SummaryFormat;
6782
6840
  /** Show only these evals by name (ADR 01018). */
6783
6841
  evalNames?: string[];
@@ -6812,7 +6870,7 @@ declare function render$1(report: EngineReport, format: ReportFormat$1, opts?: C
6812
6870
  * available and not disabled.
6813
6871
  */
6814
6872
 
6815
- interface RunCommandOptions extends DocumentInputOptions {
6873
+ interface RunCommandOptions extends DocumentInputOptions$1 {
6816
6874
  format?: ReportFormat$1;
6817
6875
  deterministicOnly?: boolean;
6818
6876
  aiOnly?: boolean;
@@ -6889,7 +6947,7 @@ declare function makeJudge(deps: JudgeStageDeps): JudgeFn;
6889
6947
  * The spec for a selection, with the family's connection settings for the
6890
6948
  * provider it names, and under `auto` the settings detection reads.
6891
6949
  */
6892
- declare function providerSpecFor(config: DocevalsConfig, selection: {
6950
+ declare function providerSpecFor$1(config: DocevalsConfig, selection: {
6893
6951
  provider: ProviderSelector;
6894
6952
  model: string | null;
6895
6953
  }): ProviderSpec;
@@ -6903,12 +6961,12 @@ declare function providerSpecFor(config: DocevalsConfig, selection: {
6903
6961
  * weights), so a library default that changes changes every cache key built
6904
6962
  * from it.
6905
6963
  */
6906
- declare function resolveProviderIdentity(config: DocevalsConfig, flags?: ProviderFlags, ev?: ProviderChoice): Promise<{
6964
+ declare function resolveProviderIdentity$1(config: DocevalsConfig, flags?: ProviderFlags, ev?: ProviderChoice): Promise<{
6907
6965
  provider: ProviderName$1;
6908
6966
  model: string;
6909
6967
  }>;
6910
6968
  /** Select, check, detect and construct: the provider a verb sends pages to. */
6911
- declare function makeProvider(config: DocevalsConfig, flags?: ProviderFlags, ev?: ProviderChoice): Promise<InferenceProvider>;
6969
+ declare function makeProvider$1(config: DocevalsConfig, flags?: ProviderFlags, ev?: ProviderChoice): Promise<InferenceProvider>;
6912
6970
 
6913
6971
  /**
6914
6972
  * Judge cache key composition. The cache itself is the inference library's
@@ -6965,7 +7023,7 @@ declare function listReviews(cwd?: string): ReviewEntry[];
6965
7023
  declare function renderReviews(reviews: ReviewEntry[], opts?: ColorOptions): string;
6966
7024
  declare function runReview(file: string, evalName: string, verdict: string, options?: ReviewOptions): ReviewEntry;
6967
7025
 
6968
- interface GenerateOptions extends DocumentInputOptions {
7026
+ interface GenerateOptions extends DocumentInputOptions$1 {
6969
7027
  provider?: string;
6970
7028
  model?: string;
6971
7029
  /** Run inference on this machine, with llama-cpp, over any configured or eval-level provider. */
@@ -6987,7 +7045,7 @@ interface GenerateRun {
6987
7045
  }
6988
7046
  declare function runGenerate(paths: string[], options?: GenerateOptions): Promise<GenerateRun>;
6989
7047
 
6990
- interface FillOptions extends DocumentInputOptions {
7048
+ interface FillOptions$1 extends DocumentInputOptions$1 {
6991
7049
  cwd?: string;
6992
7050
  /** Characters of page per inference call; longer pages are split. */
6993
7051
  chunkChars?: number;
@@ -7016,7 +7074,7 @@ interface FillOptions extends DocumentInputOptions {
7016
7074
  /** What an accepted relocation moved, for the caller to report. */
7017
7075
  onRelocated?: (result: RelocateResult) => void;
7018
7076
  }
7019
- type FillStatus = "filled" | "proposed" | "nothing-proposed" | "skipped" | "skipped-budget" | "error";
7077
+ type FillStatus$1 = "filled" | "proposed" | "nothing-proposed" | "skipped" | "skipped-budget" | "error";
7020
7078
  interface ProposedEval {
7021
7079
  id: string;
7022
7080
  assertion: string;
@@ -7072,7 +7130,7 @@ type EvalsMetaProvenanceReport = {
7072
7130
  };
7073
7131
  interface FillPageResult {
7074
7132
  file: string;
7075
- status: FillStatus;
7133
+ status: FillStatus$1;
7076
7134
  /** Appended (or, in a dry run, would-append) proposals. */
7077
7135
  written: ProposedEval[];
7078
7136
  /** Proposals below the confidence threshold — reported, never written. */
@@ -7094,15 +7152,15 @@ interface FillPageResult {
7094
7152
  */
7095
7153
  metaProvenance?: EvalsMetaProvenanceReport;
7096
7154
  }
7097
- interface FillReport {
7155
+ interface FillReport$1 {
7098
7156
  results: FillPageResult[];
7099
7157
  threshold: number;
7100
7158
  /** Inference calls actually made. One per proposed page; a cache hit is none. */
7101
7159
  turns: number;
7102
7160
  exitCode: 0 | 1;
7103
7161
  }
7104
- declare function runFill(paths: string[], options?: FillOptions): Promise<FillReport>;
7105
- declare function renderFill(report: FillReport, format: SummaryFormat, opts?: ColorOptions): string;
7162
+ declare function runFill$1(paths: string[], options?: FillOptions$1): Promise<FillReport$1>;
7163
+ declare function renderFill(report: FillReport$1, format: SummaryFormat, opts?: ColorOptions): string;
7106
7164
 
7107
7165
  /** Part of the cache key: bump whenever the prompt or schema changes. */
7108
7166
  declare const FILL_PROMPT_VERSION = 4;
@@ -7184,7 +7242,7 @@ declare class FillCache {
7184
7242
  set(key: string, proposal: Record<string, unknown>): void;
7185
7243
  }
7186
7244
 
7187
- interface PromoteOptions extends DocumentInputOptions {
7245
+ interface PromoteOptions extends DocumentInputOptions$1 {
7188
7246
  write?: boolean;
7189
7247
  provider?: string;
7190
7248
  model?: string;
@@ -7420,131 +7478,122 @@ interface NewEvalEntry {
7420
7478
  declare function appendPageEvals(content: string, path: string, entries: NewEvalEntry[], metaProvenance?: readonly unknown[]): string;
7421
7479
 
7422
7480
  /** The evals vocabulary, for validators that accept an inline schema. */
7423
- declare const frontmatterSchema: Record<string, unknown>;
7481
+ declare const frontmatterSchema$1: Record<string, unknown>;
7424
7482
  /** The vocabulary's `$id`: `manni:evals:1.0.0`. */
7425
- declare const FRONTMATTER_SCHEMA_ID: string;
7483
+ declare const FRONTMATTER_SCHEMA_ID$1: string;
7426
7484
 
7427
7485
  /** Programmatic API for manni docevals. */
7428
7486
 
7429
- type index$2_CalibrateOptions = CalibrateOptions;
7430
- type index$2_CalibrationCaseResult = CalibrationCaseResult;
7431
- type index$2_CalibrationReport = CalibrationReport;
7432
- type index$2_ColorOptions = ColorOptions;
7433
- declare const index$2_CompleteJSONRequest: typeof CompleteJSONRequest;
7434
- declare const index$2_CompleteJSONResponse: typeof CompleteJSONResponse;
7435
- declare const index$2_ConsensusResult: typeof ConsensusResult;
7436
- declare const index$2_DEFAULT_CONFIG_FILENAME: typeof DEFAULT_CONFIG_FILENAME;
7437
- type index$2_DocevalsConfig = DocevalsConfig;
7438
- type index$2_DocevalsError = DocevalsError;
7439
- declare const index$2_DocevalsError: typeof DocevalsError;
7440
- declare const index$2_EVAL_KEYS: typeof EVAL_KEYS;
7441
- declare const index$2_EXTERNAL_KEYS: typeof EXTERNAL_KEYS;
7442
- type index$2_EngineReport = EngineReport;
7443
- type index$2_EvalDef = EvalDef;
7444
- type index$2_EvalResult = EvalResult;
7445
- type index$2_EvalType = EvalType;
7446
- declare const index$2_ExecFn: typeof ExecFn;
7447
- type index$2_ExternalMetadataReader = ExternalMetadataReader;
7448
- declare const index$2_FILL_PROMPT_VERSION: typeof FILL_PROMPT_VERSION;
7449
- declare const index$2_FILL_SYSTEM_PROMPT: typeof FILL_SYSTEM_PROMPT;
7450
- declare const index$2_FRONTMATTER_SCHEMA_ID: typeof FRONTMATTER_SCHEMA_ID;
7451
- type index$2_FillCache = FillCache;
7452
- declare const index$2_FillCache: typeof FillCache;
7453
- type index$2_FillOptions = FillOptions;
7454
- type index$2_FillPageResult = FillPageResult;
7455
- type index$2_FillReport = FillReport;
7456
- type index$2_FillStatus = FillStatus;
7457
- declare const index$2_GOLDEN_DIR: typeof GOLDEN_DIR;
7458
- type index$2_GenerateOptions = GenerateOptions;
7459
- type index$2_GenerateRun = GenerateRun;
7460
- type index$2_GoldenCase = GoldenCase;
7461
- type index$2_Grader = Grader;
7462
- type index$2_GraderContext = GraderContext;
7463
- type index$2_GraderKind = GraderKind;
7464
- type index$2_GraderTarget = GraderTarget;
7465
- declare const index$2_InferenceProvider: typeof InferenceProvider;
7466
- type index$2_JudgeCacheBody = JudgeCacheBody;
7467
- type index$2_JudgeFn = JudgeFn;
7468
- type index$2_JudgeOptions = JudgeOptions;
7469
- declare const index$2_JudgeRun: typeof JudgeRun;
7470
- declare const index$2_JudgeVerdict: typeof JudgeVerdict;
7471
- type index$2_ListOptions = ListOptions;
7472
- type index$2_ListRun = ListRun;
7473
- declare const index$2_MockProvider: typeof MockProvider;
7474
- declare const index$2_MockResponse: typeof MockResponse;
7475
- type index$2_NewEvalEntry = NewEvalEntry;
7476
- declare const index$2_PROPOSAL_SCHEMA: typeof PROPOSAL_SCHEMA;
7477
- type index$2_PageExternal = PageExternal;
7478
- type index$2_PageFile = PageFile;
7479
- type index$2_PageProblem = PageProblem;
7480
- type index$2_PromoteOptions = PromoteOptions;
7481
- type index$2_PromoteProposal = PromoteProposal;
7482
- type index$2_ProposedEval = ProposedEval;
7483
- type index$2_ProviderName = ProviderName;
7484
- declare const index$2_REPORT_FORMATS: typeof REPORT_FORMATS;
7485
- type index$2_ResolvedEval = ResolvedEval;
7486
- type index$2_ResolvedPagePlan = ResolvedPagePlan;
7487
- type index$2_RunCommandOptions = RunCommandOptions;
7488
- type index$2_RunOptions = RunOptions;
7489
- type index$2_RunProblem = RunProblem;
7490
- type index$2_RunReport = RunReport;
7491
- declare const index$2_SEEDED_GOLDEN_FILE: typeof SEEDED_GOLDEN_FILE;
7492
- declare const index$2_SUMMARY_FORMATS: typeof SUMMARY_FORMATS;
7493
- type index$2_SeedResult = SeedResult;
7494
- type index$2_Severity = Severity;
7495
- type index$2_SuiteDef = SuiteDef;
7496
- type index$2_SuiteSummary = SuiteSummary;
7497
- type index$2_SummaryFormat = SummaryFormat;
7498
- declare const index$2_Zone: typeof Zone;
7499
- declare const index$2_ZoneThresholds: typeof ZoneThresholds;
7500
- declare const index$2_appendPageEvals: typeof appendPageEvals;
7501
- declare const index$2_buildFillUser: typeof buildFillUser;
7502
- declare const index$2_cacheKey: typeof cacheKey;
7503
- declare const index$2_computeConsensus: typeof computeConsensus;
7504
- declare const index$2_discoverPages: typeof discoverPages;
7505
- declare const index$2_fillCacheKey: typeof fillCacheKey;
7506
- declare const index$2_frontmatterSchema: typeof frontmatterSchema;
7507
- declare const index$2_graderFor: typeof graderFor;
7508
- declare const index$2_isValidProposal: typeof isValidProposal;
7509
- declare const index$2_judgeCacheBody: typeof judgeCacheBody;
7510
- declare const index$2_listGraderKinds: typeof listGraderKinds;
7511
- declare const index$2_listReviews: typeof listReviews;
7512
- declare const index$2_loadExternalReader: typeof loadExternalReader;
7513
- declare const index$2_loadGoldenCases: typeof loadGoldenCases;
7514
- declare const index$2_makeGenerateScripts: typeof makeGenerateScripts;
7515
- declare const index$2_makeJudge: typeof makeJudge;
7516
- declare const index$2_makeProvider: typeof makeProvider;
7517
- declare const index$2_mockVerdict: typeof mockVerdict;
7518
- declare const index$2_parseFormat: typeof parseFormat;
7519
- declare const index$2_providerSpecFor: typeof providerSpecFor;
7520
- declare const index$2_readPage: typeof readPage;
7521
- declare const index$2_readTarget: typeof readTarget;
7522
- declare const index$2_registerGrader: typeof registerGrader;
7523
- declare const index$2_renderCalibration: typeof renderCalibration;
7524
- declare const index$2_renderFill: typeof renderFill;
7525
- declare const index$2_renderList: typeof renderList;
7526
- declare const index$2_renderReviews: typeof renderReviews;
7527
- declare const index$2_resolvePage: typeof resolvePage;
7528
- declare const index$2_resolvePages: typeof resolvePages;
7529
- declare const index$2_resolveProviderIdentity: typeof resolveProviderIdentity;
7530
- declare const index$2_runCalibrate: typeof runCalibrate;
7531
- declare const index$2_runEvals: typeof runEvals;
7532
- declare const index$2_runFill: typeof runFill;
7533
- declare const index$2_runGenerate: typeof runGenerate;
7534
- declare const index$2_runInit: typeof runInit;
7535
- declare const index$2_runList: typeof runList;
7536
- declare const index$2_runPromote: typeof runPromote;
7537
- declare const index$2_runReview: typeof runReview;
7538
- declare const index$2_runRun: typeof runRun;
7539
- declare const index$2_scriptLocationFor: typeof scriptLocationFor;
7540
- declare const index$2_seedGoldenCases: typeof seedGoldenCases;
7541
- declare const index$2_stripFrontmatterBlock: typeof stripFrontmatterBlock;
7542
- declare const index$2_updateConfigEval: typeof updateConfigEval;
7543
- declare const index$2_updatePageEval: typeof updatePageEval;
7544
- declare const index$2_withExternalMetadata: typeof withExternalMetadata;
7545
- declare const index$2_zoneFor: typeof zoneFor;
7546
- declare namespace index$2 {
7547
- export { type index$2_CalibrateOptions as CalibrateOptions, type index$2_CalibrationCaseResult as CalibrationCaseResult, type index$2_CalibrationReport as CalibrationReport, type index$2_ColorOptions as ColorOptions, index$2_CompleteJSONRequest as CompleteJSONRequest, index$2_CompleteJSONResponse as CompleteJSONResponse, index$2_ConsensusResult as ConsensusResult, index$2_DEFAULT_CONFIG_FILENAME as DEFAULT_CONFIG_FILENAME, type index$2_DocevalsConfig as DocevalsConfig, index$2_DocevalsError as DocevalsError, index$2_EVAL_KEYS as EVAL_KEYS, index$2_EXTERNAL_KEYS as EXTERNAL_KEYS, type index$2_EngineReport as EngineReport, type index$2_EvalDef as EvalDef, type index$2_EvalResult as EvalResult, type index$2_EvalType as EvalType, index$2_ExecFn as ExecFn, type index$2_ExternalMetadataReader as ExternalMetadataReader, index$2_FILL_PROMPT_VERSION as FILL_PROMPT_VERSION, index$2_FILL_SYSTEM_PROMPT as FILL_SYSTEM_PROMPT, index$2_FRONTMATTER_SCHEMA_ID as FRONTMATTER_SCHEMA_ID, index$2_FillCache as FillCache, type index$2_FillOptions as FillOptions, type index$2_FillPageResult as FillPageResult, type index$2_FillReport as FillReport, type index$2_FillStatus as FillStatus, type Finding$1 as Finding, index$2_GOLDEN_DIR as GOLDEN_DIR, type index$2_GenerateOptions as GenerateOptions, type index$2_GenerateRun as GenerateRun, type index$2_GoldenCase as GoldenCase, type index$2_Grader as Grader, type index$2_GraderContext as GraderContext, type index$2_GraderKind as GraderKind, type index$2_GraderTarget as GraderTarget, index$2_InferenceProvider as InferenceProvider, type index$2_JudgeCacheBody as JudgeCacheBody, type index$2_JudgeFn as JudgeFn, type index$2_JudgeOptions as JudgeOptions, index$2_JudgeRun as JudgeRun, index$2_JudgeVerdict as JudgeVerdict, type index$2_ListOptions as ListOptions, type index$2_ListRun as ListRun, Match$1 as Match, index$2_MockProvider as MockProvider, index$2_MockResponse as MockResponse, type index$2_NewEvalEntry as NewEvalEntry, index$2_PROPOSAL_SCHEMA as PROPOSAL_SCHEMA, type index$2_PageExternal as PageExternal, type index$2_PageFile as PageFile, type index$2_PageProblem as PageProblem, type index$2_PromoteOptions as PromoteOptions, type index$2_PromoteProposal as PromoteProposal, type index$2_ProposedEval as ProposedEval, type index$2_ProviderName as ProviderName, index$2_REPORT_FORMATS as REPORT_FORMATS, type ReportFormat$1 as ReportFormat, type index$2_ResolvedEval as ResolvedEval, type index$2_ResolvedPagePlan as ResolvedPagePlan, type index$2_RunCommandOptions as RunCommandOptions, type index$2_RunOptions as RunOptions, type index$2_RunProblem as RunProblem, type index$2_RunReport as RunReport, index$2_SEEDED_GOLDEN_FILE as SEEDED_GOLDEN_FILE, index$2_SUMMARY_FORMATS as SUMMARY_FORMATS, type index$2_SeedResult as SeedResult, type index$2_Severity as Severity, type index$2_SuiteDef as SuiteDef, type index$2_SuiteSummary as SuiteSummary, type index$2_SummaryFormat as SummaryFormat, index$2_Zone as Zone, index$2_ZoneThresholds as ZoneThresholds, index$2_appendPageEvals as appendPageEvals, index$2_buildFillUser as buildFillUser, index$2_cacheKey as cacheKey, index$2_computeConsensus as computeConsensus, index$2_discoverPages as discoverPages, index$2_fillCacheKey as fillCacheKey, index$2_frontmatterSchema as frontmatterSchema, index$2_graderFor as graderFor, index$2_isValidProposal as isValidProposal, index$2_judgeCacheBody as judgeCacheBody, index$2_listGraderKinds as listGraderKinds, index$2_listReviews as listReviews, loadConfig$1 as loadConfig, index$2_loadExternalReader as loadExternalReader, index$2_loadGoldenCases as loadGoldenCases, index$2_makeGenerateScripts as makeGenerateScripts, index$2_makeJudge as makeJudge, index$2_makeProvider as makeProvider, index$2_mockVerdict as mockVerdict, parseConfig$1 as parseConfig, index$2_parseFormat as parseFormat, index$2_providerSpecFor as providerSpecFor, index$2_readPage as readPage, index$2_readTarget as readTarget, index$2_registerGrader as registerGrader, render$1 as render, index$2_renderCalibration as renderCalibration, index$2_renderFill as renderFill, index$2_renderList as renderList, index$2_renderReviews as renderReviews, index$2_resolvePage as resolvePage, index$2_resolvePages as resolvePages, index$2_resolveProviderIdentity as resolveProviderIdentity, index$2_runCalibrate as runCalibrate, index$2_runEvals as runEvals, index$2_runFill as runFill, index$2_runGenerate as runGenerate, index$2_runInit as runInit, index$2_runList as runList, index$2_runPromote as runPromote, index$2_runReview as runReview, index$2_runRun as runRun, index$2_scriptLocationFor as scriptLocationFor, index$2_seedGoldenCases as seedGoldenCases, index$2_stripFrontmatterBlock as stripFrontmatterBlock, index$2_updateConfigEval as updateConfigEval, index$2_updatePageEval as updatePageEval, index$2_withExternalMetadata as withExternalMetadata, index$2_zoneFor as zoneFor };
7487
+ type index$3_CalibrateOptions = CalibrateOptions;
7488
+ type index$3_CalibrationCaseResult = CalibrationCaseResult;
7489
+ type index$3_CalibrationReport = CalibrationReport;
7490
+ type index$3_ColorOptions = ColorOptions;
7491
+ declare const index$3_CompleteJSONRequest: typeof CompleteJSONRequest;
7492
+ declare const index$3_CompleteJSONResponse: typeof CompleteJSONResponse;
7493
+ declare const index$3_ConsensusResult: typeof ConsensusResult;
7494
+ declare const index$3_DEFAULT_CONFIG_FILENAME: typeof DEFAULT_CONFIG_FILENAME;
7495
+ type index$3_DocevalsConfig = DocevalsConfig;
7496
+ type index$3_DocevalsError = DocevalsError;
7497
+ declare const index$3_DocevalsError: typeof DocevalsError;
7498
+ declare const index$3_EVAL_KEYS: typeof EVAL_KEYS;
7499
+ declare const index$3_EXTERNAL_KEYS: typeof EXTERNAL_KEYS;
7500
+ type index$3_EngineReport = EngineReport;
7501
+ type index$3_EvalDef = EvalDef;
7502
+ type index$3_EvalResult = EvalResult;
7503
+ type index$3_EvalType = EvalType;
7504
+ declare const index$3_ExecFn: typeof ExecFn;
7505
+ type index$3_ExternalMetadataReader = ExternalMetadataReader;
7506
+ declare const index$3_FILL_PROMPT_VERSION: typeof FILL_PROMPT_VERSION;
7507
+ declare const index$3_FILL_SYSTEM_PROMPT: typeof FILL_SYSTEM_PROMPT;
7508
+ type index$3_FillCache = FillCache;
7509
+ declare const index$3_FillCache: typeof FillCache;
7510
+ type index$3_FillPageResult = FillPageResult;
7511
+ declare const index$3_GOLDEN_DIR: typeof GOLDEN_DIR;
7512
+ type index$3_GenerateOptions = GenerateOptions;
7513
+ type index$3_GenerateRun = GenerateRun;
7514
+ type index$3_GoldenCase = GoldenCase;
7515
+ type index$3_Grader = Grader;
7516
+ type index$3_GraderContext = GraderContext;
7517
+ type index$3_GraderKind = GraderKind;
7518
+ type index$3_GraderTarget = GraderTarget;
7519
+ declare const index$3_InferenceProvider: typeof InferenceProvider;
7520
+ type index$3_JudgeCacheBody = JudgeCacheBody;
7521
+ type index$3_JudgeFn = JudgeFn;
7522
+ type index$3_JudgeOptions = JudgeOptions;
7523
+ declare const index$3_JudgeRun: typeof JudgeRun;
7524
+ declare const index$3_JudgeVerdict: typeof JudgeVerdict;
7525
+ type index$3_ListOptions = ListOptions;
7526
+ type index$3_ListRun = ListRun;
7527
+ declare const index$3_MockProvider: typeof MockProvider;
7528
+ declare const index$3_MockResponse: typeof MockResponse;
7529
+ type index$3_NewEvalEntry = NewEvalEntry;
7530
+ declare const index$3_PROPOSAL_SCHEMA: typeof PROPOSAL_SCHEMA;
7531
+ type index$3_PageExternal = PageExternal;
7532
+ type index$3_PageFile = PageFile;
7533
+ type index$3_PageProblem = PageProblem;
7534
+ type index$3_PromoteOptions = PromoteOptions;
7535
+ type index$3_PromoteProposal = PromoteProposal;
7536
+ type index$3_ProposedEval = ProposedEval;
7537
+ type index$3_ProviderName = ProviderName;
7538
+ declare const index$3_REPORT_FORMATS: typeof REPORT_FORMATS;
7539
+ type index$3_ResolvedEval = ResolvedEval;
7540
+ type index$3_ResolvedPagePlan = ResolvedPagePlan;
7541
+ type index$3_RunCommandOptions = RunCommandOptions;
7542
+ type index$3_RunOptions = RunOptions;
7543
+ type index$3_RunProblem = RunProblem;
7544
+ type index$3_RunReport = RunReport;
7545
+ declare const index$3_SEEDED_GOLDEN_FILE: typeof SEEDED_GOLDEN_FILE;
7546
+ declare const index$3_SUMMARY_FORMATS: typeof SUMMARY_FORMATS;
7547
+ type index$3_SeedResult = SeedResult;
7548
+ type index$3_Severity = Severity;
7549
+ type index$3_SuiteDef = SuiteDef;
7550
+ type index$3_SuiteSummary = SuiteSummary;
7551
+ type index$3_SummaryFormat = SummaryFormat;
7552
+ declare const index$3_Zone: typeof Zone;
7553
+ declare const index$3_ZoneThresholds: typeof ZoneThresholds;
7554
+ declare const index$3_appendPageEvals: typeof appendPageEvals;
7555
+ declare const index$3_buildFillUser: typeof buildFillUser;
7556
+ declare const index$3_cacheKey: typeof cacheKey;
7557
+ declare const index$3_computeConsensus: typeof computeConsensus;
7558
+ declare const index$3_discoverPages: typeof discoverPages;
7559
+ declare const index$3_fillCacheKey: typeof fillCacheKey;
7560
+ declare const index$3_graderFor: typeof graderFor;
7561
+ declare const index$3_isValidProposal: typeof isValidProposal;
7562
+ declare const index$3_judgeCacheBody: typeof judgeCacheBody;
7563
+ declare const index$3_listGraderKinds: typeof listGraderKinds;
7564
+ declare const index$3_listReviews: typeof listReviews;
7565
+ declare const index$3_loadExternalReader: typeof loadExternalReader;
7566
+ declare const index$3_loadGoldenCases: typeof loadGoldenCases;
7567
+ declare const index$3_makeGenerateScripts: typeof makeGenerateScripts;
7568
+ declare const index$3_makeJudge: typeof makeJudge;
7569
+ declare const index$3_mockVerdict: typeof mockVerdict;
7570
+ declare const index$3_parseFormat: typeof parseFormat;
7571
+ declare const index$3_readPage: typeof readPage;
7572
+ declare const index$3_readTarget: typeof readTarget;
7573
+ declare const index$3_registerGrader: typeof registerGrader;
7574
+ declare const index$3_renderCalibration: typeof renderCalibration;
7575
+ declare const index$3_renderFill: typeof renderFill;
7576
+ declare const index$3_renderList: typeof renderList;
7577
+ declare const index$3_renderReviews: typeof renderReviews;
7578
+ declare const index$3_resolvePage: typeof resolvePage;
7579
+ declare const index$3_resolvePages: typeof resolvePages;
7580
+ declare const index$3_runCalibrate: typeof runCalibrate;
7581
+ declare const index$3_runEvals: typeof runEvals;
7582
+ declare const index$3_runGenerate: typeof runGenerate;
7583
+ declare const index$3_runInit: typeof runInit;
7584
+ declare const index$3_runList: typeof runList;
7585
+ declare const index$3_runPromote: typeof runPromote;
7586
+ declare const index$3_runReview: typeof runReview;
7587
+ declare const index$3_runRun: typeof runRun;
7588
+ declare const index$3_scriptLocationFor: typeof scriptLocationFor;
7589
+ declare const index$3_seedGoldenCases: typeof seedGoldenCases;
7590
+ declare const index$3_stripFrontmatterBlock: typeof stripFrontmatterBlock;
7591
+ declare const index$3_updateConfigEval: typeof updateConfigEval;
7592
+ declare const index$3_updatePageEval: typeof updatePageEval;
7593
+ declare const index$3_withExternalMetadata: typeof withExternalMetadata;
7594
+ declare const index$3_zoneFor: typeof zoneFor;
7595
+ declare namespace index$3 {
7596
+ export { type index$3_CalibrateOptions as CalibrateOptions, type index$3_CalibrationCaseResult as CalibrationCaseResult, type index$3_CalibrationReport as CalibrationReport, type index$3_ColorOptions as ColorOptions, index$3_CompleteJSONRequest as CompleteJSONRequest, index$3_CompleteJSONResponse as CompleteJSONResponse, index$3_ConsensusResult as ConsensusResult, index$3_DEFAULT_CONFIG_FILENAME as DEFAULT_CONFIG_FILENAME, type index$3_DocevalsConfig as DocevalsConfig, index$3_DocevalsError as DocevalsError, index$3_EVAL_KEYS as EVAL_KEYS, index$3_EXTERNAL_KEYS as EXTERNAL_KEYS, type index$3_EngineReport as EngineReport, type index$3_EvalDef as EvalDef, type index$3_EvalResult as EvalResult, type index$3_EvalType as EvalType, index$3_ExecFn as ExecFn, type index$3_ExternalMetadataReader as ExternalMetadataReader, index$3_FILL_PROMPT_VERSION as FILL_PROMPT_VERSION, index$3_FILL_SYSTEM_PROMPT as FILL_SYSTEM_PROMPT, FRONTMATTER_SCHEMA_ID$1 as FRONTMATTER_SCHEMA_ID, index$3_FillCache as FillCache, type FillOptions$1 as FillOptions, type index$3_FillPageResult as FillPageResult, type FillReport$1 as FillReport, type FillStatus$1 as FillStatus, type Finding$1 as Finding, index$3_GOLDEN_DIR as GOLDEN_DIR, type index$3_GenerateOptions as GenerateOptions, type index$3_GenerateRun as GenerateRun, type index$3_GoldenCase as GoldenCase, type index$3_Grader as Grader, type index$3_GraderContext as GraderContext, type index$3_GraderKind as GraderKind, type index$3_GraderTarget as GraderTarget, index$3_InferenceProvider as InferenceProvider, type index$3_JudgeCacheBody as JudgeCacheBody, type index$3_JudgeFn as JudgeFn, type index$3_JudgeOptions as JudgeOptions, index$3_JudgeRun as JudgeRun, index$3_JudgeVerdict as JudgeVerdict, type index$3_ListOptions as ListOptions, type index$3_ListRun as ListRun, Match$1 as Match, index$3_MockProvider as MockProvider, index$3_MockResponse as MockResponse, type index$3_NewEvalEntry as NewEvalEntry, index$3_PROPOSAL_SCHEMA as PROPOSAL_SCHEMA, type index$3_PageExternal as PageExternal, type index$3_PageFile as PageFile, type index$3_PageProblem as PageProblem, type index$3_PromoteOptions as PromoteOptions, type index$3_PromoteProposal as PromoteProposal, type index$3_ProposedEval as ProposedEval, type index$3_ProviderName as ProviderName, index$3_REPORT_FORMATS as REPORT_FORMATS, type ReportFormat$1 as ReportFormat, type index$3_ResolvedEval as ResolvedEval, type index$3_ResolvedPagePlan as ResolvedPagePlan, type index$3_RunCommandOptions as RunCommandOptions, type index$3_RunOptions as RunOptions, type index$3_RunProblem as RunProblem, type index$3_RunReport as RunReport, index$3_SEEDED_GOLDEN_FILE as SEEDED_GOLDEN_FILE, index$3_SUMMARY_FORMATS as SUMMARY_FORMATS, type index$3_SeedResult as SeedResult, type index$3_Severity as Severity, type index$3_SuiteDef as SuiteDef, type index$3_SuiteSummary as SuiteSummary, type index$3_SummaryFormat as SummaryFormat, index$3_Zone as Zone, index$3_ZoneThresholds as ZoneThresholds, index$3_appendPageEvals as appendPageEvals, index$3_buildFillUser as buildFillUser, index$3_cacheKey as cacheKey, index$3_computeConsensus as computeConsensus, index$3_discoverPages as discoverPages, index$3_fillCacheKey as fillCacheKey, frontmatterSchema$1 as frontmatterSchema, index$3_graderFor as graderFor, index$3_isValidProposal as isValidProposal, index$3_judgeCacheBody as judgeCacheBody, index$3_listGraderKinds as listGraderKinds, index$3_listReviews as listReviews, loadConfig$2 as loadConfig, index$3_loadExternalReader as loadExternalReader, index$3_loadGoldenCases as loadGoldenCases, index$3_makeGenerateScripts as makeGenerateScripts, index$3_makeJudge as makeJudge, makeProvider$1 as makeProvider, index$3_mockVerdict as mockVerdict, parseConfig$2 as parseConfig, index$3_parseFormat as parseFormat, providerSpecFor$1 as providerSpecFor, index$3_readPage as readPage, index$3_readTarget as readTarget, index$3_registerGrader as registerGrader, render$1 as render, index$3_renderCalibration as renderCalibration, index$3_renderFill as renderFill, index$3_renderList as renderList, index$3_renderReviews as renderReviews, index$3_resolvePage as resolvePage, index$3_resolvePages as resolvePages, resolveProviderIdentity$1 as resolveProviderIdentity, index$3_runCalibrate as runCalibrate, index$3_runEvals as runEvals, runFill$1 as runFill, index$3_runGenerate as runGenerate, index$3_runInit as runInit, index$3_runList as runList, index$3_runPromote as runPromote, index$3_runReview as runReview, index$3_runRun as runRun, index$3_scriptLocationFor as scriptLocationFor, index$3_seedGoldenCases as seedGoldenCases, index$3_stripFrontmatterBlock as stripFrontmatterBlock, index$3_updateConfigEval as updateConfigEval, index$3_updatePageEval as updatePageEval, index$3_withExternalMetadata as withExternalMetadata, index$3_zoneFor as zoneFor };
7548
7597
  }
7549
7598
 
7550
7599
  /**
@@ -7686,7 +7735,7 @@ type ContentNode = ParagraphNode | CodeNode | ListNode | TableNode | AdmonitionN
7686
7735
  /**
7687
7736
  * One section of a document, demarcated by a heading.
7688
7737
  *
7689
- * `slug`/`title`/`level`/`order`/`parentSlug` intentionally match manni kg's
7738
+ * `slug`/`title`/`level`/`order`/`parentSlug` intentionally match manni graph's
7690
7739
  * `Section` (dockg/src/types.ts), so its graph can be built from this tree.
7691
7740
  *
7692
7741
  * `children` is in document order and is the single source of truth: the
@@ -7983,7 +8032,7 @@ interface ResolutionStep {
7983
8032
  /** Human-readable account of what the stage saw. */
7984
8033
  detail: string;
7985
8034
  }
7986
- interface Resolution {
8035
+ interface Resolution$1 {
7987
8036
  /** The template ref to lint with, or null when the page is not linted. */
7988
8037
  ref: string | null;
7989
8038
  /** Which stage decided, when one did. */
@@ -8060,7 +8109,7 @@ declare function isLintTool(value: string): value is LintTool;
8060
8109
  * is the case that keeps one shared file usable by a project which has not
8061
8110
  * adopted this tool yet.
8062
8111
  */
8063
- declare function parseConfig(text: string, source: string): LintConfig;
8112
+ declare function parseConfig$1(text: string, source: string): LintConfig;
8064
8113
  /**
8065
8114
  * Load the config from an explicit path, or by walking up from `cwd`.
8066
8115
  *
@@ -8077,7 +8126,7 @@ declare function parseConfig(text: string, source: string): LintConfig;
8077
8126
  * Returns null when discovery finds no config, which is not an error - a repo
8078
8127
  * whose pages all declare their `type` needs no config at all.
8079
8128
  */
8080
- declare function loadConfig(explicitPath?: string, cwd?: string): Promise<{
8129
+ declare function loadConfig$1(explicitPath?: string, cwd?: string): Promise<{
8081
8130
  config: LintConfig;
8082
8131
  path: string;
8083
8132
  } | null>;
@@ -8371,7 +8420,7 @@ interface LintFileResult extends FileResult {
8371
8420
  /** Why the file was skipped, in words. Set only alongside `skipped`. */
8372
8421
  reason?: string;
8373
8422
  /** How the template was chosen. Present when `--explain` asked for it. */
8374
- resolution?: Resolution;
8423
+ resolution?: Resolution$1;
8375
8424
  /**
8376
8425
  * What the alignment block is rendered from. Present when `--explain` asked
8377
8426
  * for it, and only for a file that routed to a template.
@@ -8731,123 +8780,2346 @@ declare function ruleId(type: string, job?: LintJob): string;
8731
8780
  */
8732
8781
  declare function clearCaches(): void;
8733
8782
 
8734
- type index$1_AdmonitionNode = AdmonitionNode;
8735
- type index$1_AdmonitionsRule = AdmonitionsRule;
8736
- type index$1_AttributesRule = AttributesRule;
8737
- declare const index$1_BLOCK_KINDS: typeof BLOCK_KINDS;
8738
- declare const index$1_BUILTIN_SOURCE: typeof BUILTIN_SOURCE;
8739
- declare const index$1_BUILT_IN_DEFAULTS: typeof BUILT_IN_DEFAULTS;
8740
- type index$1_BlockKind = BlockKind;
8741
- type index$1_BlockRule = BlockRule;
8742
- type index$1_BlockquoteNode = BlockquoteNode;
8743
- type index$1_BuiltinInfo = BuiltinInfo;
8744
- type index$1_CodeBlocksRule = CodeBlocksRule;
8745
- type index$1_CodeNode = CodeNode;
8746
- type index$1_ContentKind = ContentKind;
8747
- type index$1_ContentNode = ContentNode;
8748
- type index$1_ContentNodeBase = ContentNodeBase;
8749
- type index$1_DefinitionItemNode = DefinitionItemNode;
8750
- type index$1_DefinitionListNode = DefinitionListNode;
8751
- type index$1_DocumentParser = DocumentParser;
8752
- type index$1_DocumentTree = DocumentTree;
8753
- type index$1_ElementNode = ElementNode;
8754
- type index$1_ElementsRule = ElementsRule;
8755
- type index$1_FileResult = FileResult;
8756
- type index$1_Finding = Finding;
8757
- type index$1_FormatInfo = FormatInfo;
8758
- type index$1_HeadingRule = HeadingRule;
8759
- type index$1_ImageNode = ImageNode;
8760
- type index$1_ImagesRule = ImagesRule;
8761
- declare const index$1_LINT_JOBS: typeof LINT_JOBS;
8762
- declare const index$1_LINT_TOOLS: typeof LINT_TOOLS;
8763
- type index$1_LintConfig = LintConfig;
8764
- type index$1_LintError = LintError;
8765
- declare const index$1_LintError: typeof LintError;
8766
- type index$1_LintFileResult = LintFileResult;
8767
- type index$1_LintJob = LintJob;
8768
- type index$1_LintJobConfig = LintJobConfig;
8769
- type index$1_LintOptions = LintOptions;
8770
- type index$1_LintRun = LintRun;
8771
- type index$1_LintRunOptions = LintRunOptions;
8772
- type index$1_LintSummary = LintSummary;
8773
- type index$1_LintTool = LintTool;
8774
- type index$1_ListFormat = ListFormat;
8775
- type index$1_ListItemNode = ListItemNode;
8776
- type index$1_ListItemsRule = ListItemsRule;
8777
- type index$1_ListNode = ListNode;
8778
- type index$1_ListsRule = ListsRule;
8779
- type index$1_LoadTemplateOptions = LoadTemplateOptions;
8780
- type index$1_Match = Match;
8781
- type index$1_MatchResult = MatchResult;
8782
- type index$1_Occurrences = Occurrences;
8783
- type index$1_ParagraphNode = ParagraphNode;
8784
- type index$1_ParagraphsRule = ParagraphsRule;
8785
- type index$1_Point = Point;
8786
- type index$1_Position = Position;
8787
- declare const index$1_RULE_ID_PREFIX: typeof RULE_ID_PREFIX;
8788
- type index$1_RefKind = RefKind;
8789
- type index$1_ReportFormat = ReportFormat;
8790
- type index$1_ReportOptions = ReportOptions;
8791
- type index$1_ResolvedLintRun = ResolvedLintRun;
8792
- type index$1_Rule = Rule;
8793
- declare const index$1_STDIN_LABEL: typeof STDIN_LABEL;
8794
- declare const index$1_STDIN_TOKEN: typeof STDIN_TOKEN;
8795
- type index$1_SarifOptions = SarifOptions;
8796
- type index$1_SectionNode = SectionNode;
8797
- type index$1_Severity = Severity;
8798
- type index$1_SkipReason = SkipReason;
8799
- declare const index$1_TOOLS_BY_JOB: typeof TOOLS_BY_JOB;
8800
- declare const index$1_TOOL_NAME: typeof TOOL_NAME;
8801
- type index$1_TableCellNode = TableCellNode;
8802
- type index$1_TableNode = TableNode;
8803
- type index$1_TableRowNode = TableRowNode;
8804
- type index$1_TablesRule = TablesRule;
8805
- type index$1_Template = Template;
8806
- type index$1_TemplateFile = TemplateFile;
8807
- type index$1_TemplateInfo = TemplateInfo;
8808
- type index$1_TemplateResolver = TemplateResolver;
8809
- type index$1_TemplatesInfo = TemplatesInfo;
8810
- type index$1_TemplatesOptions = TemplatesOptions;
8811
- type index$1_ToolInfo = ToolInfo;
8812
- type index$1_ToolsOptions = ToolsOptions;
8813
- declare const index$1_classifyRef: typeof classifyRef;
8814
- declare const index$1_clearCaches: typeof clearCaches;
8815
- declare const index$1_headingMatches: typeof headingMatches;
8816
- declare const index$1_isLintTool: typeof isLintTool;
8817
- declare const index$1_isWildcard: typeof isWildcard;
8818
- declare const index$1_listBuiltins: typeof listBuiltins;
8819
- declare const index$1_listFormats: typeof listFormats;
8783
+ type index$2_AdmonitionNode = AdmonitionNode;
8784
+ type index$2_AdmonitionsRule = AdmonitionsRule;
8785
+ type index$2_AttributesRule = AttributesRule;
8786
+ declare const index$2_BLOCK_KINDS: typeof BLOCK_KINDS;
8787
+ declare const index$2_BUILTIN_SOURCE: typeof BUILTIN_SOURCE;
8788
+ declare const index$2_BUILT_IN_DEFAULTS: typeof BUILT_IN_DEFAULTS;
8789
+ type index$2_BlockKind = BlockKind;
8790
+ type index$2_BlockRule = BlockRule;
8791
+ type index$2_BlockquoteNode = BlockquoteNode;
8792
+ type index$2_BuiltinInfo = BuiltinInfo;
8793
+ type index$2_CodeBlocksRule = CodeBlocksRule;
8794
+ type index$2_CodeNode = CodeNode;
8795
+ type index$2_ContentKind = ContentKind;
8796
+ type index$2_ContentNode = ContentNode;
8797
+ type index$2_ContentNodeBase = ContentNodeBase;
8798
+ type index$2_DefinitionItemNode = DefinitionItemNode;
8799
+ type index$2_DefinitionListNode = DefinitionListNode;
8800
+ type index$2_DocumentParser = DocumentParser;
8801
+ type index$2_DocumentTree = DocumentTree;
8802
+ type index$2_ElementNode = ElementNode;
8803
+ type index$2_ElementsRule = ElementsRule;
8804
+ type index$2_FileResult = FileResult;
8805
+ type index$2_Finding = Finding;
8806
+ type index$2_FormatInfo = FormatInfo;
8807
+ type index$2_HeadingRule = HeadingRule;
8808
+ type index$2_ImageNode = ImageNode;
8809
+ type index$2_ImagesRule = ImagesRule;
8810
+ declare const index$2_LINT_JOBS: typeof LINT_JOBS;
8811
+ declare const index$2_LINT_TOOLS: typeof LINT_TOOLS;
8812
+ type index$2_LintConfig = LintConfig;
8813
+ type index$2_LintError = LintError;
8814
+ declare const index$2_LintError: typeof LintError;
8815
+ type index$2_LintFileResult = LintFileResult;
8816
+ type index$2_LintJob = LintJob;
8817
+ type index$2_LintJobConfig = LintJobConfig;
8818
+ type index$2_LintOptions = LintOptions;
8819
+ type index$2_LintRun = LintRun;
8820
+ type index$2_LintRunOptions = LintRunOptions;
8821
+ type index$2_LintSummary = LintSummary;
8822
+ type index$2_LintTool = LintTool;
8823
+ type index$2_ListFormat = ListFormat;
8824
+ type index$2_ListItemNode = ListItemNode;
8825
+ type index$2_ListItemsRule = ListItemsRule;
8826
+ type index$2_ListNode = ListNode;
8827
+ type index$2_ListsRule = ListsRule;
8828
+ type index$2_LoadTemplateOptions = LoadTemplateOptions;
8829
+ type index$2_Match = Match;
8830
+ type index$2_MatchResult = MatchResult;
8831
+ type index$2_Occurrences = Occurrences;
8832
+ type index$2_ParagraphNode = ParagraphNode;
8833
+ type index$2_ParagraphsRule = ParagraphsRule;
8834
+ type index$2_Point = Point;
8835
+ type index$2_Position = Position;
8836
+ declare const index$2_RULE_ID_PREFIX: typeof RULE_ID_PREFIX;
8837
+ type index$2_RefKind = RefKind;
8838
+ type index$2_ReportFormat = ReportFormat;
8839
+ type index$2_ReportOptions = ReportOptions;
8840
+ type index$2_ResolvedLintRun = ResolvedLintRun;
8841
+ type index$2_Rule = Rule;
8842
+ declare const index$2_STDIN_LABEL: typeof STDIN_LABEL;
8843
+ declare const index$2_STDIN_TOKEN: typeof STDIN_TOKEN;
8844
+ type index$2_SarifOptions = SarifOptions;
8845
+ type index$2_SectionNode = SectionNode;
8846
+ type index$2_Severity = Severity;
8847
+ type index$2_SkipReason = SkipReason;
8848
+ declare const index$2_TOOLS_BY_JOB: typeof TOOLS_BY_JOB;
8849
+ declare const index$2_TOOL_NAME: typeof TOOL_NAME;
8850
+ type index$2_TableCellNode = TableCellNode;
8851
+ type index$2_TableNode = TableNode;
8852
+ type index$2_TableRowNode = TableRowNode;
8853
+ type index$2_TablesRule = TablesRule;
8854
+ type index$2_Template = Template;
8855
+ type index$2_TemplateFile = TemplateFile;
8856
+ type index$2_TemplateInfo = TemplateInfo;
8857
+ type index$2_TemplateResolver = TemplateResolver;
8858
+ type index$2_TemplatesInfo = TemplatesInfo;
8859
+ type index$2_TemplatesOptions = TemplatesOptions;
8860
+ type index$2_ToolInfo = ToolInfo;
8861
+ type index$2_ToolsOptions = ToolsOptions;
8862
+ declare const index$2_classifyRef: typeof classifyRef;
8863
+ declare const index$2_clearCaches: typeof clearCaches;
8864
+ declare const index$2_headingMatches: typeof headingMatches;
8865
+ declare const index$2_isLintTool: typeof isLintTool;
8866
+ declare const index$2_isWildcard: typeof isWildcard;
8867
+ declare const index$2_listBuiltins: typeof listBuiltins;
8868
+ declare const index$2_listFormats: typeof listFormats;
8869
+ declare const index$2_loadTemplate: typeof loadTemplate;
8870
+ declare const index$2_loadTemplateFile: typeof loadTemplateFile;
8871
+ declare const index$2_matchSections: typeof matchSections;
8872
+ declare const index$2_occurrenceRange: typeof occurrenceRange;
8873
+ declare const index$2_palette: typeof palette;
8874
+ declare const index$2_parserByName: typeof parserByName;
8875
+ declare const index$2_parserForExtension: typeof parserForExtension;
8876
+ declare const index$2_rebaseConfig: typeof rebaseConfig;
8877
+ declare const index$2_render: typeof render;
8878
+ declare const index$2_renderGithub: typeof renderGithub;
8879
+ declare const index$2_renderJson: typeof renderJson;
8880
+ declare const index$2_renderJunit: typeof renderJunit;
8881
+ declare const index$2_renderPretty: typeof renderPretty;
8882
+ declare const index$2_renderSarif: typeof renderSarif;
8883
+ declare const index$2_renderTemplates: typeof renderTemplates;
8884
+ declare const index$2_renderTools: typeof renderTools;
8885
+ declare const index$2_resolveExtends: typeof resolveExtends;
8886
+ declare const index$2_resolveLintRun: typeof resolveLintRun;
8887
+ declare const index$2_ruleId: typeof ruleId;
8888
+ declare const index$2_ruleName: typeof ruleName;
8889
+ declare const index$2_runLint: typeof runLint;
8890
+ declare const index$2_runTemplates: typeof runTemplates;
8891
+ declare const index$2_runTools: typeof runTools;
8892
+ declare const index$2_shouldColor: typeof shouldColor;
8893
+ declare const index$2_supportedExtensions: typeof supportedExtensions;
8894
+ declare const index$2_validateDocument: typeof validateDocument;
8895
+ declare const index$2_validateSections: typeof validateSections;
8896
+ declare namespace index$2 {
8897
+ export { type index$2_AdmonitionNode as AdmonitionNode, type index$2_AdmonitionsRule as AdmonitionsRule, type index$2_AttributesRule as AttributesRule, index$2_BLOCK_KINDS as BLOCK_KINDS, index$2_BUILTIN_SOURCE as BUILTIN_SOURCE, index$2_BUILT_IN_DEFAULTS as BUILT_IN_DEFAULTS, type index$2_BlockKind as BlockKind, type index$2_BlockRule as BlockRule, type index$2_BlockquoteNode as BlockquoteNode, type index$2_BuiltinInfo as BuiltinInfo, type index$2_CodeBlocksRule as CodeBlocksRule, type index$2_CodeNode as CodeNode, type index$2_ContentKind as ContentKind, type index$2_ContentNode as ContentNode, type index$2_ContentNodeBase as ContentNodeBase, type index$2_DefinitionItemNode as DefinitionItemNode, type index$2_DefinitionListNode as DefinitionListNode, type index$2_DocumentParser as DocumentParser, type index$2_DocumentTree as DocumentTree, type index$2_ElementNode as ElementNode, type index$2_ElementsRule as ElementsRule, type index$2_FileResult as FileResult, type index$2_Finding as Finding, type index$2_FormatInfo as FormatInfo, type index$2_HeadingRule as HeadingRule, type index$2_ImageNode as ImageNode, type index$2_ImagesRule as ImagesRule, index$2_LINT_JOBS as LINT_JOBS, index$2_LINT_TOOLS as LINT_TOOLS, type index$2_LintConfig as LintConfig, index$2_LintError as LintError, type index$2_LintFileResult as LintFileResult, type index$2_LintJob as LintJob, type index$2_LintJobConfig as LintJobConfig, type index$2_LintOptions as LintOptions, type index$2_LintRun as LintRun, type index$2_LintRunOptions as LintRunOptions, type index$2_LintSummary as LintSummary, type index$2_LintTool as LintTool, type index$2_ListFormat as ListFormat, type index$2_ListItemNode as ListItemNode, type index$2_ListItemsRule as ListItemsRule, type index$2_ListNode as ListNode, type index$2_ListsRule as ListsRule, type index$2_LoadTemplateOptions as LoadTemplateOptions, type index$2_Match as Match, type index$2_MatchResult as MatchResult, type index$2_Occurrences as Occurrences, type index$2_ParagraphNode as ParagraphNode, type index$2_ParagraphsRule as ParagraphsRule, type index$2_Point as Point, type index$2_Position as Position, index$2_RULE_ID_PREFIX as RULE_ID_PREFIX, type index$2_RefKind as RefKind, type index$2_ReportFormat as ReportFormat, type index$2_ReportOptions as ReportOptions, type index$2_ResolvedLintRun as ResolvedLintRun, type index$2_Rule as Rule, index$2_STDIN_LABEL as STDIN_LABEL, index$2_STDIN_TOKEN as STDIN_TOKEN, type index$2_SarifOptions as SarifOptions, type index$2_SectionNode as SectionNode, type index$2_Severity as Severity, type index$2_SkipReason as SkipReason, index$2_TOOLS_BY_JOB as TOOLS_BY_JOB, index$2_TOOL_NAME as TOOL_NAME, type index$2_TableCellNode as TableCellNode, type index$2_TableNode as TableNode, type index$2_TableRowNode as TableRowNode, type index$2_TablesRule as TablesRule, type index$2_Template as Template, type index$2_TemplateFile as TemplateFile, type index$2_TemplateInfo as TemplateInfo, type index$2_TemplateResolver as TemplateResolver, type index$2_TemplatesInfo as TemplatesInfo, type index$2_TemplatesOptions as TemplatesOptions, type index$2_ToolInfo as ToolInfo, type index$2_ToolsOptions as ToolsOptions, index$2_classifyRef as classifyRef, index$2_clearCaches as clearCaches, index$2_headingMatches as headingMatches, index$2_isLintTool as isLintTool, index$2_isWildcard as isWildcard, index$2_listBuiltins as listBuiltins, index$2_listFormats as listFormats, loadConfig$1 as loadConfig, index$2_loadTemplate as loadTemplate, index$2_loadTemplateFile as loadTemplateFile, index$2_matchSections as matchSections, index$2_occurrenceRange as occurrenceRange, index$2_palette as palette, parseConfig$1 as parseConfig, index$2_parserByName as parserByName, index$2_parserForExtension as parserForExtension, index$2_rebaseConfig as rebaseConfig, index$2_render as render, index$2_renderGithub as renderGithub, index$2_renderJson as renderJson, index$2_renderJunit as renderJunit, index$2_renderPretty as renderPretty, index$2_renderSarif as renderSarif, index$2_renderTemplates as renderTemplates, index$2_renderTools as renderTools, index$2_resolveExtends as resolveExtends, index$2_resolveLintRun as resolveLintRun, index$2_ruleId as ruleId, index$2_ruleName as ruleName, index$2_runLint as runLint, index$2_runTemplates as runTemplates, index$2_runTools as runTools, index$2_shouldColor as shouldColor, index$2_supportedExtensions as supportedExtensions, index$2_validateDocument as validateDocument, index$2_validateSections as validateSections };
8898
+ }
8899
+
8900
+ type DeriveSource = "frontmatter" | "sections" | "links" | "tags" | "images" | "code" | "provenance";
8901
+ type FillField = "label" | "alt-labels" | "broader" | "narrower" | "related-concepts" | "concepts" | "type" | "applies-to" | "about-product-lifecycle" | "about-product-aspect" | "not-applicable-to" | "not-about-product-aspect";
8902
+ /** Maps published-site routes back to source files. */
8903
+ interface RouteMapping {
8904
+ /** Site prefix, normalized: leading `/`, no trailing `/`; `""` = site root. */
8905
+ basePath: string;
8906
+ /** Repo-relative directory routes resolve into (no trailing slash). */
8907
+ root: string;
8908
+ /** Extensions to try when the route names a page without one. */
8909
+ extensions: string[];
8910
+ /** Basenames to try for directory routes (`/docs/actions/`). */
8911
+ indexFiles: string[];
8912
+ /**
8913
+ * BCP-47 tag labelling every document under `root` (ADR 01037). A page's own
8914
+ * `lang`/`language` frontmatter wins; absent that, the nearest enclosing
8915
+ * route that declares one applies. Omitted, the route says nothing about
8916
+ * language.
8917
+ */
8918
+ language?: string;
8919
+ }
8920
+ interface GraphConfig {
8921
+ /**
8922
+ * The family's document sets, from the file's top-level `collections:`
8923
+ * (proposal 0041). `[]` when the key is absent or no file governs the run.
8924
+ */
8925
+ collections: CollectionConfig[];
8926
+ /**
8927
+ * The config file as the user would name it, for messages; `null` when no
8928
+ * file governs the run and every value is a built-in default.
8929
+ */
8930
+ configSource: string | null;
8931
+ /**
8932
+ * `graph.provider`, or `null` when unset: the family's `providers.provider`
8933
+ * decides then, and `auto` (detect) after it. `--provider` wins over it and
8934
+ * `--local` overrides both (proposal 0051 §3).
8935
+ */
8936
+ provider: string | null;
8937
+ /**
8938
+ * The model within the provider, or `null` for the provider's own default.
8939
+ * manni pins no model: the inference library chooses, and the model it
8940
+ * resolves to is what every cache key names. Not `embed.model`, which is a
8941
+ * local embedding model id and has nothing to do with a provider.
8942
+ */
8943
+ model: string | null;
8944
+ /**
8945
+ * The family's top-level `providers:`: the provider and model every tool
8946
+ * falls back to, and the connection settings for each provider. `{}` when
8947
+ * the file declares none, or no file governs the run.
8948
+ */
8949
+ providers: ProvidersConfig;
8950
+ /** Normalized base IRI (trailing slash for http(s); `urn:manni:graph:` default). */
8951
+ baseIri: string;
8952
+ /** Output path of the built Turtle file, relative to configDir. */
8953
+ out: string;
8954
+ routes: RouteMapping[];
8955
+ build: {
8956
+ derive: DeriveSource[];
8957
+ };
8958
+ /** Graph-level SHACL validation (`manni graph check`). */
8959
+ check: {
8960
+ /** Shapes .ttl paths; empty = the shapes bundled with manni. */
8961
+ shapes: string[];
8962
+ };
8963
+ provenance: {
8964
+ /**
8965
+ * Emit qualified attribution/association nodes with roles.
8966
+ *
8967
+ * The one provenance setting left. `git` was tri-state until proposal
8968
+ * 0051 §6: git history is *detected* now, used wherever git can run over a
8969
+ * repository and degraded to a warning where it cannot (graph ADR 01010's
8970
+ * `"auto"`, minus the switch). `qualified` stays because it switches what
8971
+ * is written, not what is discovered.
8972
+ */
8973
+ qualified: boolean;
8974
+ };
8975
+ fill: {
8976
+ temperature: number;
8977
+ /**
8978
+ * Stop after this many inference calls; `null` (the default) is
8979
+ * unbounded. One page is one turn, and a cached proposal spends none.
8980
+ * Replaces the dollar cap graph ADR 01027 found unenforceable, as docevals
8981
+ * ADR 01019 replaced its own (proposal 0051 §3).
8982
+ */
8983
+ maxTurns: number | null;
8984
+ cacheDir: string;
8985
+ fields: FillField[];
8986
+ /**
8987
+ * Minimum model self-confidence (0..1) to write a proposed field; below
8988
+ * this it is reported but not written (ADR 01015). Default 0.7. Named as
8989
+ * meta, docevals and tracevals name it (proposal 0051 §3).
8990
+ */
8991
+ confidenceThreshold: number;
8992
+ /** Record the page-level meta-provenance on filled docs (proposal 0046). */
8993
+ writeProvenance: boolean;
8994
+ /** Reject proposals that would violate the SHACL shapes contract. */
8995
+ validateGraph: boolean;
8996
+ /** Also propose per-section metadata (ADR 01032). Opt-in: more output. */
8997
+ sections: boolean;
8998
+ };
8999
+ stats: {
9000
+ /**
9001
+ * Per-field minimum coverage percentages (0–100) enforced under
9002
+ * `stats --check`. Resolved shape is always a map; a uniform number in the
9003
+ * config expands across every measured field. Default `{}` gates nothing.
9004
+ * See ADR 01011.
9005
+ */
9006
+ coverageThreshold: Record<string, number>;
9007
+ };
9008
+ embed: {
9009
+ /**
9010
+ * Embedding model id (ADR 01020). An open string, not an enum: the
9011
+ * documented table is the *tested* set, not the permitted set, so a newer
9012
+ * model works without a manni release.
9013
+ */
9014
+ model: string;
9015
+ /** Weight quantization. `q8` keeps int32 accumulation, which is associative. */
9016
+ dtype: string;
9017
+ /**
9018
+ * Directory the sidecars are written into (ADR 01038). One file per
9019
+ * language, named by `vectorIndexFilename`, so this is a directory rather
9020
+ * than the single path it was before the fan-out. Resolved from the
9021
+ * working directory, as `out` is. Undefined means the index directory,
9022
+ * which is why it has no default here.
9023
+ */
9024
+ out: string | undefined;
9025
+ /**
9026
+ * Per-language model overrides, keyed by BCP-47 tag (ADR 01038). A German
9027
+ * corpus embedded with an English-only model returns confident, meaningless
9028
+ * vectors and fails nothing, so this is the knob that makes the fan-out
9029
+ * worth having. Unset languages use `model`/`dtype`.
9030
+ */
9031
+ byLanguage: Record<string, {
9032
+ model?: string;
9033
+ dtype?: string;
9034
+ }>;
9035
+ /** Per-text vector cache, keyed on text+model+dtype. */
9036
+ cacheDir: string;
9037
+ };
9038
+ export: {
9039
+ /** iiRDS package export metadata (ADR 01017); all fields optional. */
9040
+ iirds: {
9041
+ /** Package title; when absent the exporter uses a default. */
9042
+ title?: string;
9043
+ /** Creator organization name → a Creator iirds:Party + vcard:Organization. */
9044
+ creator?: string;
9045
+ /** iiRDS version literal written to the package. Default "1.3". */
9046
+ version: "1.2" | "1.3";
9047
+ };
9048
+ };
9049
+ /** Absolute path of the loaded config file. */
9050
+ configPath: string;
9051
+ /** Directory containing the config file; relative paths resolve against it. */
9052
+ configDir: string;
9053
+ }
9054
+ /**
9055
+ * Parse and validate config YAML text. A document with a `graph:` key is a family
9056
+ * file, so its top-level `collections:` is read too; anything else is the
9057
+ * tool's section on its own.
9058
+ */
9059
+ declare function parseConfig(text: string, configPath: string): GraphConfig;
9060
+ /**
9061
+ * Load config from an explicit path, or discover the family file from the
9062
+ * working directory upward (`src/shared/config-file.ts`: `manni.config.yaml`
9063
+ * read at its `graph:` key). With no config file present, built-in defaults
9064
+ * apply.
9065
+ */
9066
+ declare function loadConfig(path?: string, cwd?: string): GraphConfig;
9067
+ /**
9068
+ * Every built-in default, with no file behind it: what a run gets when
9069
+ * discovery finds nothing, or under `--no-config`. It declares no collections,
9070
+ * so such a run reads only the paths it was given.
9071
+ */
9072
+ declare function defaultConfig(cwd?: string): GraphConfig;
9073
+ interface RunConfigOptions {
9074
+ /** `-c/--config`. */
9075
+ configPath?: string;
9076
+ /** `--no-config`: skip discovery and run on the built-in defaults. */
9077
+ noConfig?: boolean;
9078
+ /** Positional paths; checked here only for how they combine with `collection`. */
9079
+ paths?: string[];
9080
+ /** `--collection <name>`, repeatable. */
9081
+ collection?: string[];
9082
+ }
9083
+ /**
9084
+ * The config a command runs under. `--collection` names something only a
9085
+ * config can define and selects a set the operator did not type, so pairing it
9086
+ * with paths is refused before discovery, and the message is about the flags
9087
+ * rather than about whatever the walk found.
9088
+ */
9089
+ declare function loadRunConfig(opts: RunConfigOptions, cwd?: string): GraphConfig;
9090
+
9091
+ /** The formats graph parses, as `--as` names them. */
9092
+ declare const DOC_FORMATS: readonly ["markdown", "mdx"];
9093
+ type DocFormat = (typeof DOC_FORMATS)[number];
9094
+ interface AnalyzeOptions {
9095
+ /** Site-route mappings for resolving root-absolute links. */
9096
+ routes?: RouteMapping[];
9097
+ /**
9098
+ * `--as`: parse as this format whatever the path says. Absent, a `.mdx`
9099
+ * path is MDX and anything else is markdown.
9100
+ */
9101
+ format?: DocFormat;
9102
+ }
9103
+ /** Analyze one Markdown file. `allPaths` is the discovered corpus for link resolution. */
9104
+ declare function analyzeDoc(content: string, relPath: string, allPaths: ReadonlySet<string>, options?: AnalyzeOptions): DocModel;
9105
+
9106
+ /** Shared types for manni graph. */
9107
+
9108
+ /** Operational error: expected failure reported to the user, exit code 2. */
9109
+ declare class GraphError extends ToolError {
9110
+ constructor(message: string);
9111
+ }
9112
+ /** A heading-derived section within a document. */
9113
+ interface Section {
9114
+ /** GitHub-style slug, disambiguated (`install`, `install-1`, ...). */
9115
+ slug: string;
9116
+ /** Heading text. */
9117
+ title: string;
9118
+ /** Heading level, 1-6. */
9119
+ level: number;
9120
+ /** 1-based position among siblings under the same parent. */
9121
+ order: number;
9122
+ /** Slug of the enclosing section, or null when the parent is the document. */
9123
+ parentSlug: string | null;
9124
+ }
9125
+ /** A link found in a document body. */
9126
+ interface DocLink {
9127
+ /** The raw target as written in the source. */
9128
+ raw: string;
9129
+ /**
9130
+ * internal: resolves to a discovered doc (repo-relative path in `resolvedPath`,
9131
+ * optional `anchor`);
9132
+ * external: absolute URL;
9133
+ * broken: relative target that does not match a discovered doc.
9134
+ */
9135
+ kind: "internal" | "external" | "broken";
9136
+ /** Repo-relative path of the target doc (internal links only). */
9137
+ resolvedPath?: string;
9138
+ /** Fragment identifier without `#`, when present. */
9139
+ anchor?: string;
9140
+ /** Normalized absolute URL (external links only). */
9141
+ url?: string;
9142
+ }
9143
+ /** An image reference found in a document body. */
9144
+ interface DocImage {
9145
+ raw: string;
9146
+ /** Absolute URL or repo-relative path resolved from the doc's location. */
9147
+ target: string;
9148
+ external: boolean;
9149
+ }
9150
+ /** Everything dockg derives from one source file. */
9151
+ interface DocModel {
9152
+ /** Repo-relative path with forward slashes, e.g. `docs/guide.md`. */
9153
+ path: string;
9154
+ /** Parsed frontmatter data ({} when absent). */
9155
+ frontmatter: Record<string, unknown>;
9156
+ /** Whether a frontmatter block was present. */
9157
+ frontmatterPresent: boolean;
9158
+ /** The format the page was parsed as: `--as`, else its extension. */
9159
+ format: DocFormat;
9160
+ /** First H1 text, if any (used as title fallback). */
9161
+ firstH1?: string;
9162
+ sections: Section[];
9163
+ links: DocLink[];
9164
+ images: DocImage[];
9165
+ /** Distinct fenced code block languages, sorted. */
9166
+ codeLanguages: string[];
9167
+ /**
9168
+ * BCP-47 tag from the nearest enclosing route mapping that declares one
9169
+ * (ADR 01037), or undefined when no route covers this path or none in the
9170
+ * chain declares a language. The page's own `lang`/`language` frontmatter
9171
+ * outranks it.
9172
+ */
9173
+ routeLanguage?: string;
9174
+ /**
9175
+ * Lowercase sha256 hex digest of the document's UTF-8 content, as read —
9176
+ * line endings included, so it matches `sha256sum <file>` (ADR 01036).
9177
+ */
9178
+ contentHash: string;
9179
+ }
9180
+
9181
+ interface CoverageField {
9182
+ /** Config/report key. */
9183
+ field: string;
9184
+ /** Full predicate IRI counted against `graph:Document` subjects. */
9185
+ iri: string;
9186
+ }
9187
+ /**
9188
+ * Report order is this array's order. Only the IRI is stored; the compact form
9189
+ * shown in the report is derived from it with `compactIri`, so there is one
9190
+ * source of truth for the namespace.
9191
+ */
9192
+ declare const COVERAGE_FIELDS: readonly CoverageField[];
9193
+ declare const SECTION_COVERAGE_FIELDS: readonly CoverageField[];
9194
+ /** The measured field names, in report order. */
9195
+ declare const COVERAGE_FIELD_NAMES: readonly string[];
9196
+
9197
+ declare function discoverFiles(inputs: string[], exclude: string[], cwd: string): string[];
9198
+ /** The word the empty-input message uses for what the command would do. */
9199
+ type DocumentVerb = "build" | "fill";
9200
+ interface DocumentSetOptions {
9201
+ /**
9202
+ * Positional paths: files, directories and globs, relative to the working
9203
+ * directory. Empty or absent means the selected collections' `paths:`.
9204
+ */
9205
+ paths?: string[];
9206
+ /**
9207
+ * `--collection <name>`, repeatable. Empty or absent means every declared
9208
+ * collection, because commander's collector hands `[]` over when the flag
9209
+ * was never typed (see `selectCollections`).
9210
+ */
9211
+ collection?: string[];
9212
+ /** `--exclude <glob>`, repeatable. Applies to paths and collections alike. */
9213
+ exclude?: string[];
9214
+ /**
9215
+ * `--ext <list>`: what a directory walk or a glob keeps. Absent means
9216
+ * `.md,.mdx,.markdown`. A file named outright is never filtered by it.
9217
+ */
9218
+ ext?: string[];
9219
+ /** `--as <format>`: parse every input as this format. Required with `-`. */
9220
+ as?: string;
9221
+ }
9222
+ /**
9223
+ * The document-set options every command that reads documents takes beside its
9224
+ * positional paths: `-c`, `--no-config`, `--collection` and `--exclude`.
9225
+ */
9226
+ interface DocumentInputOptions extends DocumentSetOptions {
9227
+ /** `-c/--config`. */
9228
+ config?: string;
9229
+ /** `--no-config`: skip discovery and run on the built-in defaults. */
9230
+ noConfig?: boolean;
9231
+ }
9232
+ /**
9233
+ * The documents a run covers. Positional `paths` are what the operator typed,
9234
+ * resolved from `cwd`. Without them the run reads the selected collections,
9235
+ * each collection's `paths:` resolved from the config file's directory and
9236
+ * narrowed by its own `exclude:`. The family-wide exclusions and `--exclude`
9237
+ * apply to both. Labels are relative to `base`, which `documentBase` picks
9238
+ * the way `manni meta validate` does, so a collection page's IRI does not
9239
+ * depend on where the run started.
9240
+ *
9241
+ * `-` is not a file, so it is left out of what this returns: the caller reads
9242
+ * stdin itself. It still counts as a positional path, so a run given only `-`
9243
+ * reads stdin alone and never falls back to the collections.
9244
+ */
9245
+ declare function resolveDocumentSet(config: GraphConfig, options?: DocumentSetOptions, verb?: DocumentVerb, cwd?: string, base?: string): string[];
9246
+
9247
+ /**
9248
+ * Negative-scope predicates (ADR 01014). Minted into `graph:` — no standard
9249
+ * term exists, and OWL negative property assertions require blank nodes. Each
9250
+ * mirrors, and is SHACL-disjoint from, its positive counterpart above.
9251
+ */
9252
+ declare const GRAPH_NOT_APPLICABLE_TO_VARIANT: string;
9253
+ declare const GRAPH_NOT_SOFTWARE_SUBJECT: string;
9254
+ /** `graph.type` value → `iirds:has-topic-type` object IRI. */
9255
+ declare const TOPIC_TYPE_IRIS: Readonly<Record<string, string>>;
9256
+ /**
9257
+ * `graph.about-product-lifecycle` value → `iirds:relates-to-product-lifecycle-phase`
9258
+ * object IRI (Software domain: iirds:Use/PuttingToUse/AfterUse instances).
9259
+ */
9260
+ declare const SOFTWARE_LIFECYCLE_IRIS: Readonly<Record<string, string>>;
9261
+ /**
9262
+ * `graph.about-product-aspect` value → `iirds:has-subject` object IRI (Software domain:
9263
+ * iirds:TechnicalOverview/TechnicalData instances).
9264
+ */
9265
+ declare const SOFTWARE_SUBJECT_IRIS: Readonly<Record<string, string>>;
9266
+
9267
+ /** Normalize a config base IRI; http(s) bases get a trailing slash. */
9268
+ declare function resolveBaseIri(base: string | undefined): string;
9269
+ /** Repo-relative path with forward slashes and no leading `./`. */
9270
+ declare function normalizeDocPath(p: string): string;
9271
+ /** RFC 3986 strict percent-encoding of one path segment (UTF-8 for non-ASCII). */
9272
+ declare function encodeSegment(segment: string): string;
9273
+ /**
9274
+ * `{base}doc/{repo-relative-path}`, segment-wise percent-encoded. A document
9275
+ * read from stdin is `{base}stdin`.
9276
+ */
9277
+ declare function mintDocIri(base: string, relPath: string): string;
9278
+ /** `{docIri}#{slug}` — the slug comes pre-disambiguated from analysis. */
9279
+ declare function mintSectionIri(docIri: string, slugValue: string): string;
9280
+ /** Stateless GitHub-style slug; identical labels always converge. */
9281
+ declare function conceptSlug(label: string): string;
9282
+ /** `{base}concept/{slug(label)}` — one shared namespace for all concepts. */
9283
+ declare function mintConceptIri(base: string, label: string): string;
9284
+ /**
9285
+ * `{base}product/{slug(label)}` — iiRDS ProductVariant nodes (graph.applies-to).
9286
+ * Separate `product/` segment so a product and a concept sharing a label
9287
+ * cannot converge on one IRI.
9288
+ */
9289
+ declare function mintProductIri(base: string, label: string): string;
9290
+ /** The single skos:ConceptScheme node for the graph. */
9291
+ declare function mintSchemeIri(base: string): string;
9292
+ /**
9293
+ * The kind of actor an agent IRI names, mirroring PROV-O's three
9294
+ * `prov:Agent` subclasses. Segmenting by kind keeps a person and a model
9295
+ * whose names slug alike ("GPT 4" / "gpt-4") from merging into one node.
9296
+ */
9297
+ type AgentKind = "person" | "org" | "software";
9298
+ /** `{base}agent/{kind}/{slug(name)}`. */
9299
+ declare function mintAgentIri(base: string, kind: AgentKind, name: string): string;
9300
+ /** The graph itself as a prov:Entity. */
9301
+ declare function mintGraphIri(base: string): string;
9302
+ /** The build run as a prov:Activity. */
9303
+ declare function mintBuildActivityIri(base: string): string;
9304
+
9305
+ interface GitFileHistory {
9306
+ /** Committer ISO date of the oldest commit touching the file (or its earlier names). */
9307
+ created?: string;
9308
+ /** Committer ISO date of the newest commit touching it. */
9309
+ modified?: string;
9310
+ /** Unique author names, newest contribution first. */
9311
+ authors: string[];
9312
+ /** Earlier paths of this file, nearest rename first (git -M heuristic; best-effort). */
9313
+ renamedFrom: string[];
9314
+ }
9315
+ interface GitHistory {
9316
+ /** HEAD committer ISO date — stamps the build activity's prov:endedAtTime. */
9317
+ headTime?: string;
9318
+ files: Map<string, GitFileHistory>;
9319
+ }
9320
+ declare function collectGitHistory(cwd: string, exec?: ExecFn): Promise<GitHistory>;
9321
+
9322
+ /**
9323
+ * Graph derivation: DocModel[] → deduplicated Quad[]. This file is the
9324
+ * vocabulary mapping — the deterministic rules for what documentation
9325
+ * structure becomes which triples.
9326
+ */
9327
+
9328
+ type Term = {
9329
+ kind: "iri";
9330
+ value: string;
9331
+ } | {
9332
+ kind: "literal";
9333
+ value: string;
9334
+ datatype?: string;
9335
+ };
9336
+ interface Quad {
9337
+ s: string;
9338
+ p: string;
9339
+ o: Term;
9340
+ }
9341
+ interface DeriveOptions {
9342
+ baseIri: string;
9343
+ derive: DeriveSource[];
9344
+ /** dockg's own version, stamped on the build agent (provenance source). */
9345
+ toolVersion?: string;
9346
+ /** Per-file git history; set only under `provenance.git`. */
9347
+ gitHistory?: GitHistory;
9348
+ /** Emit qualified attribution/association nodes (`provenance.qualified`). */
9349
+ qualified?: boolean;
9350
+ }
9351
+ declare function deriveGraph(docs: DocModel[], options: DeriveOptions): Quad[];
9352
+
9353
+ /**
9354
+ * Deterministic Turtle serialization — the git-diff contract. Canonical form:
9355
+ * fixed sorted prefix header; subjects sorted by full IRI; within a subject,
9356
+ * rdf:type first (as `a`), then predicates sorted by full IRI; objects sorted
9357
+ * (IRIs before literals, each lexicographic); LF line endings, UTF-8, exactly
9358
+ * one trailing newline. Byte-identical output for any input quad order.
9359
+ *
9360
+ * Deliberately not N3.Writer: its formatting is incidental library behavior.
9361
+ * Correctness of escaping is guarded by a round-trip test through n3's parser.
9362
+ */
9363
+
9364
+ declare function emitTurtle(quads: Quad[]): string;
9365
+
9366
+ declare function emitJsonLd(quads: Quad[]): string;
9367
+
9368
+ /**
9369
+ * Deterministic RDF/XML serialization — the metadata half of the iiRDS package
9370
+ * export (ADR 01017). RDF/XML is what `META-INF/metadata.rdf` must be (the iiRDS
9371
+ * container rule; Turtle/JSON-LD are not accepted there). Hand-rolled like the
9372
+ * Turtle/JSON-LD emitters ([emit.ts], [emit-jsonld.ts]) so the bytes are a
9373
+ * stability contract.
9374
+ *
9375
+ * Canonical form: an XML declaration, then `<rdf:RDF>` with namespace
9376
+ * declarations in sorted prefix order, then one `<rdf:Description>` per subject
9377
+ * sorted by IRI. Within a subject, predicates are sorted; each object is an
9378
+ * `rdf:resource` (IRI) or escaped element text (literal, with `rdf:datatype`
9379
+ * when typed). No blank nodes. Byte-identical for any input quad order.
9380
+ *
9381
+ * The prefix table is passed in (not the global `PREFIXES`) so the package can
9382
+ * declare `vcard` without touching the main graph's Turtle/JSON-LD headers.
9383
+ */
9384
+
9385
+ declare function emitRdfXml(quads: Quad[], prefixes: Record<string, string>): string;
9386
+
9387
+ interface ZipEntry {
9388
+ /** In-archive path (forward slashes). */
9389
+ name: string;
9390
+ data: Buffer;
9391
+ /** Store uncompressed. Required for the leading `mimetype` entry. */
9392
+ store?: boolean;
9393
+ }
9394
+ declare function writeZip(entries: ZipEntry[]): Buffer;
9395
+
9396
+ interface IirdsPackageOptions {
9397
+ baseIri: string;
9398
+ version: string;
9399
+ title?: string;
9400
+ creator?: string;
9401
+ }
9402
+ interface ContentFile {
9403
+ /** In-archive path (matches the Rendition's iirds:source). */
9404
+ zipPath: string;
9405
+ /** Absolute path of the source file on disk. */
9406
+ absPath: string;
9407
+ }
9408
+ interface PackageProjection {
9409
+ quads: Quad[];
9410
+ prefixes: Record<string, string>;
9411
+ contentFiles: ContentFile[];
9412
+ warnings: string[];
9413
+ }
9414
+ declare function projectPackage(store: Store, opts: IirdsPackageOptions, cwd: string): PackageProjection;
9415
+
9416
+ declare function loadGraph(ttlPath: string): Store;
9417
+ /**
9418
+ * Convert an in-memory N3 store back to dockg's internal quad shape — the
9419
+ * bridge from the Turtle-reading Node side to the platform-neutral emitters and
9420
+ * runtime. A redundant `xsd:string` datatype is dropped so the result matches
9421
+ * what the JSON-LD path produces.
9422
+ */
9423
+ declare function storeToQuads(store: Store): Quad[];
9424
+ /** Expand `dcterms:references`-style prefixed names to full IRIs; pass through the rest. */
9425
+ declare function expandTerm(input: string): string;
9426
+ /** Compact a full IRI back to a prefixed name when a known namespace matches. */
9427
+ declare function compactIri(iri: string): string;
9428
+
9429
+ /**
9430
+ * `GraphIndex` — the browser-native in-memory graph (ADR 01018).
9431
+ *
9432
+ * Built from `graph.jsonld` (the Phase 6 export) with **no RDF parser**: that
9433
+ * artifact is plain `JSON.parse`-able, deterministically sorted, and free of
9434
+ * blank nodes, so a `Map`-based adjacency index is all the runtime needs. Node
9435
+ * callers can also build from quads (`fromQuads`) so the CLI can read Turtle.
9436
+ *
9437
+ * Platform-neutral: no `node:` imports, no npm dependencies, no I/O — the
9438
+ * caller supplies the bytes. Type-only imports are erased at build time.
9439
+ *
9440
+ * Every accessor returns deterministically sorted results, so traversal order
9441
+ * (and therefore the trace) is byte-stable for a given graph.
9442
+ */
9443
+
9444
+ /** An object value: an IRI reference or a literal. */
9445
+ type Value = {
9446
+ kind: "iri";
9447
+ value: string;
9448
+ } | {
9449
+ kind: "literal";
9450
+ value: string;
9451
+ datatype?: string;
9452
+ };
9453
+ interface GraphNode {
9454
+ id: string;
9455
+ /** Full class IRIs, sorted. */
9456
+ types: string[];
9457
+ /** Full predicate IRI → values, in insertion-normalized sorted order. */
9458
+ props: Map<string, Value[]>;
9459
+ }
9460
+ declare class GraphIndex {
9461
+ private readonly nodes;
9462
+ /** subject → predicate → object IRIs (sorted). */
9463
+ private readonly outbound;
9464
+ /** object → predicate → subject IRIs (sorted). */
9465
+ private readonly inbound;
9466
+ /** class IRI → instance IRIs (sorted). */
9467
+ private readonly byType;
9468
+ /** prefix → namespace, from the artifact's own `@context`. */
9469
+ readonly context: Record<string, string>;
9470
+ private constructor();
9471
+ /**
9472
+ * Build from a `graph.jsonld` document — a JSON string or the parsed object.
9473
+ * CURIE keys and `@type` values are expanded using the document's own
9474
+ * `@context`, so the index is self-describing.
9475
+ */
9476
+ static fromJsonLd(input: string | object): GraphIndex;
9477
+ /** Build from dockg's internal quad shape (the Node/CLI path). */
9478
+ static fromQuads(quads: Quad[], context?: Record<string, string>): GraphIndex;
9479
+ /** Expand a CURIE (`dcterms:title`) to a full IRI using `@context`. */
9480
+ expand(term: string): string;
9481
+ /** Compact a full IRI to a CURIE when a context namespace matches. */
9482
+ compact(iri: string): string;
9483
+ private addJsonLdNode;
9484
+ private toValue;
9485
+ private ensureNode;
9486
+ private addTriple;
9487
+ /** Sort every collection so traversal order is deterministic. */
9488
+ private finalize;
9489
+ /** Every node IRI, sorted. */
9490
+ ids(): string[];
9491
+ size(): number;
9492
+ node(iri: string): GraphNode | undefined;
9493
+ has(iri: string): boolean;
9494
+ /** Class IRIs of a node, sorted. */
9495
+ types(iri: string): string[];
9496
+ /** Instances of a class, sorted. */
9497
+ instancesOf(classIri: string): string[];
9498
+ /** All values for a predicate, sorted. */
9499
+ values(iri: string, predicate: string): Value[];
9500
+ /** Literal lexical forms for a predicate, sorted. */
9501
+ literals(iri: string, predicate: string): string[];
9502
+ /** The first literal for a predicate, if any. */
9503
+ literal(iri: string, predicate: string): string | undefined;
9504
+ /** Outbound IRI targets: all predicates, or one. Sorted. */
9505
+ out(iri: string, predicate?: string): Array<{
9506
+ predicate: string;
9507
+ target: string;
9508
+ }>;
9509
+ /** Inbound IRI sources (who points at this node). Sorted. */
9510
+ in(iri: string, predicate?: string): Array<{
9511
+ predicate: string;
9512
+ target: string;
9513
+ }>;
9514
+ }
9515
+
9516
+ /**
9517
+ * Query trace — the explainability contract (ADR 01018). Every runtime stage
9518
+ * appends to a trace, and no API returns results without one: retrieval
9519
+ * provenance is part of the contract exactly as PROV provenance is part of the
9520
+ * build. The trace answers "how and why did this result come back": which nodes
9521
+ * were seeded, every hop walked, every node scope excluded (and by which rule),
9522
+ * and every content resolution attempted.
9523
+ *
9524
+ * Events are appended in traversal order, which is itself deterministic, so the
9525
+ * trace is byte-stable for a given graph + query.
9526
+ */
9527
+ /** How a seed was found. `hybrid` means several legs agreed on it. */
9528
+ type EntryVia = "explicit" | "lexical" | "vector" | "hybrid";
9529
+ /** A starting node, with the score/reason that made it a seed. */
9530
+ interface EntryCandidate {
9531
+ iri: string;
9532
+ /**
9533
+ * Relevance score: 1 for an explicitly requested seed, otherwise the fused
9534
+ * `rrfMerge` score. Note that fusion is **rank**-based, so a searched seed's
9535
+ * score reflects its position (1/(60 + rank)), not the engine's relevance —
9536
+ * it orders candidates but is not a magnitude to threshold on.
9537
+ */
9538
+ score: number;
9539
+ via: EntryVia;
9540
+ }
9541
+ /** One edge walked, in either direction. */
9542
+ interface Hop {
9543
+ from: string;
9544
+ predicate: string;
9545
+ to: string;
9546
+ /** Hops from the nearest seed (seeds are depth 0; their neighbors are 1). */
9547
+ depth: number;
9548
+ direction: "out" | "in";
9549
+ }
9550
+ /** A node the scope filter removed, and why. */
9551
+ interface ScopeExclusion {
9552
+ node: string;
9553
+ /**
9554
+ * The predicate that disqualified the node: a `graph:not*` IRI when an
9555
+ * explicit negative named the target, or the positive predicate (e.g.
9556
+ * `iirds:relates-to-product-variant`) when the node declared a scope set that
9557
+ * omits the target.
9558
+ */
9559
+ rule: string;
9560
+ /**
9561
+ * The filter target being applied — the variant or subject IRI the query
9562
+ * asked for. Under a `graph:not*` rule the node named this explicitly; under
9563
+ * a positive rule this is what the node's declared set was missing.
9564
+ */
9565
+ value: string;
9566
+ }
9567
+ /** One content-resolution attempt. */
9568
+ interface Resolution {
9569
+ iri: string;
9570
+ sourceUrl: string;
9571
+ ok: boolean;
9572
+ /** Present when `ok` is false. */
9573
+ error?: string;
9574
+ }
9575
+ interface QueryTrace {
9576
+ entry: EntryCandidate[];
9577
+ hops: Hop[];
9578
+ exclusions: ScopeExclusion[];
9579
+ resolutions: Resolution[];
9580
+ }
9581
+ declare function createTrace(): QueryTrace;
9582
+ /**
9583
+ * Every node named anywhere in the trace as reached — seeds plus hop targets.
9584
+ * The trace-completeness contract: a traversal's results must be a subset of
9585
+ * this, so every returned node is explainable by recorded events.
9586
+ */
9587
+ declare function reachedNodes(trace: QueryTrace): Set<string>;
9588
+
9589
+ type Direction = "out" | "in" | "both";
9590
+ interface ScopeFilter {
9591
+ /** Product variant: an IRI, a `dcterms:title` (e.g. "SP-X100"), or a slug. */
9592
+ variant?: string;
9593
+ /** Software subject: an IRI or a `graph.about-product-aspect` value (e.g. "architecture"). */
9594
+ subject?: string;
9595
+ /**
9596
+ * BCP-47 tag (ADR 01037). Matched against `dcterms:language` after both are
9597
+ * canonicalized, since tags are case-insensitive. There is no fallback:
9598
+ * `de-AT` is not `de`, because relatedness between locales is an inference
9599
+ * and this runtime does not infer.
9600
+ */
9601
+ language?: string;
9602
+ }
9603
+ interface TraverseOptions$1 extends ScopeFilter {
9604
+ /** Starting nodes (IRIs). */
9605
+ seeds: string[];
9606
+ /** Maximum hops from a seed. Default 1. */
9607
+ depth?: number;
9608
+ /** Restrict to these predicates (full IRIs). Default: every predicate. */
9609
+ predicates?: string[];
9610
+ /** Which edge directions to follow. Default "out". */
9611
+ direction?: Direction;
9612
+ /** Stop after this many nodes (seeds included). */
9613
+ limit?: number;
9614
+ /**
9615
+ * Follow `rdf:type` edges into class nodes. Default false, deliberately:
9616
+ * class nodes are schema, not content, and every document shares them — so
9617
+ * traversing them makes every document reachable from every other in two
9618
+ * hops (`a → graph:Document → b`). That is exactly the edge contamination
9619
+ * graph-governed retrieval exists to avoid. A `predicates` list that names
9620
+ * `rdf:type` follows them too, because it asked for them by name.
9621
+ */
9622
+ includeTypeEdges?: boolean;
9623
+ /** Append to an existing trace instead of starting a new one. */
9624
+ trace?: QueryTrace;
9625
+ }
9626
+ interface TraversedNode {
9627
+ iri: string;
9628
+ /** Hops from the nearest seed; seeds are 0. */
9629
+ depth: number;
9630
+ }
9631
+ interface TraverseResult {
9632
+ nodes: TraversedNode[];
9633
+ trace: QueryTrace;
9634
+ }
9635
+ /**
9636
+ * Resolve a variant input to its IRI: an exact node IRI, a `dcterms:title`
9637
+ * match on an `iirds:ProductVariant`, or a trailing-segment slug match.
9638
+ */
9639
+ declare function resolveVariant(graph: GraphIndex, input: string): string | undefined;
9640
+ /** Resolve a software-subject input to its iiRDS IRI. */
9641
+ declare function resolveSubject(graph: GraphIndex, input: string): string | undefined;
9642
+ /**
9643
+ * Decide whether a node survives the scope filter, and if not, why.
9644
+ *
9645
+ * Rules, in the spirit of ADR 01014 (absence of a positive claim is not a
9646
+ * negative claim, so both polarities are explicit):
9647
+ * - An explicit negative (`graph:notApplicableToVariant` /
9648
+ * `graph:notSoftwareSubject`) naming the target **excludes** the node.
9649
+ * - A node that declares a positive set which omits the target is **excluded**
9650
+ * — it scoped itself elsewhere — recorded under the positive predicate so
9651
+ * the trace distinguishes this from an explicit negative.
9652
+ * - A node that makes no claim is **kept**: unscoped content applies broadly.
9653
+ */
9654
+ declare function scopeExclusion(graph: GraphIndex, iri: string, scope: {
9655
+ variantIri?: string;
9656
+ subjectIri?: string;
9657
+ language?: string;
9658
+ }): ScopeExclusion | undefined;
9659
+ /** Breadth-first traversal with scope filtering and full trace recording. */
9660
+ declare function traverse(graph: GraphIndex, options: TraverseOptions$1): TraverseResult;
9661
+ /** Who links to this node (one hop inbound over `dcterms:references`). */
9662
+ declare function reverseReferences(graph: GraphIndex, iri: string, options?: Omit<TraverseOptions$1, "seeds" | "direction" | "predicates">): TraverseResult;
9663
+ /**
9664
+ * Transitive inbound reach — "what is affected if this node changes".
9665
+ * Excludes the node itself from the returned set. Defaults to depth 3 rather
9666
+ * than the walker's 1, because impact analysis is only useful transitively.
9667
+ */
9668
+ declare function impact(graph: GraphIndex, iri: string, options?: Omit<TraverseOptions$1, "seeds" | "direction">): TraverseResult;
9669
+
9670
+ interface ResolvedContent {
9671
+ iri: string;
9672
+ text: string;
9673
+ sourceUrl: string;
9674
+ title?: string;
9675
+ }
9676
+ interface ContentResolver {
9677
+ /** Text for a node, or undefined when the node has no content. */
9678
+ resolve(iri: string): Promise<ResolvedContent | undefined>;
9679
+ }
9680
+ type FetchLike = (url: string) => Promise<{
9681
+ ok: boolean;
9682
+ status: number;
9683
+ text(): Promise<string>;
9684
+ }>;
9685
+ interface FetchResolverOptions {
9686
+ /** Prefix joined to each `graph:path`, e.g. "https://site/raw/". */
9687
+ baseUrl?: string;
9688
+ /** Full control over path → URL. Overrides `baseUrl`. */
9689
+ pathToUrl?: (path: string) => string;
9690
+ /** Injectable fetch (defaults to the global). */
9691
+ fetch?: FetchLike;
9692
+ /** Record resolutions here. */
9693
+ trace?: QueryTrace;
9694
+ }
9695
+ /** Split a section IRI into its document IRI and fragment. */
9696
+ declare function splitFragment(iri: string): {
9697
+ doc: string;
9698
+ fragment?: string;
9699
+ };
9700
+ /**
9701
+ * Sections of a document in true document order, reconstructed from the
9702
+ * `dcterms:hasPart` tree ordered by `graph:order` within each parent.
9703
+ *
9704
+ * Needed because heading text is not unique: a document with two `## Install`
9705
+ * headings produces two section nodes, and matching by title alone would give
9706
+ * both the *first* heading's text — wrong content under a confident citation.
9707
+ */
9708
+ declare function documentSectionOrder(graph: GraphIndex, docIri: string): string[];
9709
+ /**
9710
+ * Occurrence number of every section of a document, in one walk: section IRI →
9711
+ * how many earlier sections share its heading text and level.
9712
+ *
9713
+ * Batched because the per-section form is quadratic — a document with N
9714
+ * sections would otherwise rebuild the whole `hasPart` order N times, once per
9715
+ * section indexed or resolved.
9716
+ */
9717
+ declare function sectionOccurrences(graph: GraphIndex, docIri: string): Map<string, number>;
9718
+ /**
9719
+ * Which occurrence of its heading text a section is (0-based) — the number of
9720
+ * earlier same-title, same-level sections in the same document. A section the
9721
+ * `hasPart` tree does not reach counts as the first (0).
9722
+ */
9723
+ declare function sectionOccurrence(graph: GraphIndex, sectionIri: string): number;
9724
+ /**
9725
+ * The prose before a document's first heading — the text that belongs to no
9726
+ * section, and so would otherwise be indexed nowhere in a document that has
9727
+ * sections.
9728
+ *
9729
+ * Fence-aware for the same reason `sliceSection` is: a `#` comment inside a
9730
+ * leading code block is not a heading, and treating it as one would cut the
9731
+ * preamble short. Frontmatter is *not* stripped here — the caller decides,
9732
+ * since only the search index cares about that.
9733
+ */
9734
+ declare function documentPreamble(markdown: string): string | undefined;
9735
+ /**
9736
+ * Slice a markdown document at the heading whose text matches `title`,
9737
+ * returning that heading through to the next heading of the same or higher
9738
+ * rank. Returns undefined when no such heading exists. Handles CRLF, and
9739
+ * ignores `#` lines inside fenced code blocks.
9740
+ *
9741
+ * `occurrence` selects among repeated headings (0 = the first). Heading text is
9742
+ * not unique, so callers with a specific section node in hand should pass
9743
+ * `sectionOccurrence(graph, iri)` rather than defaulting to the first match.
9744
+ */
9745
+ declare function sliceSection(markdown: string, title: string, level?: number, occurrence?: number): string | undefined;
9746
+ /**
9747
+ * The text a section *owns*: its heading down to the next heading of **any**
9748
+ * rank, so nested subsections are excluded.
9749
+ *
9750
+ * `sliceSection` keeps the subtree because that is what retrieval wants — ask
9751
+ * for "Configuration" and you should get its subsections too. Indexing wants
9752
+ * the opposite: with the subtree, a parent section matches everything its
9753
+ * children match and outranks them, so an H1 section shadows every heading
9754
+ * beneath it. Same granularity rule as Document vs Section, one level down.
9755
+ */
9756
+ declare function sectionOwnText(markdown: string, title: string, level?: number, occurrence?: number): string | undefined;
9757
+ /**
9758
+ * A resolver that fetches document sources over HTTP. Documents map through
9759
+ * `graph:path`; sections slice their parent document by heading.
9760
+ */
9761
+ declare function createFetchResolver(graph: GraphIndex, options?: FetchResolverOptions): ContentResolver;
9762
+
9763
+ /**
9764
+ * Context assembly (ADR 01018) — the runtime's terminal stage.
9765
+ *
9766
+ * Turns traversed nodes into the bundle an inference engine consumes:
9767
+ * `{ context, citations, trace, refusal? }`. **dockg stops here**: it never
9768
+ * calls a model. A different tool (an agent over MCP, a site backend) takes the
9769
+ * bundle onward, which keeps this runtime fully deterministic and keeps API
9770
+ * keys and inference cost outside dockg entirely.
9771
+ *
9772
+ * When nothing survives retrieval the result is a *structured refusal*, never
9773
+ * empty context — a caller must be able to tell "no route exists" apart from
9774
+ * "here is nothing, proceed anyway" (the disciplined-silence contract).
9775
+ *
9776
+ * Platform-neutral: no `node:` imports, no npm dependencies.
9777
+ */
9778
+
9779
+ interface ContextBlock {
9780
+ iri: string;
9781
+ title?: string;
9782
+ text: string;
9783
+ sourceUrl: string;
9784
+ /** Hops from the nearest seed — the relevance signal, carried through. */
9785
+ depth: number;
9786
+ }
9787
+ interface Citation {
9788
+ iri: string;
9789
+ title?: string;
9790
+ sourceUrl: string;
9791
+ }
9792
+ type RefusalReason = "no-route" | "no-content";
9793
+ interface Refusal {
9794
+ reason: RefusalReason;
9795
+ detail: string;
9796
+ }
9797
+ /**
9798
+ * The rankings that produced the seeds, carried through to the caller.
9799
+ *
9800
+ * Retrieval answers two different questions — "what matched the query?" and
9801
+ * "what is the graph connected to it?" — and a consumer needs both. Returning
9802
+ * only the graph result would make the match rankings inferrable solely from the
9803
+ * trace, which is diagnostic rather than a result surface (ADR 01020).
9804
+ */
9805
+ interface EntryRankings {
9806
+ /** The lexical leg's own ranking. */
9807
+ lexical: EntryCandidate[];
9808
+ /** The vector leg's own ranking; empty when no embedder was in play. */
9809
+ vector: EntryCandidate[];
9810
+ /** The fused ranking that actually seeded traversal. */
9811
+ merged: EntryCandidate[];
9812
+ }
9813
+ interface RetrievalBundle {
9814
+ /** What matched the query, per leg. Absent when seeds were given explicitly. */
9815
+ entry?: EntryRankings;
9816
+ context: ContextBlock[];
9817
+ citations: Citation[];
9818
+ trace: QueryTrace;
9819
+ /** Present when retrieval found nothing usable. `context` is then empty. */
9820
+ refusal?: Refusal;
9821
+ /** True when the character budget dropped otherwise-eligible blocks. */
9822
+ truncated: boolean;
9823
+ }
9824
+ interface AssembleOptions {
9825
+ /** Character budget across all blocks. Default: unbounded. */
9826
+ maxChars?: number;
9827
+ /** Append to an existing trace (normally the traversal's). */
9828
+ trace?: QueryTrace;
9829
+ /**
9830
+ * The entry rankings that produced these nodes, passed through to the bundle
9831
+ * so callers see matches and graph results side by side.
9832
+ */
9833
+ entry?: EntryRankings;
9834
+ }
9835
+ /**
9836
+ * Resolve traversed nodes to text and assemble the retrieval bundle. Nodes are
9837
+ * kept in traversal order (nearest-first), which is deterministic, and every
9838
+ * block carries the IRI it came from so citations are structural, not inferred.
9839
+ */
9840
+ declare function assemble(resolver: ContentResolver, nodes: TraversedNode[], options?: AssembleOptions): Promise<RetrievalBundle>;
9841
+
9842
+ interface RdfTerm {
9843
+ termType: "NamedNode" | "Literal" | "DefaultGraph";
9844
+ value: string;
9845
+ language?: string;
9846
+ datatype?: RdfTerm;
9847
+ equals(other?: RdfTerm | null): boolean;
9848
+ }
9849
+ interface RdfQuad {
9850
+ termType: "Quad";
9851
+ subject: RdfTerm;
9852
+ predicate: RdfTerm;
9853
+ object: RdfTerm;
9854
+ graph: RdfTerm;
9855
+ equals(other?: RdfQuad | null): boolean;
9856
+ }
9857
+ declare function namedNode(value: string): RdfTerm;
9858
+ declare function defaultGraph(): RdfTerm;
9859
+ declare function literal(value: string, datatype?: string): RdfTerm;
9860
+ /**
9861
+ * The whole index as RDF/JS quads, in the index's deterministic order. Feed to
9862
+ * any RDF/JS store (`new Store(rdfjsQuads(graph))`) to run SPARQL.
9863
+ */
9864
+ declare function rdfjsQuads(graph: GraphIndex): RdfQuad[];
9865
+ /**
9866
+ * Triple-pattern match returning RDF/JS quads. A null/undefined position is a
9867
+ * wildcard. Convenience for callers who want RDF/JS terms without pulling in a
9868
+ * store; the walker API is the richer (and traced) way to query.
9869
+ */
9870
+ declare function matchQuads(graph: GraphIndex, subject?: string | null, predicate?: string | null, object?: string | null): RdfQuad[];
9871
+
9872
+ /** One indexable node. Empty fields are omitted so the artifact stays tight. */
9873
+ interface SearchEntry {
9874
+ /** Node IRI. */
9875
+ id: string;
9876
+ /** Compacted class IRI, e.g. `graph:Section`. */
9877
+ type: string;
9878
+ title?: string;
9879
+ /** Space-joined alternative labels, deduped case-insensitively. */
9880
+ labels?: string;
9881
+ description?: string;
9882
+ /** Body text, per the granularity rule. */
9883
+ text?: string;
9884
+ }
9885
+ interface SearchIndexDoc {
9886
+ version: 1;
9887
+ entries: SearchEntry[];
9888
+ }
9889
+ interface SearchIndexOptions {
9890
+ /** Read a document's source. Defaults to reading `cwd`-relative from disk. */
9891
+ readDoc?: (path: string) => string | undefined;
9892
+ /** Warnings channel (missing sources are non-fatal — the entry loses text). */
9893
+ warnings?: string[];
9894
+ }
9895
+ declare function buildSearchIndex(graph: GraphIndex, cwd: string, options?: SearchIndexOptions): SearchIndexDoc;
9896
+ /** Serialize deterministically, with the trailing newline the other emitters use. */
9897
+ declare function emitSearchIndex(doc: SearchIndexDoc): string;
9898
+ /**
9899
+ * Split one index into per-language indexes (ADR 01038).
9900
+ *
9901
+ * A document's language is the `dcterms:language` it carries; a **section takes
9902
+ * its document's**, which is containment rather than inference — a section is
9903
+ * part of exactly one document and has no language of its own. A document
9904
+ * declaring none lands in the `und` bucket.
9905
+ *
9906
+ * **Concepts belong to every locale.** A `skos:Concept` is shared vocabulary
9907
+ * minted from labels across the corpus, not a document in some language, so it
9908
+ * is replicated into each language's index rather than filed under `und`. Doing
9909
+ * otherwise had two visible costs: `--lang de` could never return a concept,
9910
+ * and a corpus whose every document declared a language still grew a phantom
9911
+ * `und` localization holding only concepts — which then made `manni graph search`
9912
+ * demand `--lang` on what is, to its author, a single-language corpus.
9913
+ *
9914
+ * Entry order inside each index is preserved, so each one is sorted for the
9915
+ * same reason the whole index was.
9916
+ */
9917
+ declare function partitionByLanguage(graph: GraphIndex, index: SearchIndexDoc): Map<string, SearchIndexDoc>;
9918
+ /** Documents (not sections) per language, for the manifest's counts. */
9919
+ declare function documentsByLanguage(graph: GraphIndex): Map<string, number>;
9920
+
9921
+ interface LexicalSearchOptions {
9922
+ /** Maximum candidates to return. Default 10. */
9923
+ limit?: number;
9924
+ }
9925
+ interface LexicalIndex {
9926
+ /** Ranked candidates, best first, ties broken by IRI. */
9927
+ search(query: string, options?: LexicalSearchOptions): EntryCandidate[];
9928
+ /** Indexed entry count. */
9929
+ size(): number;
9930
+ /** The entry behind an IRI, for callers that want its title/type. */
9931
+ entry(iri: string): SearchEntry | undefined;
9932
+ }
9933
+ /**
9934
+ * Build a lexical index from the search artifact — a JSON string or the parsed
9935
+ * document.
9936
+ */
9937
+ declare function createLexicalIndex(input: string | SearchIndexDoc): LexicalIndex;
9938
+
9939
+ interface VectorIndexHeader {
9940
+ /** Embedding model id, e.g. an HF repo path. */
9941
+ model: string;
9942
+ /** Model-weight quantization the vectors were produced under. */
9943
+ dtype: string;
9944
+ /** Vector dimensions. Never assumed — always read from here. */
9945
+ dims: number;
9946
+ /** Number of vectors; equals `ids.length`. */
9947
+ count: number;
9948
+ /** Node IRIs, sorted, in payload order. */
9949
+ ids: string[];
9950
+ /** Digest of the `search.<lang>.json` these were built from (staleness detection). */
9951
+ source: string;
9952
+ /**
9953
+ * BCP-47 tag of the index these cover, or `und` (ADR 01038). Recorded so a
9954
+ * host that fetched the wrong pair is refused rather than ranked against a
9955
+ * model that never saw the language.
9956
+ */
9957
+ language: string;
9958
+ }
9959
+ interface VectorIndexDoc {
9960
+ header: VectorIndexHeader;
9961
+ /** `count * dims` floats, L2-normalized, row-major in `ids` order. */
9962
+ vectors: Float32Array;
9963
+ }
9964
+ /** Thrown for malformed input so callers can map it to an exit code / refusal. */
9965
+ declare class VectorIndexError extends Error {
9966
+ constructor(message: string);
9967
+ }
9968
+ /**
9969
+ * L2-normalize a vector in place and return it. A zero vector is left alone —
9970
+ * dividing by its norm would produce NaNs that silently poison every later dot
9971
+ * product.
9972
+ */
9973
+ declare function normalize(vector: Float32Array): Float32Array;
9974
+ /**
9975
+ * Encode entries into the sidecar. Entries are sorted by IRI first, so the bytes
9976
+ * depend on the set of entries and not on the order they were produced in.
9977
+ */
9978
+ declare function encodeVectorIndex(entries: Array<{
9979
+ id: string;
9980
+ vector: Float32Array;
9981
+ }>, meta: {
9982
+ model: string;
9983
+ dtype: string;
9984
+ source: string;
9985
+ language: string;
9986
+ }): Uint8Array;
9987
+ /** Decode a sidecar, rejecting anything malformed rather than mis-reading it. */
9988
+ declare function decodeVectorIndex(bytes: Uint8Array): VectorIndexDoc;
9989
+
9990
+ interface VectorSearchOptions {
9991
+ /** Maximum candidates to return. Default 10. */
9992
+ limit?: number;
9993
+ /**
9994
+ * Drop candidates scoring below this. Default 0 — every model has its own
9995
+ * useful range, so dockg does not impose a threshold the user did not choose.
9996
+ */
9997
+ minScore?: number;
9998
+ }
9999
+ /** Why a vector index cannot be used with the embedder or corpus at hand. */
10000
+ interface VectorMismatch {
10001
+ reason: "model" | "dtype" | "dims" | "stale-source";
10002
+ detail: string;
10003
+ }
10004
+ /**
10005
+ * Thrown when a query would be ranked against vectors it cannot be compared to.
10006
+ *
10007
+ * A distinct type so hosts can catch exactly this — and so it cannot be mistaken
10008
+ * for "no results". Ranking on regardless is the silent-wrong-answer failure
10009
+ * ADR 01020 exists to prevent, so this is loud by design.
10010
+ */
10011
+ declare class VectorMismatchError extends Error {
10012
+ readonly reason: VectorMismatch["reason"];
10013
+ constructor(mismatch: VectorMismatch);
10014
+ }
10015
+ /**
10016
+ * The digest `manni graph embed` records as a sidecar's `source`, computed the same
10017
+ * way in a browser — SHA-256 over the **raw bytes of `search.json` exactly as
10018
+ * fetched**, hex, prefixed `sha256:`.
10019
+ *
10020
+ * Exists so a host can pass `source` to `findEntry` and get the staleness half
10021
+ * of the refusal (ADR 01020) without reconstructing the recipe. Re-serializing
10022
+ * the parsed JSON would change the bytes and so the digest — pass the response
10023
+ * text, not `JSON.stringify(doc)`.
10024
+ *
10025
+ * Uses Web Crypto, which is platform-neutral: browsers and Node 18+ both have
10026
+ * it on `globalThis`.
10027
+ */
10028
+ declare function searchIndexDigest(raw: string): Promise<string>;
10029
+ interface VectorIndex {
10030
+ /**
10031
+ * Rank nodes against a query vector. The vector is normalized here, so
10032
+ * callers need not — an unnormalized query would otherwise scale every score.
10033
+ */
10034
+ search(query: Float32Array, options?: VectorSearchOptions): EntryCandidate[];
10035
+ /**
10036
+ * Check this index against the embedder and corpus in play. Returns the
10037
+ * mismatch, or undefined when they agree. Ranking against vectors from a
10038
+ * different model compares outputs of two different functions (ADR 01020), so
10039
+ * callers should refuse rather than proceed.
10040
+ */
10041
+ check(expected: {
10042
+ model?: string;
10043
+ dtype?: string;
10044
+ dims?: number;
10045
+ source?: string;
10046
+ }): VectorMismatch | undefined;
10047
+ readonly model: string;
10048
+ /**
10049
+ * Weight quantization the corpus vectors were produced under. The query side
10050
+ * must embed at the *same* dtype — q8 and fp32 weights are different
10051
+ * functions, so mixing them compares incomparable vectors (ADR 01020).
10052
+ */
10053
+ readonly dtype: string;
10054
+ readonly dims: number;
10055
+ readonly source: string;
10056
+ size(): number;
10057
+ /** The IRI at a payload row, for callers walking the index directly. */
10058
+ idAt(row: number): string | undefined;
10059
+ }
10060
+ /** Build a vector index from encoded sidecar bytes. */
10061
+ declare function createVectorIndex(bytes: Uint8Array): VectorIndex;
10062
+
10063
+ /**
10064
+ * Enough of an embedder to verify it against a vector index. Structural rather
10065
+ * than the `Embedder` interface itself, so the runtime stays independent of
10066
+ * `@hawkeyexl/manni/graph/embed` — any object with these three fields works.
10067
+ */
10068
+ interface QueryEmbedder {
10069
+ readonly model: string;
10070
+ readonly dtype: string;
10071
+ embed(text: string): Promise<Float32Array> | Float32Array;
10072
+ }
10073
+ interface FindEntryOptions {
10074
+ /** The lexical index to query. */
10075
+ lexical: LexicalIndex;
10076
+ /** The vector index. Without it (and an embedder), entry is lexical-only. */
10077
+ vectors?: VectorIndex;
10078
+ /**
10079
+ * The embedder for the query side. **Prefer this over `embedQuery`**: it
10080
+ * carries the model and dtype, so `findEntry` can verify they match the
10081
+ * vector index and refuse rather than rank against incomparable vectors.
10082
+ */
10083
+ embedder?: QueryEmbedder;
10084
+ /**
10085
+ * Embed the query with a bare function. An escape hatch for hosts wiring
10086
+ * their own model — but it carries no identity, so **the model/dtype match
10087
+ * cannot be verified**; only the dimension check inside `search` applies.
10088
+ * Prefer `embedder`.
10089
+ */
10090
+ embedQuery?: (query: string) => Promise<Float32Array> | Float32Array;
10091
+ /**
10092
+ * Digest of the `search.json` this caller loaded, from `searchIndexDigest`.
10093
+ * Supplied, a sidecar built from a *different* corpus is refused rather than
10094
+ * ranked — its IRIs may no longer exist, and it misses everything added
10095
+ * since. Omitted, that half of the check simply does not run: the runtime
10096
+ * cannot derive the digest, since it never sees the raw bytes.
10097
+ */
10098
+ source?: string;
10099
+ /** Maximum seeds to return. Default 10. */
10100
+ limit?: number;
10101
+ /** Append candidates here instead of starting a new trace. */
10102
+ trace?: QueryTrace;
10103
+ }
10104
+ interface EntryResult {
10105
+ /** The fused ranking — what seeds traversal. */
10106
+ candidates: EntryCandidate[];
10107
+ /** The lexical leg's own ranking. */
10108
+ lexical: EntryCandidate[];
10109
+ /** The vector leg's own ranking; empty when no embedder was supplied. */
10110
+ vector: EntryCandidate[];
10111
+ trace: QueryTrace;
10112
+ }
10113
+ /**
10114
+ * Reciprocal rank fusion over N ranked lists: score = Σ 1/(k + rank).
10115
+ *
10116
+ * Rank-based rather than score-based on purpose — lexical BM25 scores and
10117
+ * cosine similarities are not on a comparable scale, so fusing raw scores would
10118
+ * let whichever leg happens to produce bigger numbers dominate. `k = 60` is the
10119
+ * standard damping constant.
10120
+ *
10121
+ * Deterministic: input list order does not affect the result, and ties break by
10122
+ * IRI.
10123
+ */
10124
+ declare function rrfMerge(rankings: EntryCandidate[][], k?: number): EntryCandidate[];
10125
+ /**
10126
+ * Find seed nodes for a question, returning each ranking leg and their fusion.
10127
+ *
10128
+ * Async because embedding a query is: local models are a WASM forward pass.
10129
+ * Uniformly async rather than sync-when-lexical-only, so callers have one
10130
+ * contract to hold rather than a return type that changes with the options.
10131
+ *
10132
+ * The vector leg runs only when both a `vectors` index and an `embedQuery` are
10133
+ * supplied. Absent either, this is lexical entry exactly as Phase 8 shipped it —
10134
+ * additive, never a new failure mode (ADR 01009's degrade-don't-fail rule).
10135
+ */
10136
+ declare function findEntry(query: string, options: FindEntryOptions): Promise<EntryResult>;
10137
+
10138
+ /** Conventional filename, written beside the graph. */
10139
+ declare const LOCALIZATIONS_FILENAME = "localizations.json";
10140
+ /**
10141
+ * BCP-47's tag for undetermined, used as the bucket for documents that declare
10142
+ * no language. A real tag rather than a dockg invention, so a consumer that
10143
+ * knows BCP-47 already knows what it means — and so the bucket sorts, filters,
10144
+ * and names a file like any other language.
10145
+ */
10146
+ declare const UNDETERMINED = "und";
10147
+ /** Where one language's lexical index lives, and what it holds. */
10148
+ interface SearchArtifact {
10149
+ /** Filename, relative to the manifest. */
10150
+ path: string;
10151
+ /** Indexed nodes. */
10152
+ entries: number;
10153
+ /** `sha256:…` of the file, so a consumer can detect a stale pair. */
10154
+ digest: string;
10155
+ }
10156
+ /** Where one language's vector sidecar lives, and what produced it. */
10157
+ interface VectorArtifact {
10158
+ path: string;
10159
+ /** The embedding model this language was embedded with. */
10160
+ model: string;
10161
+ dtype: string;
10162
+ dims: number;
10163
+ count: number;
10164
+ }
10165
+ interface LocalizationEntry {
10166
+ /** BCP-47 tag, or `und` for the undeclared bucket. */
10167
+ language: string;
10168
+ /** Documents in this language (sections excluded). */
10169
+ documents: number;
10170
+ search: SearchArtifact;
10171
+ /** Absent until `manni graph embed` has run for this language. */
10172
+ vectors?: VectorArtifact;
10173
+ }
10174
+ interface LocalizationsDoc {
10175
+ version: 1;
10176
+ /** One entry per language present, sorted by tag. */
10177
+ languages: LocalizationEntry[];
10178
+ }
10179
+ /** `search.de.json` — the lexical index for one language. */
10180
+ declare function searchIndexFilename(language: string): string;
10181
+ /** `vectors.de.bin` — the vector sidecar for one language. */
10182
+ declare function vectorIndexFilename(language: string): string;
10183
+ /**
10184
+ * Serialize the manifest: sorted by language, two-space indent, trailing
10185
+ * newline — byte-stable like every other dockg artifact.
10186
+ */
10187
+ declare function emitLocalizations(doc: LocalizationsDoc): string;
10188
+ declare function parseLocalizations(text: string): LocalizationsDoc | undefined;
10189
+
10190
+ /**
10191
+ * What kind of frontmatter block a file opens with. docmeta reads TOML (+++)
10192
+ * and JSON (;;;) fences too, but only YAML is editable in place — callers
10193
+ * must not treat "unsupported" as "absent" or they will stack a second block.
10194
+ */
10195
+ declare function frontmatterKind(content: string): "yaml" | "unsupported" | "none";
10196
+ interface GraphApplyResult {
10197
+ content: string;
10198
+ /** Fields written. */
10199
+ applied: string[];
10200
+ /** Fields left alone because a human-set value exists (and no force). */
10201
+ skipped: string[];
10202
+ }
10203
+ interface GraphApplyOptions {
10204
+ /** Overwrite values a human already set. */
10205
+ force?: boolean;
10206
+ /**
10207
+ * Keys to write at the TOP level of the frontmatter, beside `graph` rather
10208
+ * than inside it — `meta-provenance` is the one caller (proposal 0046).
10209
+ * They are always overwritten, because the caller computes each value
10210
+ * whole, and they are written even when `values` is empty. Kept in this
10211
+ * one function so a fill is still one parse and one serialization of the
10212
+ * block, and the body stays byte-identical either way.
10213
+ */
10214
+ page?: Record<string, unknown>;
10215
+ }
10216
+ /**
10217
+ * Apply proposed values to the top-level `graph` map of a doc's frontmatter,
10218
+ * plus any `options.page` keys beside it. Existing field values win unless
10219
+ * `force`. The body after the closing fence is byte-identical to the input.
10220
+ */
10221
+ declare function applyGraphFields(content: string, path: string, values: Record<string, unknown>, options?: GraphApplyOptions): GraphApplyResult;
10222
+ /**
10223
+ * The doc's page-level `meta-provenance` value, exactly as held — `undefined`
10224
+ * when the page has none. Uncoerced on purpose: `mergeMetaProvenance` decides
10225
+ * what a non-list means, and every key of an entry it does not know is carried
10226
+ * through, so a `docevals` entry survives a `graph fill`.
10227
+ */
10228
+ declare function existingMetaProvenance(content: string): unknown;
10229
+ /** Fields already present on the doc's `graph` map ([] when none). */
10230
+ declare function existingGraphFields(content: string): string[];
10231
+
10232
+ /**
10233
+ * Namespace table. Standard vocabularies wherever a term exists; the custom
10234
+ * `graph:` namespace stays minimal, and the newest vocabulary document under
10235
+ * `ns/` defines every term it holds — a bidirectional drift guard in
10236
+ * test/graph/unit/vocabulary.test.ts enforces both directions. Neither the term
10237
+ * count nor the version is written here: both went stale the first time a term
10238
+ * was added, and the guard resolves the file rather than naming it. The prefix
10239
+ * set is fixed — every emitted graph carries the same header.
10240
+ *
10241
+ * The custom prefix is `graph:` and its namespace is the manni site's, which is
10242
+ * where it dereferences (proposal 0051 §7). Both were `dockg` until the tool
10243
+ * joined the family, and graph ADR 01030's rule — the namespace IRI must resolve
10244
+ * — is why they moved rather than staying: `hawkeyexl.github.io/dockg` never
10245
+ * served anything and never will.
10246
+ *
10247
+ * The block an author writes on a page is `graph:`, and the prefix is `graph:`
10248
+ * too. The spelling is shared but the things differ: the key names frontmatter,
10249
+ * the prefix abbreviates an IRI in emitted RDF, and the prefix carries the
10250
+ * tool's name because `…/manni/graph/ns#` is the tool's namespace. Nothing
10251
+ * collides: no other prefix in this table is `graph`, and a `graph:` CURIE typed
10252
+ * at `--predicates` or `--subject` expanded to nothing before.
10253
+ */
10254
+ declare const NS: {
10255
+ readonly dcterms: "http://purl.org/dc/terms/";
10256
+ readonly foaf: "http://xmlns.com/foaf/0.1/";
10257
+ readonly graph: "https://hawkeyexl.github.io/manni/graph/ns#";
10258
+ readonly iirds: "http://iirds.tekom.de/iirds#";
10259
+ readonly iirdsSft: "http://iirds.tekom.de/iirds/domain/software#";
10260
+ readonly prov: "http://www.w3.org/ns/prov#";
10261
+ readonly rdf: "http://www.w3.org/1999/02/22-rdf-syntax-ns#";
10262
+ readonly schema: "https://schema.org/";
10263
+ readonly skos: "http://www.w3.org/2004/02/skos/core#";
10264
+ readonly xsd: "http://www.w3.org/2001/XMLSchema#";
10265
+ };
10266
+ type Prefix = keyof typeof NS;
10267
+ /** Prefixes in emission order (sorted by prefix name). */
10268
+ declare const PREFIXES: ReadonlyArray<[Prefix, string]>;
10269
+
10270
+ interface BuildOptions extends DocumentInputOptions {
10271
+ /** Output path override (default: config `out`). */
10272
+ out?: string;
10273
+ cwd?: string;
10274
+ /**
10275
+ * What `-` reads: the document from stdin, read by the caller. Required
10276
+ * when `paths` holds `-`. Its display path is `<stdin>`, its node is
10277
+ * `{baseIri}stdin`, and its links resolve from `cwd`.
10278
+ */
10279
+ stdinContent?: string;
10280
+ /** `--allow-empty`: zero matched files writes an empty graph, not an error. */
10281
+ allowEmpty?: boolean;
10282
+ }
10283
+ interface BuildResult {
10284
+ outPath: string;
10285
+ docs: number;
10286
+ quads: number;
10287
+ /**
10288
+ * Non-fatal diagnostics: the build succeeded, but something it would have
10289
+ * done by default could not run (see ADR 01010). Rendered to stderr by the
10290
+ * CLI; never affects the exit code.
10291
+ */
10292
+ warnings: string[];
10293
+ }
10294
+ declare function runBuild(opts?: BuildOptions): Promise<BuildResult>;
10295
+
10296
+ /** The graph vocabulary, for validators that accept an inline schema. */
10297
+ declare const frontmatterSchema: Record<string, unknown>;
10298
+ /** The vocabulary's `$id`: `manni:graph:1.0.0`. */
10299
+ declare const FRONTMATTER_SCHEMA_ID: string;
10300
+
10301
+ /**
10302
+ * What `manni graph export <target>` can write, in the order messages list them.
10303
+ * The CLI names its positional against this list, and `runExport` holds a
10304
+ * library caller to it too.
10305
+ */
10306
+ declare const EXPORT_TARGETS: readonly ["jsonld", "iirds", "search"];
10307
+ type ExportFormat = (typeof EXPORT_TARGETS)[number];
10308
+ interface ExportOptions {
10309
+ config?: string;
10310
+ /** `--no-config`: skip discovery and run on the built-in defaults. */
10311
+ noConfig?: boolean;
10312
+ /** Graph .ttl path (default: config `out`). */
10313
+ graph?: string;
10314
+ format: ExportFormat;
10315
+ /** Output path (default: the graph path with the format's extension). */
10316
+ out?: string;
10317
+ cwd?: string;
10318
+ }
10319
+ interface ExportResult {
10320
+ outPath: string;
10321
+ format: ExportFormat;
10322
+ /** Distinct subject nodes in the emitted (or projected) graph. */
10323
+ nodes: number;
10324
+ /** Non-fatal projection warnings (iiRDS only; empty otherwise). */
10325
+ warnings: string[];
10326
+ }
10327
+ /**
10328
+ * Async by contract — every command core is, and the CLI awaits this one — but
10329
+ * synchronous in fact: all three writers are `writeFileSync`. Spelled as a
10330
+ * `Promise` the body never awaits, through the constructor rather than
10331
+ * `Promise.resolve().then`, so the executor still runs eagerly and a usage
10332
+ * error still *rejects* the returned promise instead of throwing before the
10333
+ * caller holds one. That is what `async` did, said without claiming an `await`
10334
+ * that is not there.
10335
+ */
10336
+ declare function runExport(opts: ExportOptions): Promise<ExportResult>;
10337
+
10338
+ interface QueryOptions {
10339
+ s?: string;
10340
+ p?: string;
10341
+ o?: string;
10342
+ config?: string;
10343
+ /** `--no-config`: skip discovery and run on the built-in defaults. */
10344
+ noConfig?: boolean;
10345
+ /** Graph path override (default: config `out`). */
10346
+ graph?: string;
10347
+ cwd?: string;
10348
+ }
10349
+ interface QueryMatch {
10350
+ s: string;
10351
+ p: string;
10352
+ o: {
10353
+ kind: "iri" | "literal";
10354
+ value: string;
10355
+ datatype?: string;
10356
+ };
10357
+ }
10358
+ interface QueryResult {
10359
+ matches: QueryMatch[];
10360
+ }
10361
+ declare function runQuery(opts?: QueryOptions): QueryResult;
10362
+
10363
+ interface StatsOptions {
10364
+ config?: string;
10365
+ /** `--no-config`: skip discovery and run on the built-in defaults. */
10366
+ noConfig?: boolean;
10367
+ graph?: string;
10368
+ cwd?: string;
10369
+ /** Exit 1 when broken links exist or a coverage threshold is unmet. */
10370
+ check?: boolean;
10371
+ /** How many most-connected docs to list. */
10372
+ top?: number;
10373
+ /**
10374
+ * Uniform minimum coverage percentage, overriding config across every field.
10375
+ * The per-field map form is config-only.
10376
+ */
10377
+ coverageThreshold?: number;
10378
+ }
10379
+ /** One row of the metadata coverage report. */
10380
+ interface CoverageRow {
10381
+ field: string;
10382
+ predicate: string;
10383
+ /** Documents carrying the predicate. */
10384
+ docs: number;
10385
+ /** Percentage of documents covered, rounded to one decimal. */
10386
+ pct: number;
10387
+ }
10388
+ interface StatsReport {
10389
+ triples: number;
10390
+ docs: number;
10391
+ sections: number;
10392
+ concepts: number;
10393
+ references: number;
10394
+ /** graph:path of docs with no in/out dcterms:references. */
10395
+ orphans: string[];
10396
+ brokenLinks: Array<{
10397
+ doc: string;
10398
+ target: string;
10399
+ }>;
10400
+ /** graph.sections keys that matched no heading (graph:brokenSectionRef). */
10401
+ brokenSectionRefs: Array<{
10402
+ doc: string;
10403
+ slug: string;
10404
+ }>;
10405
+ mostConnected: Array<{
10406
+ doc: string;
10407
+ degree: number;
10408
+ }>;
10409
+ /** Per-field metadata coverage over documents, in report order. */
10410
+ coverage: CoverageRow[];
10411
+ /**
10412
+ * Per-field coverage over `graph:Section` nodes (ADR 01029). Reported, not
10413
+ * gated: sections are explicit-only, so these start near zero on every corpus
10414
+ * and a default gate would fail every one of them.
10415
+ */
10416
+ sectionCoverage: CoverageRow[];
10417
+ /**
10418
+ * Per-language reporting (ADR 01037). The whole-corpus `coverage` table
10419
+ * blends every locale into one number that describes no audience; this says
10420
+ * which audience is under-served and what is still untranslated.
10421
+ *
10422
+ * Reported, not gated — `coverageFindings` stays whole-corpus, per
10423
+ * ADR 01009's rule that reporting on does not imply gating on.
10424
+ */
10425
+ localization: LocalizationReport;
10426
+ /** Fields whose document coverage is below their configured threshold. */
10427
+ coverageFindings: Array<{
10428
+ field: string;
10429
+ pct: number;
10430
+ threshold: number;
10431
+ }>;
10432
+ exitCode: 0 | 1;
10433
+ }
10434
+ interface LanguageReport {
10435
+ /** BCP-47 tag exactly as the graph carries it. */
10436
+ language: string;
10437
+ /** Documents carrying this tag. */
10438
+ docs: number;
10439
+ /** The same fields as `coverage`, scored over this language's documents. */
10440
+ coverage: CoverageRow[];
10441
+ /**
10442
+ * `graph:path` of source documents with no translation into this language,
10443
+ * sorted. A *source* is a document carrying no `schema:translationOfWork` —
10444
+ * so a translation is never its own backlog item — and a source already in
10445
+ * this language is excluded. Nothing here is inferred: a page counts as
10446
+ * translated only where the graph carries the edge.
10447
+ */
10448
+ untranslated: string[];
10449
+ }
10450
+ interface LocalizationReport {
10451
+ /** Documents carrying no `dcterms:language` at all. */
10452
+ unlabelled: number;
10453
+ /** One block per language present, sorted by tag. */
10454
+ languages: LanguageReport[];
10455
+ }
10456
+ declare function runStats(opts?: StatsOptions): StatsReport;
10457
+
10458
+ interface TraverseOptions {
10459
+ config?: string;
10460
+ /** `--no-config`: skip discovery and run on the built-in defaults. */
10461
+ noConfig?: boolean;
10462
+ /** Graph .ttl path (default: config `out`). */
10463
+ graph?: string;
10464
+ /** Starting node: full IRI or a `prefix:local` CURIE. */
10465
+ node: string;
10466
+ depth?: number;
10467
+ predicates?: string[];
10468
+ /** Walk inbound edges instead of outbound. */
10469
+ reverse?: boolean;
10470
+ /** Transitive inbound reach — what is affected if this node changes. */
10471
+ impact?: boolean;
10472
+ /** Scope filter: a product variant IRI, title, or slug. */
10473
+ variant?: string;
10474
+ /** Scope filter: a software subject. */
10475
+ subject?: string;
10476
+ /** Scope filter: a BCP-47 language tag, matched in any case (ADR 01037). */
10477
+ lang?: string;
10478
+ limit?: number;
10479
+ cwd?: string;
10480
+ }
10481
+ interface TraverseReport {
10482
+ /** The resolved starting IRI. */
10483
+ node: string;
10484
+ nodes: Array<{
10485
+ iri: string;
10486
+ depth: number;
10487
+ title?: string;
10488
+ }>;
10489
+ trace: TraverseResult["trace"];
10490
+ }
10491
+ declare function runTraverse(opts: TraverseOptions): TraverseReport;
10492
+ declare function renderTraverse(report: TraverseReport, format: "pretty" | "json"): string;
10493
+
10494
+ /**
10495
+ * The embedder seam (ADR 01020). Platform-neutral and dependency-free, so the
10496
+ * runtime and the CLI can both speak it without either pulling in a model.
10497
+ *
10498
+ * Everything that computes embeddings — the local transformers.js embedder, the
10499
+ * deterministic mock, or a host's own — implements `Embedder`.
10500
+ */
10501
+ interface Embedder {
10502
+ /** Stable identity of the model; recorded in the sidecar header. */
10503
+ readonly model: string;
10504
+ /** Weight quantization the vectors were produced under. */
10505
+ readonly dtype: string;
10506
+ /** Output dimensions. Never assumed by callers — always read from here. */
10507
+ readonly dims: number;
10508
+ /**
10509
+ * Embed one text. Single-text rather than batched **on purpose**: float
10510
+ * addition is not associative, so a batched vector depends on what it was
10511
+ * batched with, and adding one document would perturb its neighbours' vectors
10512
+ * (ADR 01020). Determinism is worth more here than throughput.
10513
+ */
10514
+ embed(text: string): Promise<Float32Array>;
10515
+ }
10516
+ /**
10517
+ * A model's quirks, applied on both the build and query sides so a user cannot
10518
+ * get them wrong. Some models require a prefix on queries and/or passages and
10519
+ * degrade *silently* without it.
10520
+ */
10521
+ interface ModelProfile {
10522
+ /** Hugging Face repo id. */
10523
+ id: string;
10524
+ /** Prepended when embedding a search query. */
10525
+ queryPrefix?: string;
10526
+ /** Prepended when embedding indexed content. */
10527
+ passagePrefix?: string;
10528
+ /** Human note surfaced in docs and `--help`. */
10529
+ note?: string;
10530
+ }
10531
+ /** What a text is being embedded *for* — decides which prefix applies. */
10532
+ type EmbedRole = "query" | "passage";
10533
+ declare const MODEL_PROFILES: readonly ModelProfile[];
10534
+ declare const DEFAULT_MODEL: string;
10535
+ /** The profile for a model id, or a bare profile when it is not a tested one. */
10536
+ declare function profileFor(id: string): ModelProfile;
10537
+ /** Apply the model's prefix convention for the role, if it has one. */
10538
+ declare function withPrefix(profile: ModelProfile, role: EmbedRole, text: string): string;
10539
+
10540
+ /**
10541
+ * Which legs `--mode` can ask for, in the order messages list them. Stated
10542
+ * once so the union, the help text and the refusal sentence cannot drift.
10543
+ */
10544
+ declare const SEARCH_MODES: readonly ["lexical", "hybrid", "vector"];
10545
+ type SearchMode = (typeof SEARCH_MODES)[number];
10546
+ interface SearchOptions {
10547
+ config?: string;
10548
+ /** `--no-config`: skip discovery and run on the built-in defaults. */
10549
+ noConfig?: boolean;
10550
+ /** Graph .ttl path (default: config `out`) — locates the sibling index. */
10551
+ graph?: string;
10552
+ /** Directory holding the indexes and manifest (default: beside the graph). */
10553
+ index?: string;
10554
+ /**
10555
+ * Which localization to search (ADR 01038). Optional when the corpus has one;
10556
+ * required when it has more, because picking for the user is how a query gets
10557
+ * answered out of the wrong language.
10558
+ */
10559
+ lang?: string;
10560
+ query: string;
10561
+ limit?: number;
10562
+ /** Vector sidecar path (default: the sidecar the manifest records). */
10563
+ vectors?: string;
10564
+ /**
10565
+ * Which legs to run. "lexical" is always available; "vector"/"hybrid" need an
10566
+ * embedder and a sidecar. Default "hybrid" when both are present, else
10567
+ * "lexical" — additive, never a new failure mode.
10568
+ */
10569
+ mode?: SearchMode;
10570
+ /** Injection seam for tests: bypasses the embedder factory. */
10571
+ embedder?: Embedder;
10572
+ cwd?: string;
10573
+ }
10574
+ interface SearchHit {
10575
+ iri: string;
10576
+ score: number;
10577
+ via: string;
10578
+ type?: string;
10579
+ title?: string;
10580
+ }
10581
+ interface SearchReport {
10582
+ query: string;
10583
+ /** Which legs actually ran. */
10584
+ mode: SearchMode;
10585
+ /** The fused ranking (or the single leg's, when only one ran). */
10586
+ results: SearchHit[];
10587
+ /** The lexical leg's own ranking. */
10588
+ lexical: SearchHit[];
10589
+ /** The vector leg's own ranking; empty when it did not run. */
10590
+ vector: SearchHit[];
10591
+ trace: QueryTrace;
10592
+ }
10593
+ declare function runSearch(opts: SearchOptions): Promise<SearchReport>;
10594
+ declare function renderSearch(report: SearchReport, format: "pretty" | "json"): string;
10595
+
10596
+ interface EmbedOptions {
10597
+ config?: string;
10598
+ /** `--no-config`: skip discovery and run on the built-in defaults. */
10599
+ noConfig?: boolean;
10600
+ /** Graph .ttl path (default: config `out`) — locates the sibling index. */
10601
+ graph?: string;
10602
+ /** Directory holding the indexes and manifest (default: beside the graph). */
10603
+ index?: string;
10604
+ /** Directory to write the sidecars into (default: the index directory). */
10605
+ out?: string;
10606
+ model?: string;
10607
+ dtype?: string;
10608
+ /** Skip the vector cache. */
10609
+ noCache?: boolean;
10610
+ /** Injection seam for tests: bypasses the embedder factory. */
10611
+ embedder?: Embedder;
10612
+ cwd?: string;
10613
+ }
10614
+ /** One language's sidecar, as this run produced it. */
10615
+ interface EmbedLanguageReport {
10616
+ language: string;
10617
+ outPath: string;
10618
+ /** The model this language was embedded with, after the per-language override. */
10619
+ model: string;
10620
+ dims: number;
10621
+ /** Entries embedded this run (cache misses). */
10622
+ embedded: number;
10623
+ /** Entries served from cache. */
10624
+ cached: number;
10625
+ total: number;
10626
+ }
10627
+ interface EmbedReport {
10628
+ /** The manifest, rewritten with each language's `vectors` block. */
10629
+ manifestPath: string;
10630
+ /** One entry per language in the manifest, in its order. */
10631
+ languages: EmbedLanguageReport[];
10632
+ /** Totals across every language. */
10633
+ embedded: number;
10634
+ cached: number;
10635
+ total: number;
10636
+ }
10637
+ /** The text an entry contributes to its vector — same fields the lexical index scores. */
10638
+ declare function embedText(entry: SearchEntry): string;
10639
+ declare function runEmbed(opts?: EmbedOptions): Promise<EmbedReport>;
10640
+ declare function renderEmbed(report: EmbedReport, format: "pretty" | "json"): string;
10641
+
10642
+ /**
10643
+ * A built feature-extraction pipeline, as this module calls it.
10644
+ *
10645
+ * One text, mean-pooled and normalized (disciplines 2 and 3 above), returning
10646
+ * something array-like of numbers. `Tensor` carries far more than that; naming
10647
+ * only what is read keeps the peer's real type out of the build.
10648
+ */
10649
+ type FeatureExtractionPipeline = (text: string, options: {
10650
+ pooling: "mean";
10651
+ normalize: boolean;
10652
+ }) => Promise<{
10653
+ data: ArrayLike<number>;
10654
+ }>;
10655
+ /**
10656
+ * The slice of `@huggingface/transformers` this module touches.
10657
+ *
10658
+ * The package is an **optional peer**, so importing its types would make it a
10659
+ * hard dependency for everyone — the thing the dynamic import exists to avoid.
10660
+ * Declaring the used surface here instead keeps the boundary narrow rather
10661
+ * than untyped: three members, each one a line the code below actually runs.
10662
+ * `env` is optional all the way down because the Node build's
10663
+ * `backends.onnx.wasm` may be absent or a stub, which is the mistake ADR 01025
10664
+ * documents.
10665
+ */
10666
+ interface TransformersModule {
10667
+ env?: {
10668
+ backends?: {
10669
+ onnx?: {
10670
+ wasm?: {
10671
+ numThreads?: number;
10672
+ };
10673
+ };
10674
+ };
10675
+ };
10676
+ pipeline: (task: "feature-extraction", model: string, options: {
10677
+ device?: string;
10678
+ dtype: string;
10679
+ }) => Promise<FeatureExtractionPipeline>;
10680
+ }
10681
+ interface LocalEmbedderOptions {
10682
+ /** Hugging Face model id. Any id is accepted; the tested set is documented. */
10683
+ model?: string;
10684
+ /** Weight quantization. Default `q8` — see discipline 2 above. */
10685
+ dtype?: string;
10686
+ /**
10687
+ * ONNX execution provider. **Omitted by default on purpose** — the accepted
10688
+ * values differ by platform (Node: `dml | webgpu | cpu`; browser: `webgpu |
10689
+ * wasm`), so any hardcoded value throws somewhere. Pass one only if you know
10690
+ * which platform this embedder runs on.
10691
+ */
10692
+ device?: string;
10693
+ /**
10694
+ * What these embeddings are for. Decides which prefix convention applies for
10695
+ * models that need one. Default "passage" (indexing); the query side passes
10696
+ * "query".
10697
+ */
10698
+ role?: EmbedRole;
10699
+ /**
10700
+ * Inject the transformers.js module (tests, or a host that already imported
10701
+ * it). Absent, it is imported dynamically.
10702
+ */
10703
+ transformers?: TransformersModule;
10704
+ }
10705
+ /** Thrown when the optional peer is not installed, with the fix in the message. */
10706
+ declare class EmbedderUnavailableError extends Error {
10707
+ constructor(detail: string);
10708
+ }
10709
+ /**
10710
+ * Create an embedder backed by a local model.
10711
+ *
10712
+ * **Constructing it is the expensive step**: `pipeline()` fetches the model's
10713
+ * config and weights (tens of megabytes on a cold cache) and builds the ONNX
10714
+ * session before returning, so callers that may not need to embed anything —
10715
+ * `manni graph embed` on an all-cache-hit run — should construct it lazily.
10716
+ */
10717
+ declare function createLocalEmbedder(options?: LocalEmbedderOptions): Promise<Embedder>;
10718
+
10719
+ /**
10720
+ * A deterministic offline embedder (ADR 01020) — the counterpart to
10721
+ * `MockProvider` for the LLM seam.
10722
+ *
10723
+ * CI must stay hermetic: real embedding downloads tens of megabytes of model
10724
+ * weights, which the no-network rule forbids. This produces vectors from a hash
10725
+ * of the text, so they are stable across runs, machines, and platforms — which
10726
+ * makes the `vectors.bin` golden and the double-build determinism gate possible
10727
+ * without a model.
10728
+ *
10729
+ * The vectors carry no semantics. They are useful for testing plumbing,
10730
+ * ordering, and refusal paths — never for judging retrieval quality.
10731
+ *
10732
+ * Platform-neutral: no `node:` imports, no dependencies.
10733
+ */
10734
+
10735
+ interface MockEmbedderOptions {
10736
+ /** Output dimensions. Default 8 — small keeps fixtures readable. */
10737
+ dims?: number;
10738
+ /** Reported model id. Default "mock". */
10739
+ model?: string;
10740
+ /** Reported dtype. Default "mock". */
10741
+ dtype?: string;
10742
+ }
10743
+ /**
10744
+ * Build a deterministic embedder. The same text always yields the same vector;
10745
+ * different texts yield different ones with high probability.
10746
+ */
10747
+ declare function createMockEmbedder(options?: MockEmbedderOptions): Embedder;
10748
+
10749
+ interface FillOptions extends DocumentInputOptions {
10750
+ cwd?: string;
10751
+ dryRun?: boolean;
10752
+ force?: boolean;
10753
+ noCache?: boolean;
10754
+ /**
10755
+ * Stop after this many inference calls; overrides `fill.maxTurns`. A cached
10756
+ * proposal spends none (proposal 0051 §3).
10757
+ */
10758
+ maxTurns?: number;
10759
+ /**
10760
+ * Minimum model confidence to write a field; overrides
10761
+ * `fill.confidenceThreshold`.
10762
+ */
10763
+ confidence?: number;
10764
+ /** Fields to propose; overrides `fill.fields`. */
10765
+ fields?: FillField[];
10766
+ provider?: string;
10767
+ model?: string;
10768
+ /** Run inference on this machine with llama-cpp, over every configured choice. */
10769
+ local?: boolean;
10770
+ /** Disable the graph guardrail (`--no-validate-graph`). */
10771
+ noValidateGraph?: boolean;
10772
+ /** Propose per-section metadata as well as document-level (ADR 01032). */
10773
+ sections?: boolean;
10774
+ /** Injection seam for tests: bypasses the provider factory. */
10775
+ providerInstance?: InferenceProvider;
10776
+ /**
10777
+ * What `-` reads: the document from stdin, read by the caller. Required when
10778
+ * `paths` holds `-`. It is never written to disk: the report's
10779
+ * `stdinDocument` carries it back, filled or as it came.
10780
+ */
10781
+ stdinContent?: string;
10782
+ /** `--allow-empty`: zero matched files is an empty report, not an error. */
10783
+ allowEmpty?: boolean;
10784
+ }
10785
+ type FillStatus = "filled" | "proposed" | "complete" | "nothing-proposed" | "skipped" | "error";
10786
+ interface FillDocResult {
10787
+ path: string;
10788
+ status: FillStatus;
10789
+ /**
10790
+ * Why a `skipped` page was skipped, said rather than left to be inferred —
10791
+ * the half of graph ADR 01027 that survives the dollar cap's removal.
10792
+ */
10793
+ reason?: string;
10794
+ /** Fields written (or that would be written under --dry-run). */
10795
+ fields: string[];
10796
+ /** Human-set fields the proposal was not allowed to touch. */
10797
+ preserved: string[];
10798
+ /** Fields dropped by the graph guardrail (fill.validateGraph). */
10799
+ rejected?: string[];
10800
+ /**
10801
+ * Section slugs the model proposed that match no heading in the document.
10802
+ * Dropped rather than written: writing one would mint a
10803
+ * graph:brokenSectionRef, a finding fill must report and never manufacture
10804
+ * (ADR 01032).
10805
+ */
10806
+ unknownSections?: string[];
10807
+ /** Fields the model proposed but scored below the confidence threshold (ADR 01015). */
10808
+ lowConfidence?: Array<{
10809
+ field: string;
10810
+ confidence: number;
10811
+ reasoning?: string;
10812
+ }>;
10813
+ cached: boolean;
10814
+ error?: string;
10815
+ }
10816
+ interface FillReport {
10817
+ results: FillDocResult[];
10818
+ /**
10819
+ * Inference calls this run made. Turns are countable for every model, where
10820
+ * a price was known for six of them — which is why the dollar cap went (graph
10821
+ * ADR 01027, proposal 0051 §3).
10822
+ */
10823
+ turnsUsed: number;
10824
+ /** The budget in force, or `null` for unbounded. */
10825
+ maxTurns: number | null;
10826
+ /** Non-fatal diagnostics. Never affects the exit code. */
10827
+ warnings: string[];
10828
+ exitCode: 0 | 1;
10829
+ /**
10830
+ * The document read from stdin, with the accepted fields written into it,
10831
+ * or unchanged when nothing was written. Absent when the run read no stdin
10832
+ * or the page errored. The CLI prints it to stdout; it is not part of the
10833
+ * rendered report.
10834
+ */
10835
+ stdinDocument?: string;
10836
+ }
10837
+ declare function runFill(opts?: FillOptions): Promise<FillReport>;
10838
+
10839
+ /**
10840
+ * Choosing the provider and model for `manni graph fill`, and building the shared
10841
+ * inference library's `ProviderSpec` for it.
10842
+ *
10843
+ * The providers themselves live in `@hawkeyexl/inference` (ADR 01021). The
10844
+ * names a provider may have, the two refusals, the detection call, the
10845
+ * level-bound precedence and the mapping of the family's `providers:`
10846
+ * connection settings are `src/shared/providers.ts`, the same code
10847
+ * `manni meta fill` and `manni docevals` run. What stays here is what only graph
10848
+ * can decide: which levels it reads — a flag, then `graph.provider`/`graph.model`,
10849
+ * then the family's top-level `providers:` map, then `auto` (proposal
10850
+ * 0051 §3).
10851
+ *
10852
+ * `graph.embed.model` is a local embedding model id, not a provider, and nothing
10853
+ * here touches it.
10854
+ */
10855
+
10856
+ /**
10857
+ * The provider and model in force: a flag, then `graph.provider`/`graph.model`,
10858
+ * then the family's `providers.provider`/`model`, then `auto`. A model is
10859
+ * carried only to the provider its own level names, so a level whose provider
10860
+ * lost takes the winner's default rather than a model it cannot run
10861
+ * (`selectProvider` in the shared module).
10862
+ *
10863
+ * `--local` runs llama-cpp over both levels. A `--provider` it contradicts is
10864
+ * refused here, so no path selects past it.
10865
+ */
10866
+ declare function selectProvider(config: GraphConfig, flags?: ProviderFlags): ProviderSelection;
10867
+ /**
10868
+ * Refuse a selection that cannot be right, with `manni meta fill`'s messages:
10869
+ * an unknown name, or a model under `auto`. Both are `GraphError`s, so both exit
10870
+ * 2 rather than reading as a finding.
10871
+ */
10872
+ declare function assertProviderSelection(selection: ProviderSelection): void;
10873
+ /**
10874
+ * The spec for a selection, with the family's connection settings for the
10875
+ * provider it names, and under `auto` the settings detection reads.
10876
+ */
10877
+ declare function providerSpecFor(config: GraphConfig, selection: {
10878
+ provider: ProviderSelector;
10879
+ model: string | null;
10880
+ }): ProviderSpec;
10881
+ /**
10882
+ * The concrete provider and model, WITHOUT constructing the provider: cache
10883
+ * keys need it, and a fully cached or fully complete run must not require an
10884
+ * API key.
10885
+ *
10886
+ * Under `auto` this is where detection runs, exactly as `manni meta fill`
10887
+ * runs it, seeing the same connection settings. The model is the RESOLVED one
10888
+ * (the provider's default when none was named, a llama-cpp tier's concrete
10889
+ * weights), so a library default that changes changes every cache key built
10890
+ * from it.
10891
+ */
10892
+ declare function resolveProviderIdentity(config: GraphConfig, flags?: ProviderFlags): Promise<{
10893
+ provider: ProviderName$1;
10894
+ model: string;
10895
+ }>;
10896
+ /** Construct a provider for an identity already resolved. */
10897
+ declare function constructProvider(config: GraphConfig, identity: {
10898
+ provider: ProviderName$1;
10899
+ model: string;
10900
+ }): InferenceProvider;
10901
+ /** Select, check, detect and construct: the provider `fill` sends pages to. */
10902
+ declare function makeProvider(config: GraphConfig, flags?: ProviderFlags): Promise<InferenceProvider>;
10903
+
10904
+ /** The graph tool's public API. */
10905
+
10906
+ type index$1_AgentKind = AgentKind;
10907
+ type index$1_AssembleOptions = AssembleOptions;
10908
+ type index$1_BuildOptions = BuildOptions;
10909
+ type index$1_BuildResult = BuildResult;
10910
+ declare const index$1_COVERAGE_FIELDS: typeof COVERAGE_FIELDS;
10911
+ declare const index$1_COVERAGE_FIELD_NAMES: typeof COVERAGE_FIELD_NAMES;
10912
+ type index$1_Citation = Citation;
10913
+ declare const index$1_CompleteJSONRequest: typeof CompleteJSONRequest;
10914
+ declare const index$1_CompleteJSONResponse: typeof CompleteJSONResponse;
10915
+ type index$1_ContentFile = ContentFile;
10916
+ type index$1_ContentResolver = ContentResolver;
10917
+ type index$1_ContextBlock = ContextBlock;
10918
+ type index$1_CoverageField = CoverageField;
10919
+ type index$1_CoverageRow = CoverageRow;
10920
+ declare const index$1_DEFAULT_MODEL: typeof DEFAULT_MODEL;
10921
+ type index$1_DeriveOptions = DeriveOptions;
10922
+ type index$1_DeriveSource = DeriveSource;
10923
+ type index$1_Direction = Direction;
10924
+ type index$1_DocImage = DocImage;
10925
+ type index$1_DocLink = DocLink;
10926
+ type index$1_DocModel = DocModel;
10927
+ type index$1_DocumentInputOptions = DocumentInputOptions;
10928
+ type index$1_DocumentSetOptions = DocumentSetOptions;
10929
+ type index$1_EmbedOptions = EmbedOptions;
10930
+ type index$1_EmbedReport = EmbedReport;
10931
+ type index$1_EmbedRole = EmbedRole;
10932
+ type index$1_Embedder = Embedder;
10933
+ type index$1_EmbedderUnavailableError = EmbedderUnavailableError;
10934
+ declare const index$1_EmbedderUnavailableError: typeof EmbedderUnavailableError;
10935
+ type index$1_EntryCandidate = EntryCandidate;
10936
+ type index$1_EntryRankings = EntryRankings;
10937
+ type index$1_EntryResult = EntryResult;
10938
+ type index$1_EntryVia = EntryVia;
10939
+ type index$1_ExportFormat = ExportFormat;
10940
+ type index$1_ExportOptions = ExportOptions;
10941
+ type index$1_ExportResult = ExportResult;
10942
+ declare const index$1_FRONTMATTER_SCHEMA_ID: typeof FRONTMATTER_SCHEMA_ID;
10943
+ type index$1_FetchResolverOptions = FetchResolverOptions;
10944
+ type index$1_FillDocResult = FillDocResult;
10945
+ type index$1_FillField = FillField;
10946
+ type index$1_FillOptions = FillOptions;
10947
+ type index$1_FillReport = FillReport;
10948
+ type index$1_FindEntryOptions = FindEntryOptions;
10949
+ declare const index$1_GRAPH_NOT_APPLICABLE_TO_VARIANT: typeof GRAPH_NOT_APPLICABLE_TO_VARIANT;
10950
+ declare const index$1_GRAPH_NOT_SOFTWARE_SUBJECT: typeof GRAPH_NOT_SOFTWARE_SUBJECT;
10951
+ type index$1_GitFileHistory = GitFileHistory;
10952
+ type index$1_GitHistory = GitHistory;
10953
+ type index$1_GraphApplyOptions = GraphApplyOptions;
10954
+ type index$1_GraphApplyResult = GraphApplyResult;
10955
+ type index$1_GraphConfig = GraphConfig;
10956
+ type index$1_GraphError = GraphError;
10957
+ declare const index$1_GraphError: typeof GraphError;
10958
+ type index$1_GraphIndex = GraphIndex;
10959
+ declare const index$1_GraphIndex: typeof GraphIndex;
10960
+ type index$1_GraphNode = GraphNode;
10961
+ type index$1_Hop = Hop;
10962
+ type index$1_IirdsPackageOptions = IirdsPackageOptions;
10963
+ declare const index$1_InferenceProvider: typeof InferenceProvider;
10964
+ declare const index$1_LOCALIZATIONS_FILENAME: typeof LOCALIZATIONS_FILENAME;
10965
+ type index$1_LexicalIndex = LexicalIndex;
10966
+ type index$1_LexicalSearchOptions = LexicalSearchOptions;
10967
+ type index$1_LocalEmbedderOptions = LocalEmbedderOptions;
10968
+ type index$1_LocalizationEntry = LocalizationEntry;
10969
+ type index$1_LocalizationsDoc = LocalizationsDoc;
10970
+ declare const index$1_MODEL_PROFILES: typeof MODEL_PROFILES;
10971
+ type index$1_MockEmbedderOptions = MockEmbedderOptions;
10972
+ declare const index$1_MockProvider: typeof MockProvider;
10973
+ declare const index$1_MockResponse: typeof MockResponse;
10974
+ type index$1_ModelProfile = ModelProfile;
10975
+ declare const index$1_NS: typeof NS;
10976
+ declare const index$1_PREFIXES: typeof PREFIXES;
10977
+ type index$1_PackageProjection = PackageProjection;
10978
+ type index$1_ProviderChoice = ProviderChoice;
10979
+ type index$1_ProviderFlags = ProviderFlags;
10980
+ type index$1_ProviderSelection = ProviderSelection;
10981
+ type index$1_Quad = Quad;
10982
+ type index$1_QueryEmbedder = QueryEmbedder;
10983
+ type index$1_QueryOptions = QueryOptions;
10984
+ type index$1_QueryResult = QueryResult;
10985
+ type index$1_QueryTrace = QueryTrace;
10986
+ type index$1_RdfQuad = RdfQuad;
10987
+ type index$1_RdfTerm = RdfTerm;
10988
+ type index$1_Refusal = Refusal;
10989
+ type index$1_RefusalReason = RefusalReason;
10990
+ type index$1_Resolution = Resolution;
10991
+ type index$1_ResolvedContent = ResolvedContent;
10992
+ type index$1_RetrievalBundle = RetrievalBundle;
10993
+ declare const index$1_SECTION_COVERAGE_FIELDS: typeof SECTION_COVERAGE_FIELDS;
10994
+ declare const index$1_SOFTWARE_LIFECYCLE_IRIS: typeof SOFTWARE_LIFECYCLE_IRIS;
10995
+ declare const index$1_SOFTWARE_SUBJECT_IRIS: typeof SOFTWARE_SUBJECT_IRIS;
10996
+ type index$1_ScopeExclusion = ScopeExclusion;
10997
+ type index$1_ScopeFilter = ScopeFilter;
10998
+ type index$1_SearchArtifact = SearchArtifact;
10999
+ type index$1_SearchEntry = SearchEntry;
11000
+ type index$1_SearchHit = SearchHit;
11001
+ type index$1_SearchIndexDoc = SearchIndexDoc;
11002
+ type index$1_SearchIndexOptions = SearchIndexOptions;
11003
+ type index$1_SearchOptions = SearchOptions;
11004
+ type index$1_SearchReport = SearchReport;
11005
+ type index$1_Section = Section;
11006
+ type index$1_StatsOptions = StatsOptions;
11007
+ type index$1_StatsReport = StatsReport;
11008
+ declare const index$1_TOPIC_TYPE_IRIS: typeof TOPIC_TYPE_IRIS;
11009
+ type index$1_Term = Term;
11010
+ type index$1_TraverseReport = TraverseReport;
11011
+ type index$1_TraverseResult = TraverseResult;
11012
+ type index$1_TraversedNode = TraversedNode;
11013
+ declare const index$1_UNDETERMINED: typeof UNDETERMINED;
11014
+ type index$1_Value = Value;
11015
+ type index$1_VectorArtifact = VectorArtifact;
11016
+ type index$1_VectorIndex = VectorIndex;
11017
+ type index$1_VectorIndexDoc = VectorIndexDoc;
11018
+ type index$1_VectorIndexError = VectorIndexError;
11019
+ declare const index$1_VectorIndexError: typeof VectorIndexError;
11020
+ type index$1_VectorIndexHeader = VectorIndexHeader;
11021
+ type index$1_VectorMismatch = VectorMismatch;
11022
+ type index$1_VectorMismatchError = VectorMismatchError;
11023
+ declare const index$1_VectorMismatchError: typeof VectorMismatchError;
11024
+ type index$1_VectorSearchOptions = VectorSearchOptions;
11025
+ type index$1_ZipEntry = ZipEntry;
11026
+ declare const index$1_analyzeDoc: typeof analyzeDoc;
11027
+ declare const index$1_applyGraphFields: typeof applyGraphFields;
11028
+ declare const index$1_assemble: typeof assemble;
11029
+ declare const index$1_assertProviderSelection: typeof assertProviderSelection;
11030
+ declare const index$1_buildSearchIndex: typeof buildSearchIndex;
11031
+ declare const index$1_collectGitHistory: typeof collectGitHistory;
11032
+ declare const index$1_compactIri: typeof compactIri;
11033
+ declare const index$1_conceptSlug: typeof conceptSlug;
11034
+ declare const index$1_constructProvider: typeof constructProvider;
11035
+ declare const index$1_createFetchResolver: typeof createFetchResolver;
11036
+ declare const index$1_createLexicalIndex: typeof createLexicalIndex;
11037
+ declare const index$1_createLocalEmbedder: typeof createLocalEmbedder;
11038
+ declare const index$1_createMockEmbedder: typeof createMockEmbedder;
11039
+ declare const index$1_createTrace: typeof createTrace;
11040
+ declare const index$1_createVectorIndex: typeof createVectorIndex;
11041
+ declare const index$1_decodeVectorIndex: typeof decodeVectorIndex;
11042
+ declare const index$1_defaultConfig: typeof defaultConfig;
11043
+ declare const index$1_defaultGraph: typeof defaultGraph;
11044
+ declare const index$1_deriveGraph: typeof deriveGraph;
11045
+ declare const index$1_discoverFiles: typeof discoverFiles;
11046
+ declare const index$1_documentPreamble: typeof documentPreamble;
11047
+ declare const index$1_documentSectionOrder: typeof documentSectionOrder;
11048
+ declare const index$1_documentsByLanguage: typeof documentsByLanguage;
11049
+ declare const index$1_embedText: typeof embedText;
11050
+ declare const index$1_emitJsonLd: typeof emitJsonLd;
11051
+ declare const index$1_emitLocalizations: typeof emitLocalizations;
11052
+ declare const index$1_emitRdfXml: typeof emitRdfXml;
11053
+ declare const index$1_emitSearchIndex: typeof emitSearchIndex;
11054
+ declare const index$1_emitTurtle: typeof emitTurtle;
11055
+ declare const index$1_encodeSegment: typeof encodeSegment;
11056
+ declare const index$1_encodeVectorIndex: typeof encodeVectorIndex;
11057
+ declare const index$1_existingGraphFields: typeof existingGraphFields;
11058
+ declare const index$1_existingMetaProvenance: typeof existingMetaProvenance;
11059
+ declare const index$1_expandTerm: typeof expandTerm;
11060
+ declare const index$1_findEntry: typeof findEntry;
11061
+ declare const index$1_frontmatterKind: typeof frontmatterKind;
11062
+ declare const index$1_frontmatterSchema: typeof frontmatterSchema;
11063
+ declare const index$1_impact: typeof impact;
11064
+ declare const index$1_literal: typeof literal;
8820
11065
  declare const index$1_loadConfig: typeof loadConfig;
8821
- declare const index$1_loadTemplate: typeof loadTemplate;
8822
- declare const index$1_loadTemplateFile: typeof loadTemplateFile;
8823
- declare const index$1_matchSections: typeof matchSections;
8824
- declare const index$1_occurrenceRange: typeof occurrenceRange;
8825
- declare const index$1_palette: typeof palette;
11066
+ declare const index$1_loadGraph: typeof loadGraph;
11067
+ declare const index$1_loadRunConfig: typeof loadRunConfig;
11068
+ declare const index$1_makeProvider: typeof makeProvider;
11069
+ declare const index$1_matchQuads: typeof matchQuads;
11070
+ declare const index$1_mintAgentIri: typeof mintAgentIri;
11071
+ declare const index$1_mintBuildActivityIri: typeof mintBuildActivityIri;
11072
+ declare const index$1_mintConceptIri: typeof mintConceptIri;
11073
+ declare const index$1_mintDocIri: typeof mintDocIri;
11074
+ declare const index$1_mintGraphIri: typeof mintGraphIri;
11075
+ declare const index$1_mintProductIri: typeof mintProductIri;
11076
+ declare const index$1_mintSchemeIri: typeof mintSchemeIri;
11077
+ declare const index$1_mintSectionIri: typeof mintSectionIri;
11078
+ declare const index$1_namedNode: typeof namedNode;
11079
+ declare const index$1_normalize: typeof normalize;
11080
+ declare const index$1_normalizeDocPath: typeof normalizeDocPath;
8826
11081
  declare const index$1_parseConfig: typeof parseConfig;
8827
- declare const index$1_parserByName: typeof parserByName;
8828
- declare const index$1_parserForExtension: typeof parserForExtension;
8829
- declare const index$1_rebaseConfig: typeof rebaseConfig;
8830
- declare const index$1_render: typeof render;
8831
- declare const index$1_renderGithub: typeof renderGithub;
8832
- declare const index$1_renderJson: typeof renderJson;
8833
- declare const index$1_renderJunit: typeof renderJunit;
8834
- declare const index$1_renderPretty: typeof renderPretty;
8835
- declare const index$1_renderSarif: typeof renderSarif;
8836
- declare const index$1_renderTemplates: typeof renderTemplates;
8837
- declare const index$1_renderTools: typeof renderTools;
8838
- declare const index$1_resolveExtends: typeof resolveExtends;
8839
- declare const index$1_resolveLintRun: typeof resolveLintRun;
8840
- declare const index$1_ruleId: typeof ruleId;
8841
- declare const index$1_ruleName: typeof ruleName;
8842
- declare const index$1_runLint: typeof runLint;
8843
- declare const index$1_runTemplates: typeof runTemplates;
8844
- declare const index$1_runTools: typeof runTools;
8845
- declare const index$1_shouldColor: typeof shouldColor;
8846
- declare const index$1_supportedExtensions: typeof supportedExtensions;
8847
- declare const index$1_validateDocument: typeof validateDocument;
8848
- declare const index$1_validateSections: typeof validateSections;
11082
+ declare const index$1_parseLocalizations: typeof parseLocalizations;
11083
+ declare const index$1_partitionByLanguage: typeof partitionByLanguage;
11084
+ declare const index$1_profileFor: typeof profileFor;
11085
+ declare const index$1_projectPackage: typeof projectPackage;
11086
+ declare const index$1_providerSpecFor: typeof providerSpecFor;
11087
+ declare const index$1_rdfjsQuads: typeof rdfjsQuads;
11088
+ declare const index$1_reachedNodes: typeof reachedNodes;
11089
+ declare const index$1_renderEmbed: typeof renderEmbed;
11090
+ declare const index$1_renderSearch: typeof renderSearch;
11091
+ declare const index$1_renderTraverse: typeof renderTraverse;
11092
+ declare const index$1_resolveBaseIri: typeof resolveBaseIri;
11093
+ declare const index$1_resolveDocumentSet: typeof resolveDocumentSet;
11094
+ declare const index$1_resolveProviderIdentity: typeof resolveProviderIdentity;
11095
+ declare const index$1_resolveSubject: typeof resolveSubject;
11096
+ declare const index$1_resolveVariant: typeof resolveVariant;
11097
+ declare const index$1_reverseReferences: typeof reverseReferences;
11098
+ declare const index$1_rrfMerge: typeof rrfMerge;
11099
+ declare const index$1_runBuild: typeof runBuild;
11100
+ declare const index$1_runEmbed: typeof runEmbed;
11101
+ declare const index$1_runExport: typeof runExport;
11102
+ declare const index$1_runFill: typeof runFill;
11103
+ declare const index$1_runQuery: typeof runQuery;
11104
+ declare const index$1_runSearch: typeof runSearch;
11105
+ declare const index$1_runStats: typeof runStats;
11106
+ declare const index$1_runTraverse: typeof runTraverse;
11107
+ declare const index$1_scopeExclusion: typeof scopeExclusion;
11108
+ declare const index$1_searchIndexDigest: typeof searchIndexDigest;
11109
+ declare const index$1_searchIndexFilename: typeof searchIndexFilename;
11110
+ declare const index$1_sectionOccurrence: typeof sectionOccurrence;
11111
+ declare const index$1_sectionOccurrences: typeof sectionOccurrences;
11112
+ declare const index$1_sectionOwnText: typeof sectionOwnText;
11113
+ declare const index$1_selectProvider: typeof selectProvider;
11114
+ declare const index$1_sliceSection: typeof sliceSection;
11115
+ declare const index$1_splitFragment: typeof splitFragment;
11116
+ declare const index$1_storeToQuads: typeof storeToQuads;
11117
+ declare const index$1_traverse: typeof traverse;
11118
+ declare const index$1_vectorIndexFilename: typeof vectorIndexFilename;
11119
+ declare const index$1_withPrefix: typeof withPrefix;
11120
+ declare const index$1_writeZip: typeof writeZip;
8849
11121
  declare namespace index$1 {
8850
- export { type index$1_AdmonitionNode as AdmonitionNode, type index$1_AdmonitionsRule as AdmonitionsRule, type index$1_AttributesRule as AttributesRule, index$1_BLOCK_KINDS as BLOCK_KINDS, index$1_BUILTIN_SOURCE as BUILTIN_SOURCE, index$1_BUILT_IN_DEFAULTS as BUILT_IN_DEFAULTS, type index$1_BlockKind as BlockKind, type index$1_BlockRule as BlockRule, type index$1_BlockquoteNode as BlockquoteNode, type index$1_BuiltinInfo as BuiltinInfo, type index$1_CodeBlocksRule as CodeBlocksRule, type index$1_CodeNode as CodeNode, type index$1_ContentKind as ContentKind, type index$1_ContentNode as ContentNode, type index$1_ContentNodeBase as ContentNodeBase, type index$1_DefinitionItemNode as DefinitionItemNode, type index$1_DefinitionListNode as DefinitionListNode, type index$1_DocumentParser as DocumentParser, type index$1_DocumentTree as DocumentTree, type index$1_ElementNode as ElementNode, type index$1_ElementsRule as ElementsRule, type index$1_FileResult as FileResult, type index$1_Finding as Finding, type index$1_FormatInfo as FormatInfo, type index$1_HeadingRule as HeadingRule, type index$1_ImageNode as ImageNode, type index$1_ImagesRule as ImagesRule, index$1_LINT_JOBS as LINT_JOBS, index$1_LINT_TOOLS as LINT_TOOLS, type index$1_LintConfig as LintConfig, index$1_LintError as LintError, type index$1_LintFileResult as LintFileResult, type index$1_LintJob as LintJob, type index$1_LintJobConfig as LintJobConfig, type index$1_LintOptions as LintOptions, type index$1_LintRun as LintRun, type index$1_LintRunOptions as LintRunOptions, type index$1_LintSummary as LintSummary, type index$1_LintTool as LintTool, type index$1_ListFormat as ListFormat, type index$1_ListItemNode as ListItemNode, type index$1_ListItemsRule as ListItemsRule, type index$1_ListNode as ListNode, type index$1_ListsRule as ListsRule, type index$1_LoadTemplateOptions as LoadTemplateOptions, type index$1_Match as Match, type index$1_MatchResult as MatchResult, type index$1_Occurrences as Occurrences, type index$1_ParagraphNode as ParagraphNode, type index$1_ParagraphsRule as ParagraphsRule, type index$1_Point as Point, type index$1_Position as Position, index$1_RULE_ID_PREFIX as RULE_ID_PREFIX, type index$1_RefKind as RefKind, type index$1_ReportFormat as ReportFormat, type index$1_ReportOptions as ReportOptions, type index$1_ResolvedLintRun as ResolvedLintRun, type index$1_Rule as Rule, index$1_STDIN_LABEL as STDIN_LABEL, index$1_STDIN_TOKEN as STDIN_TOKEN, type index$1_SarifOptions as SarifOptions, type index$1_SectionNode as SectionNode, type index$1_Severity as Severity, type index$1_SkipReason as SkipReason, index$1_TOOLS_BY_JOB as TOOLS_BY_JOB, index$1_TOOL_NAME as TOOL_NAME, type index$1_TableCellNode as TableCellNode, type index$1_TableNode as TableNode, type index$1_TableRowNode as TableRowNode, type index$1_TablesRule as TablesRule, type index$1_Template as Template, type index$1_TemplateFile as TemplateFile, type index$1_TemplateInfo as TemplateInfo, type index$1_TemplateResolver as TemplateResolver, type index$1_TemplatesInfo as TemplatesInfo, type index$1_TemplatesOptions as TemplatesOptions, type index$1_ToolInfo as ToolInfo, type index$1_ToolsOptions as ToolsOptions, index$1_classifyRef as classifyRef, index$1_clearCaches as clearCaches, index$1_headingMatches as headingMatches, index$1_isLintTool as isLintTool, index$1_isWildcard as isWildcard, index$1_listBuiltins as listBuiltins, index$1_listFormats as listFormats, index$1_loadConfig as loadConfig, index$1_loadTemplate as loadTemplate, index$1_loadTemplateFile as loadTemplateFile, index$1_matchSections as matchSections, index$1_occurrenceRange as occurrenceRange, index$1_palette as palette, index$1_parseConfig as parseConfig, index$1_parserByName as parserByName, index$1_parserForExtension as parserForExtension, index$1_rebaseConfig as rebaseConfig, index$1_render as render, index$1_renderGithub as renderGithub, index$1_renderJson as renderJson, index$1_renderJunit as renderJunit, index$1_renderPretty as renderPretty, index$1_renderSarif as renderSarif, index$1_renderTemplates as renderTemplates, index$1_renderTools as renderTools, index$1_resolveExtends as resolveExtends, index$1_resolveLintRun as resolveLintRun, index$1_ruleId as ruleId, index$1_ruleName as ruleName, index$1_runLint as runLint, index$1_runTemplates as runTemplates, index$1_runTools as runTools, index$1_shouldColor as shouldColor, index$1_supportedExtensions as supportedExtensions, index$1_validateDocument as validateDocument, index$1_validateSections as validateSections };
11122
+ export { type index$1_AgentKind as AgentKind, type index$1_AssembleOptions as AssembleOptions, type index$1_BuildOptions as BuildOptions, type index$1_BuildResult as BuildResult, index$1_COVERAGE_FIELDS as COVERAGE_FIELDS, index$1_COVERAGE_FIELD_NAMES as COVERAGE_FIELD_NAMES, type index$1_Citation as Citation, index$1_CompleteJSONRequest as CompleteJSONRequest, index$1_CompleteJSONResponse as CompleteJSONResponse, type index$1_ContentFile as ContentFile, type index$1_ContentResolver as ContentResolver, type index$1_ContextBlock as ContextBlock, type index$1_CoverageField as CoverageField, type index$1_CoverageRow as CoverageRow, index$1_DEFAULT_MODEL as DEFAULT_MODEL, type index$1_DeriveOptions as DeriveOptions, type index$1_DeriveSource as DeriveSource, type index$1_Direction as Direction, type index$1_DocImage as DocImage, type index$1_DocLink as DocLink, type index$1_DocModel as DocModel, type index$1_DocumentInputOptions as DocumentInputOptions, type index$1_DocumentSetOptions as DocumentSetOptions, type index$1_EmbedOptions as EmbedOptions, type index$1_EmbedReport as EmbedReport, type index$1_EmbedRole as EmbedRole, type index$1_Embedder as Embedder, index$1_EmbedderUnavailableError as EmbedderUnavailableError, type index$1_EntryCandidate as EntryCandidate, type index$1_EntryRankings as EntryRankings, type index$1_EntryResult as EntryResult, type index$1_EntryVia as EntryVia, type index$1_ExportFormat as ExportFormat, type index$1_ExportOptions as ExportOptions, type index$1_ExportResult as ExportResult, index$1_FRONTMATTER_SCHEMA_ID as FRONTMATTER_SCHEMA_ID, type index$1_FetchResolverOptions as FetchResolverOptions, type index$1_FillDocResult as FillDocResult, type index$1_FillField as FillField, type index$1_FillOptions as FillOptions, type index$1_FillReport as FillReport, type index$1_FindEntryOptions as FindEntryOptions, index$1_GRAPH_NOT_APPLICABLE_TO_VARIANT as GRAPH_NOT_APPLICABLE_TO_VARIANT, index$1_GRAPH_NOT_SOFTWARE_SUBJECT as GRAPH_NOT_SOFTWARE_SUBJECT, type index$1_GitFileHistory as GitFileHistory, type index$1_GitHistory as GitHistory, type index$1_GraphApplyOptions as GraphApplyOptions, type index$1_GraphApplyResult as GraphApplyResult, type index$1_GraphConfig as GraphConfig, index$1_GraphError as GraphError, index$1_GraphIndex as GraphIndex, type index$1_GraphNode as GraphNode, type index$1_Hop as Hop, type index$1_IirdsPackageOptions as IirdsPackageOptions, index$1_InferenceProvider as InferenceProvider, index$1_LOCALIZATIONS_FILENAME as LOCALIZATIONS_FILENAME, type index$1_LexicalIndex as LexicalIndex, type index$1_LexicalSearchOptions as LexicalSearchOptions, type index$1_LocalEmbedderOptions as LocalEmbedderOptions, type index$1_LocalizationEntry as LocalizationEntry, type index$1_LocalizationsDoc as LocalizationsDoc, index$1_MODEL_PROFILES as MODEL_PROFILES, type index$1_MockEmbedderOptions as MockEmbedderOptions, index$1_MockProvider as MockProvider, index$1_MockResponse as MockResponse, type index$1_ModelProfile as ModelProfile, index$1_NS as NS, index$1_PREFIXES as PREFIXES, type index$1_PackageProjection as PackageProjection, type index$1_ProviderChoice as ProviderChoice, type index$1_ProviderFlags as ProviderFlags, type index$1_ProviderSelection as ProviderSelection, type index$1_Quad as Quad, type index$1_QueryEmbedder as QueryEmbedder, type index$1_QueryOptions as QueryOptions, type index$1_QueryResult as QueryResult, type index$1_QueryTrace as QueryTrace, type index$1_RdfQuad as RdfQuad, type index$1_RdfTerm as RdfTerm, type index$1_Refusal as Refusal, type index$1_RefusalReason as RefusalReason, type index$1_Resolution as Resolution, type index$1_ResolvedContent as ResolvedContent, type index$1_RetrievalBundle as RetrievalBundle, index$1_SECTION_COVERAGE_FIELDS as SECTION_COVERAGE_FIELDS, index$1_SOFTWARE_LIFECYCLE_IRIS as SOFTWARE_LIFECYCLE_IRIS, index$1_SOFTWARE_SUBJECT_IRIS as SOFTWARE_SUBJECT_IRIS, type index$1_ScopeExclusion as ScopeExclusion, type index$1_ScopeFilter as ScopeFilter, type index$1_SearchArtifact as SearchArtifact, type index$1_SearchEntry as SearchEntry, type index$1_SearchHit as SearchHit, type index$1_SearchIndexDoc as SearchIndexDoc, type index$1_SearchIndexOptions as SearchIndexOptions, type index$1_SearchOptions as SearchOptions, type index$1_SearchReport as SearchReport, type index$1_Section as Section, type index$1_StatsOptions as StatsOptions, type index$1_StatsReport as StatsReport, index$1_TOPIC_TYPE_IRIS as TOPIC_TYPE_IRIS, type index$1_Term as Term, type TraverseOptions as TraverseCommandOptions, type TraverseOptions$1 as TraverseOptions, type index$1_TraverseReport as TraverseReport, type index$1_TraverseResult as TraverseResult, type index$1_TraversedNode as TraversedNode, index$1_UNDETERMINED as UNDETERMINED, type index$1_Value as Value, type index$1_VectorArtifact as VectorArtifact, type index$1_VectorIndex as VectorIndex, type index$1_VectorIndexDoc as VectorIndexDoc, index$1_VectorIndexError as VectorIndexError, type index$1_VectorIndexHeader as VectorIndexHeader, type index$1_VectorMismatch as VectorMismatch, index$1_VectorMismatchError as VectorMismatchError, type index$1_VectorSearchOptions as VectorSearchOptions, type index$1_ZipEntry as ZipEntry, index$1_analyzeDoc as analyzeDoc, index$1_applyGraphFields as applyGraphFields, index$1_assemble as assemble, index$1_assertProviderSelection as assertProviderSelection, index$1_buildSearchIndex as buildSearchIndex, index$1_collectGitHistory as collectGitHistory, index$1_compactIri as compactIri, index$1_conceptSlug as conceptSlug, index$1_constructProvider as constructProvider, index$1_createFetchResolver as createFetchResolver, index$1_createLexicalIndex as createLexicalIndex, index$1_createLocalEmbedder as createLocalEmbedder, index$1_createMockEmbedder as createMockEmbedder, index$1_createTrace as createTrace, index$1_createVectorIndex as createVectorIndex, index$1_decodeVectorIndex as decodeVectorIndex, index$1_defaultConfig as defaultConfig, index$1_defaultGraph as defaultGraph, index$1_deriveGraph as deriveGraph, index$1_discoverFiles as discoverFiles, index$1_documentPreamble as documentPreamble, index$1_documentSectionOrder as documentSectionOrder, index$1_documentsByLanguage as documentsByLanguage, index$1_embedText as embedText, index$1_emitJsonLd as emitJsonLd, index$1_emitLocalizations as emitLocalizations, index$1_emitRdfXml as emitRdfXml, index$1_emitSearchIndex as emitSearchIndex, index$1_emitTurtle as emitTurtle, index$1_encodeSegment as encodeSegment, index$1_encodeVectorIndex as encodeVectorIndex, index$1_existingGraphFields as existingGraphFields, index$1_existingMetaProvenance as existingMetaProvenance, index$1_expandTerm as expandTerm, index$1_findEntry as findEntry, index$1_frontmatterKind as frontmatterKind, index$1_frontmatterSchema as frontmatterSchema, index$1_impact as impact, index$1_literal as literal, index$1_loadConfig as loadConfig, index$1_loadGraph as loadGraph, index$1_loadRunConfig as loadRunConfig, index$1_makeProvider as makeProvider, index$1_matchQuads as matchQuads, index$1_mintAgentIri as mintAgentIri, index$1_mintBuildActivityIri as mintBuildActivityIri, index$1_mintConceptIri as mintConceptIri, index$1_mintDocIri as mintDocIri, index$1_mintGraphIri as mintGraphIri, index$1_mintProductIri as mintProductIri, index$1_mintSchemeIri as mintSchemeIri, index$1_mintSectionIri as mintSectionIri, index$1_namedNode as namedNode, index$1_normalize as normalize, index$1_normalizeDocPath as normalizeDocPath, index$1_parseConfig as parseConfig, index$1_parseLocalizations as parseLocalizations, index$1_partitionByLanguage as partitionByLanguage, index$1_profileFor as profileFor, index$1_projectPackage as projectPackage, index$1_providerSpecFor as providerSpecFor, index$1_rdfjsQuads as rdfjsQuads, index$1_reachedNodes as reachedNodes, index$1_renderEmbed as renderEmbed, index$1_renderSearch as renderSearch, index$1_renderTraverse as renderTraverse, index$1_resolveBaseIri as resolveBaseIri, index$1_resolveDocumentSet as resolveDocumentSet, index$1_resolveProviderIdentity as resolveProviderIdentity, index$1_resolveSubject as resolveSubject, index$1_resolveVariant as resolveVariant, index$1_reverseReferences as reverseReferences, index$1_rrfMerge as rrfMerge, index$1_runBuild as runBuild, index$1_runEmbed as runEmbed, index$1_runExport as runExport, index$1_runFill as runFill, index$1_runQuery as runQuery, index$1_runSearch as runSearch, index$1_runStats as runStats, index$1_runTraverse as runTraverse, index$1_scopeExclusion as scopeExclusion, index$1_searchIndexDigest as searchIndexDigest, index$1_searchIndexFilename as searchIndexFilename, index$1_sectionOccurrence as sectionOccurrence, index$1_sectionOccurrences as sectionOccurrences, index$1_sectionOwnText as sectionOwnText, index$1_selectProvider as selectProvider, index$1_sliceSection as sliceSection, index$1_splitFragment as splitFragment, index$1_storeToQuads as storeToQuads, index$1_traverse as traverse, index$1_vectorIndexFilename as vectorIndexFilename, index$1_withPrefix as withPrefix, index$1_writeZip as writeZip };
8851
11123
  }
8852
11124
 
8853
11125
  /**
@@ -9101,4 +11373,4 @@ declare namespace index {
9101
11373
  export { type index_EncryptionContext as EncryptionContext, index_KeyError as KeyError, type index_KeyRotateOptions as KeyRotateOptions, type index_KeyRotateResult as KeyRotateResult, type index_KeySetOptions as KeySetOptions, type index_KeySetResult as KeySetResult, type index_KeySource as KeySource, type index_ResolvedKey as ResolvedKey, type index_RotateManifest as RotateManifest, type index_RotateOutcome as RotateOutcome, type index_RotatePage as RotatePage, type index_RotatedCitation as RotatedCitation, type index_RotatedManifestValue as RotatedManifestValue, type index_RotatedMetadata as RotatedMetadata, type index_RotatedValue as RotatedValue, type index_SkippedCitation as SkippedCitation, type index_SkippedManifestValue as SkippedManifestValue, type index_SkippedMetadata as SkippedMetadata, type index_SkippedValue as SkippedValue, index_decryptValue as decryptValue, index_encryptValue as encryptValue, index_isEncryptedValue as isEncryptedValue, index_resolveEncryptionKey as resolveEncryptionKey, index_runKeyRotate as runKeyRotate, index_runKeySet as runKeySet };
9102
11374
  }
9103
11375
 
9104
- export { type ApplyOptions, type Approval, type BaselineSummary, BinMissing, type BuiltinDerivableField, COMMON_FORMATS, type CheckConfig, type CollectionConfig, type CommandSourceOptions, type CommandSourceResult, type CommonFormat, type ConfigNotice, DEFAULT_SCHEMAS, DEFAULT_TTL_HOURS, DEFAULT_VENDOR_DIR, DERIVABLE_FIELDS, DERIVED_KEYWORD, DERIVED_STALE_SCHEMA, DERIVE_FORMATS, DERIVE_SOURCES, type DerivableField, type DeriveCommand, type DeriveCommandConfig, type DeriveConfig, type DeriveContext, type DeriveFileResult, type DeriveInput, type DeriveOptions, type DeriveReportFormat, type DeriveReportOptions, type DeriveResult, type DeriveRun, type DeriveSource, type DeriveSummary, type DerivedField, type DerivedRecord, type DerivedStatus, type DerivedValue, type DocmetaConfig, DocmetaError, type DocumentRefTrust, EXTERNAL_DUPLICATE_SCHEMA, EXTERNAL_KEYWORD, EXTERNAL_METADATA_FETCH_MAX_BYTES, EXTERNAL_METADATA_FETCH_TIMEOUT_MS, EXTERNAL_OWNED_SCHEMA, type ExternalMetadataCollision, type ExternalMetadataConfig, type ExternalMetadataEntry, type ExternalMetadataFetchOptions, type ExternalMetadataIndex, type ExternalMetadataJoin, type ExternalMetadataValue, type ExtractOptions, type ExtractedMetadata, FIELD_SOURCES, FILL_FORMATS, type FetchedSchema, type FieldError, type FieldLocation, type FillConfig, type FillFileResult, type FillOptions$1 as FillOptions, type FillReportFormat, type FillReportOptions, type FillRun, type FillSummary, type FilledField, type FingerprintContext, type FrontmatterFlavor, type FrontmatterLocation, type GetFileResult, type GetOptions, type GetReportOptions, GitHubClient, GitLabClient, INTEGRITY_SHAPE, type JunitOptions, LOCATION_KEYWORD, type LoadExternalMetadataOptions, type LoadSchemaOptions, type LoadedConfig, type LocationPreference, MERGE_SAFE_FIELDS, type MergedChange, type MergedMetadata, type MetadataExtractor, type MetadataPatch, PATH_JOIN, PATH_PLACEHOLDER, QUERY_FORMATS, type QueryChange, type QueryFormat, type QueryOptions, type QueryReportOptions, type QueryRun, REPORT_FORMATS$1 as REPORT_FORMATS, RESOLVED_VIEW, REVIEW_CACHE_DIR, REVIEW_CACHE_VERSION, type ReadOptions, type ReencryptMetadataResult, type ReencryptedValue, type RegisteredSchema, type RegisteredSchemas, type RelocateOptions, type RelocateResult, type RemoteIdentity, type ReportFormat$2 as ReportFormat, type ReportOptions$1 as ReportOptions, ReviewCache, type ReviewClient, type ReviewFacts, type ReviewSourceInput, type ReviewSourceResult, type Run, type RunConfig, type RunConfigOptions, type RunSummary, SCHEMA_CACHE_DIR, SCHEMA_CACHE_VERSION, type SarifOptions$1 as SarifOptions, SchemaCache, type SchemaCacheConfig, type SchemaCacheEntry, type SchemaEntry, type SchemaPin, type SchemaRefEntry, type SchemaTrustConfig, type SkipReason$1 as SkipReason, type SourceLocation, type SourceStatus$1 as SourceStatus, type SpawnOptions, type ValidateOptions$1 as ValidateOptions, type ValidateRun, type ValidationResult, Validator, type VendorOptions, type VendorResult, applyFrontmatter, argvFor, assertSourcesAvailable, cachedClient, index$3 as cite, classifyRef$1 as classifyRef, collectSchemaPins, compareDerived, consultedSources, createResolvedView, createReviewClient, deriveFromCommands, deriveFromReviews, deriveMetadata, index$2 as docevals, externalMetadataJoin, externalMetadataPointer, externalMetadataUrlProblem, extractFrontmatter, extractorForExtension, fetchExternalMetadata, fetchSchemaBytes, frontmatterInnerText, getSchemasInfo, identityFromOrigin, integrityOf, isBuiltinField, isCommonFormat, isDeriveFormat, isDeriveSource, isErrorSeverity, isFillFormat, isIntegrity, isMember, isPerFile, isQueryFormat, isReportFormat, index as key, index$1 as lint, listBuiltins$1 as listBuiltins, loadConfig$2 as loadConfig, loadExternalMetadata, loadSchema, locateFrontmatter, memberOf, mentionsResolved, mergeExternalMetadata, orphanEntries, orphanError, orphanJoins, parseCollections, parseConfig$2 as parseConfig, parseOriginUrl, rebaseConfigSchemaRefs, reencryptMetadata, render$2 as render, renderDerive, renderFill$1 as renderFill, renderFillGithub, renderGet, renderJunit$1 as renderJunit, renderQuery, renderQueryCsv, renderSarif$1 as renderSarif, resolveRunConfig, resolveSchemaSet, resolvedColumns, run, runDerive, runFill$1 as runFill, runGet, runQuery, runRelocate, runValidate, runVendorSchema, schemaCacheDir, schemaEntryRef, schemaLoadOptions, selectCollections, sourcesFor, staleFindings, stringifyValue, supportedExtensions$1 as supportedExtensions, valueOf, vendorFileName, writeFileAtomic };
11376
+ export { type ApplyOptions, type Approval, type BaselineSummary, BinMissing, type BuiltinDerivableField, COMMON_FORMATS, type CheckConfig, type CollectionConfig, type CommandSourceOptions, type CommandSourceResult, type CommonFormat, type ConfigNotice, DEFAULT_SCHEMAS, DEFAULT_TTL_HOURS, DEFAULT_VENDOR_DIR, DERIVABLE_FIELDS, DERIVED_KEYWORD, DERIVED_STALE_SCHEMA, DERIVE_FORMATS, DERIVE_SOURCES, type DerivableField, type DeriveCommand, type DeriveCommandConfig, type DeriveConfig, type DeriveContext, type DeriveFileResult, type DeriveInput, type DeriveOptions$1 as DeriveOptions, type DeriveReportFormat, type DeriveReportOptions, type DeriveResult, type DeriveRun, type DeriveSource$1 as DeriveSource, type DeriveSummary, type DerivedField, type DerivedRecord, type DerivedStatus, type DerivedValue, type DocmetaConfig, DocmetaError, type DocumentRefTrust, EXTERNAL_DUPLICATE_SCHEMA, EXTERNAL_KEYWORD, EXTERNAL_METADATA_FETCH_MAX_BYTES, EXTERNAL_METADATA_FETCH_TIMEOUT_MS, EXTERNAL_OWNED_SCHEMA, type ExternalMetadataCollision, type ExternalMetadataConfig, type ExternalMetadataEntry, type ExternalMetadataFetchOptions, type ExternalMetadataIndex, type ExternalMetadataJoin, type ExternalMetadataValue, type ExtractOptions, type ExtractedMetadata, FIELD_SOURCES, FILL_FORMATS, type FetchedSchema, type FieldError, type FieldLocation, type FillConfig, type FillFileResult, type FillOptions$2 as FillOptions, type FillReportFormat, type FillReportOptions, type FillRun, type FillSummary, type FilledField, type FingerprintContext, type FrontmatterFlavor, type FrontmatterLocation, GRAPH_OUTPUT_KEYWORD, type GetFileResult, type GetOptions, type GetReportOptions, GitHubClient, GitLabClient, INTEGRITY_SHAPE, type JunitOptions, LOCATION_KEYWORD, type LoadExternalMetadataOptions, type LoadSchemaOptions, type LoadedConfig, type LocationPreference, MERGE_SAFE_FIELDS, type MergedChange, type MergedMetadata, type MetadataExtractor, type MetadataPatch, PATH_JOIN, PATH_PLACEHOLDER, QUERY_FORMATS, type QueryChange, type QueryFormat, type QueryOptions$1 as QueryOptions, type QueryReportOptions, type QueryRun, REPORT_FORMATS$1 as REPORT_FORMATS, RESOLVED_VIEW, REVIEW_CACHE_DIR, REVIEW_CACHE_VERSION, type ReadOptions, type ReencryptMetadataResult, type ReencryptedValue, type RegisteredSchema, type RegisteredSchemas, type RelocateOptions, type RelocateResult, type RemoteIdentity, type ReportFormat$2 as ReportFormat, type ReportOptions$1 as ReportOptions, ReviewCache, type ReviewClient, type ReviewFacts, type ReviewSourceInput, type ReviewSourceResult, type Run, type RunConfig, type RunConfigOptions$1 as RunConfigOptions, type RunSummary, SCHEMA_CACHE_DIR, SCHEMA_CACHE_VERSION, type SarifOptions$1 as SarifOptions, SchemaCache, type SchemaCacheConfig, type SchemaCacheEntry, type SchemaEntry, type SchemaPin, type SchemaRefEntry, type SchemaTrustConfig, type SkipReason$1 as SkipReason, type SourceLocation, type SourceStatus$1 as SourceStatus, type SpawnOptions, type ValidateOptions$1 as ValidateOptions, type ValidateRun, type ValidationResult, Validator, type VendorOptions, type VendorResult, applyFrontmatter, argvFor, assertSourcesAvailable, cachedClient, index$4 as cite, classifyRef$1 as classifyRef, collectSchemaPins, compareDerived, consultedSources, createResolvedView, createReviewClient, deriveFromCommands, deriveFromReviews, deriveMetadata, index$3 as docevals, externalMetadataJoin, externalMetadataPointer, externalMetadataUrlProblem, extractFrontmatter, extractorForExtension, fetchExternalMetadata, fetchSchemaBytes, frontmatterInnerText, getSchemasInfo, index$1 as graph, identityFromOrigin, integrityOf, isBuiltinField, isCommonFormat, isDeriveFormat, isDeriveSource, isErrorSeverity, isFillFormat, isIntegrity, isMember, isPerFile, isQueryFormat, isReportFormat, index as key, index$2 as lint, listBuiltins$1 as listBuiltins, loadConfig$3 as loadConfig, loadExternalMetadata, loadSchema, locateFrontmatter, memberOf, mentionsResolved, mergeExternalMetadata, orphanEntries, orphanError, orphanJoins, parseCollections, parseConfig$3 as parseConfig, parseOriginUrl, rebaseConfigSchemaRefs, reencryptMetadata, render$2 as render, renderDerive, renderFill$1 as renderFill, renderFillGithub, renderGet, renderJunit$1 as renderJunit, renderQuery, renderQueryCsv, renderSarif$1 as renderSarif, resolveRunConfig, resolveSchemaSet, resolvedColumns, run, runDerive, runFill$2 as runFill, runGet, runQuery$1 as runQuery, runRelocate, runValidate, runVendorSchema, schemaCacheDir, schemaEntryRef, schemaLoadOptions, selectCollections, sourcesFor, staleFindings, stringifyValue, supportedExtensions$1 as supportedExtensions, valueOf, vendorFileName, writeFileAtomic };