import type { PrePostDiffResult } from './pre-post-diff.js'; import type { UndeliverableDimensionEvidence } from './final-review-delivery.js'; import type { CollectedEvidence } from './final-review-evidence-sources.js'; export declare function renderEvidenceSection(collected: readonly CollectedEvidence[]): string; /** * The producer's own status, told to the reviewer in as many words. * * It exists because the artifact's ABSENCE is not self-explanatory: a reviewer * shown nothing about `existing-functionality-intact` beyond two design-intent * documents cannot tell "the diff was clean" from "no diff was ever computed", * and the pre-fix run resolved that ambiguity by quietly returning * `inconclusive` forever. Naming the reason is what makes the unavailable case * a stated fact instead of an invisible one. * * Kept short on purpose: it rides inside the same prompt that is byte-capped at * `MAX_EVIDENCE_BYTES_TOTAL` + scaffolding. * * F-BLOCK: this block may only say COMPUTED when the artifact it names was * actually inlined. Saying "computed — cite it" one line above a source block * reading `STATUS: MISSING (omitted)` told the reviewer to cite evidence it had * not been given, and that contradiction is what let a `pass` survive a * baseline nobody saw. */ export declare function renderPrePostDiffStatus(prePostDiff: PrePostDiffResult, delivered: boolean): string; export declare const EVIDENCE_RULES = "## Binding rules for the four verdicts\n1. A dimension may be \"pass\" ONLY if at least one source in its SUPPORTS list has STATUS: FOUND above, and that source's content actually supports the verdict. The service re-checks this: a \"pass\" whose supporting sources are all missing/empty/omitted is downgraded to \"inconclusive\" before any human sees it.\n2. If the evidence a dimension needs is MISSING, EMPTY, or OMITTED, return \"inconclusive\" with confidence \"low\". Do not guess \"pass\".\n3. Absence of evidence is not evidence of absence: \"no problem found in what I was given\" is \"inconclusive\", never \"pass\".\n4. Cite the bracketed source numbers (e.g. \"[1]\", \"[5]\") you relied on in each dimension's \"evidence[].description\"; use an empty list when the verdict is \"inconclusive\".\n5. \"allPass\" may be true only when all four verdicts are \"pass\", and every non-\"pass\" dimension must be listed in \"needsAttention\".\n6. \"existing-functionality-intact\" may be \"pass\" ONLY when the pre/post baseline diff block above shows STATUS: FOUND. A design-intent document (RD tech doc, PRD handoff) states what was INTENDED; it is not a before/after comparison of the test surface or the public API surface, and a \"pass\" resting on one is downgraded to \"inconclusive\" by the service before any human sees it.\n7. An \"inconclusive\" verdict cannot be confident: report it with confidence \"low\" (or \"medium\" when the reviewer is sure the evidence is merely incomplete). \"high\" on \"inconclusive\" is a contradiction and the service clamps it.\n8. \"functional-completeness\" may be \"pass\" ONLY when the approved-scope contract block (prd-handoff, the source carrying the approved scope and non-goals) is present above with its WHOLE byte count \u2014 a STATUS line reading \"FOUND at ... \u2014 N bytes\", not a truncated or an omitted one. A passing test report shows that something was built; only the contract shows that what was built IS the approved scope. The service re-checks this: it downgrades a \"pass\" on this dimension whenever that contract exists for the run but was not delivered in full."; /** * H2 — tell the reviewer, in the prompt, that a dimension has no deliverable * source at all. Emitted only when there is something to say, so the byte * budget is not spent on an empty section every run. * * It reads like `renderPrePostDiffStatus` on purpose: the reviewer is told the * FACT and what to answer with, so a permanently red dimension arrives at the * human with its cause attached instead of as an unexplained `inconclusive`. */ export declare function renderDeliveryReachabilityStatus(report: readonly UndeliverableDimensionEvidence[]): string;