Home Developers Evidence math.percentage

Public evidence

math.percentage

Machine-checked verification for calculation version 1.1.2 · tier engine_tested

CVP status

CVP VERIFIED · production STALE · CVP protocol 1.0.0-proposed · Core assurance

All seven modes; sampled numeric scales, signed inputs, exact zeros, denominator/domain errors, representable subnormals; nonzero conversion and output under/overflow rejected, including delta and average. Independent CPython Fraction reference; private280-case corpus.

Declared partition coverage
PASS · 9/9 declared partitions (of, is-what, of-what, change, adjust-up, adjust-down, difference, invalid-domain, xcal)
Versions
Calculation 1.1.2 · CVP protocol 1.0.0-proposed · Evidence 2026-10-21.percentage-complete-contract-v2
Verification revision
2026-10-21.percentage-complete-contract-v2 · 2/2 property · digest 9cbd3aac385f

Verification

Legacy regression suite: 19/19 calculation tests · Production surface contract 6/6

Three distinct suites: educational examples on the calculator page, this legacy regression count (19/19 golden + boundary), and the CVP verification suite below. They are not the same number. Property, metamorphic, round-trip, O3, and interface statuses/checks are recorded in the CVP Manifest . SKIP (0/0) means that suite has no published vectors.

    STALE · Build schema 1.1.2 matches page · production binding STALE · Semantic contract ✓ · Last attestation PASS · current evidence changed · re-attestation required · CVP STALE · attestation STALE — Production CURRENT withheld · Public/cache ✓ · Origin ✓

CVP verification suite

Protocol checks from the Evidence Manifest. Distinct from the legacy regression suite above. Verification revision 2026-10-21.percentage-complete-contract-v2. Calculation version 1.1.2. CVP 1.0.0-proposed. 253/253 golden · 7/7 CVP boundary · 34/34 invalid · 2/2 property · 2/2 metamorphic · 2/2 round-trip · 14/14 cross-interface · 3/3 cross-calculator · 6/6 CVP contract. digest 9cbd3aac385f.

  • Golden (oracle-backed) 253 / 253
  • CVP boundary 7 / 7
  • Invalid input 34 / 34
  • Property 2 / 2
  • Metamorphic 2 / 2
  • Round-trip 2 / 2
  • Cross-interface 14 / 14
  • Cross-calculator 3 / 3
  • CVP contract 6 / 6
  • Interfaces PASS · UI (SSR) / REST / MCP
  • Interface claim ui-ssr is query-result HTML, not a live browser session. Error-path engine·REST·MCP 7/7 (status, code, calculation_version). SSR compared on URL-canonical requested calculations; empty query is idle (not an error) and JSON-typed object/array inputs are REST/MCP-only.
  • Assurance Core
  • release artifacts aligned PASS
  • schema output required declared PASS
  • schema valid input executes PASS
  • engine success output validates schema PASS
  • schema rejects incomplete input PASS
  • rest success payload validates schema PASS

Fingerprint sha256:accc82aa83125aba50801a7e42b167e787b4d92eec083499f069575015858029

Input schema sha256:1c4027a3599acb763985ac7ecfd8ed4e411f0b0905aaff49598666c96c82f871 · Output schema sha256:62eabb18f2d5ccc6a7b0b8b561429cd32642cd156ab07623b3ecf2dea3f50b64 · Build-time SHA-256 digests prove published artifacts agree with each other (release_integrity.scope=workspace). Production attestation GETs canonical URLs twice (public/cached view and origin), including Capability HTML, via npm run attest:production --write (published at /.well-known/calculatorx-production-attestation.json) and fails if the public Capability page advertises a different calculation_version. This is artifact consistency, not an independent immutable release log.

Build & scope

Engine identity and declared limitations.

Tool
percentage
Engine
percentage
Engine build
2026-10-21
Evidence core
2026-10-21T10:39:28.506Z
Rendered
2026-10-22T04:36:23.795Z
Last reviewed
—

Assumptions

  • Interactive evaluation runs locally in the browser. Shared URLs and REST evaluate the same versioned engine (query SSR).
  • Denominators (whole, old, average of A and B, P) must be nonzero where required.
  • Percent change uses |old| in the denominator (signed increase/decrease). Typically used with a nonzero baseline; old = 0 is undefined.
  • Percentage difference is defined for A ≥ 0, B ≥ 0, and A+B ≠ 0.

Limitations

  • Exact formulas of normalized binary64 inputs, output rounded once ties-to-even. Decimal inputs are rounded binary64, not exact decimal arithmetic.
  • Reject nonzero values that round to zero and overflow (including published delta/average); rescale on NUMERIC_RANGE.
  • Change uses |old|; difference needs nonnegative a,b and nonzero sum. Near zero baseline is ill-conditioned; shortest round-trip display is not significant-figure tracking.
  • At most512 characters per scalar; active fields only and aliases must agree.

Sources

Standards and references supporting this tool specification. Methods are listed separately — they are algorithms, not bibliographic sources.

Verification disclosure

Aggregate outcomes, scope and artifact commitments are public. Complete test inputs, expected values, execution records and oracle infrastructure are retained privately. This summary does not independently reproduce the full verification run.