Skip to content

Rulvar API reference


Rulvar API reference / @rulvar/rulvar / ClaimPairOptions

Interface: ClaimPairOptions

Defined in: packages/core/dist/index.d.ts

Properties

PropertyTypeDescriptionDefined in
critical?readonly string[]Critical anchor declarations (RV1603): each entry is a path (packages/executor/src/ledger.ts, matching that file and anything under it as a directory) or an anchor with a span (src/exec.ts:250-300, matching same-file anchors intersecting the span). Pairs whose draft anchor matches sort FIRST, before the max cap applies, so a bounded pass judges the declared claims preferentially; the fold also reports which critical draft anchors ended up with no reported pair. Unset = the exact pre-RV1603 ordering, byte for byte (the eighteenth comparison benchmark's judge saw 40 of 144 citing sentences with nothing steering WHICH 40).packages/core/dist/index.d.ts
max?numberBound on returned pairs; default DEFAULT_MAX_CLAIM_PAIRS.packages/core/dist/index.d.ts
maxExcerptChars?numberBound on each excerpt; default DEFAULT_MAX_PAIR_EXCERPT_CHARS.packages/core/dist/index.d.ts
maxPoolPerPair?numberBound on each pair's pool readings; default DEFAULT_MAX_POOL_PER_PAIR.packages/core/dist/index.d.ts
pattern?stringOverrides DEFAULT_ANCHOR_PATTERN for both sides.packages/core/dist/index.d.ts
reportUncovered?booleanCollect the citing sentences the reported pairs left UNCOVERED (RV4202, the sixth comparison experiment): the coverage-armed repair round needs the sentences themselves for its prompt, not only their count, because "raise the coverage" is actionable to a composing model exactly when it can see which claims the pool never grounded. Distinct collapsed sentences, draft order, each cut to maxExcerptChars, capped at MAX_UNCOVERED_SENTENCES; the uncapped count rides beside the list. Unset = byte-identical fold output.packages/core/dist/index.d.ts
targetCoverageShare?numberThe declared coverage target (RV2903), in (0, 1]: size the reported pairs to COVER at least this share of the citing sentences instead of taking the first max pairs blind. The ninth comparison run judged 43 of 115 citing sentences because its host guessed max: 56, and nothing sized the pass to a goal. Under a target the selection is coverage-first: every critical candidate, then ONE candidate per still-uncovered sentence in draft order until the target is met; pairs that only deepen an already covered sentence are skipped, because under a declared target the bounded budget buys coverage, not depth. max stays a hard ceiling, and truncated then means exactly that the ceiling cut selection the target still wanted. Unset = the exact historical first-max selection, byte for byte.packages/core/dist/index.d.ts