Skip to content

docs+marketing: correct uncovered-codes count + tighten claim phrasing#18

Merged
ptengelmann merged 1 commit into
mainfrom
fix/baselines-honest-counts-and-tighter-claims
Jun 27, 2026
Merged

docs+marketing: correct uncovered-codes count + tighten claim phrasing#18
ptengelmann merged 1 commit into
mainfrom
fix/baselines-honest-counts-and-tighter-claims

Conversation

@ptengelmann

Copy link
Copy Markdown
Owner

Summary

GPT review caught two truth issues in the v3 results. Both fixed.

Truth issue 1: wrong uncovered-codes count

Previous wording in BASELINES.md "honest gaps" + PR #17 description: "5 of 21 taxonomy codes unexercised". Actual count, verified by grepping EXPECTED_ISSUE_CODES against the full ConveyancingIssueCode union: 13 exercised, 8 uncovered.

The list of 8 uncovered:

TITLE_OVERRIDING_INTERESTS
TITLE_DEFECTIVE_INDEMNITY_REQUIRED
LEASE_ALTERATIONS_CONSENT
PLANNING_TA6_SEARCH_DISCREPANCY
SEARCH_CONTAMINATED_LAND
OCCUPIER_TENANCY_UNDISCLOSED
BOUNDARY_DISPUTE_UNRESOLVED  (tested as must-not-emit guard, never positively emitted)
MORTGAGE_OFFER_EXPIRY_RISK

Per GPT: "Especially important: TITLE_DEFECTIVE_INDEMNITY_REQUIRED, SEARCH_CONTAMINATED_LAND, MORTGAGE_OFFER_EXPIRY_RISK, LEASE_ALTERATIONS_CONSENT - these sound commercially valuable because they map to real lender/client concern." Captured as the priority order for any future speculative growth.

Truth issue 2: marketing copy missing "internal" qualifier + single sentence too dense

GPT's tightening suggestion: signal that the corpus is internal (not real market data), and separate the corpus claim from the outcome claim.

Trust card ("Severity calibrated"):

  • Before: "Validated against six adversarial conveyancing scenarios..."
  • After: "Validated against six internal adversarial conveyancing benchmark scenarios..."

FAQ wrapper answer:

  • Before: "...current corpus of six validated scenarios averages 99 out of 100, with every planted issue detected and zero over-flagging of routine items..."
  • After: "...The current corpus of six internal benchmark scenarios averages 99 out of 100. In that corpus, every planted issue was detected and there were zero over-flags of routine items..."

Both numbers (6, 99) remain grep-verifiable in BASELINES.md.

What this changes

  • packages/fixtures/BASELINES.md: new "Honest gaps in the corpus" section listing the 3 unrebenched legacy scenarios and the 8 uncovered codes, with speculative-priority order for future growth.
  • apps/marketing/src/sections/trust.tsx: "Severity calibrated" card body gets "internal" + "benchmark" qualifiers.
  • apps/marketing/src/sections/faq.tsx: wrapper answer splits the corpus claim and the outcome claim into two sentences.

Test plan

  • pnpm typecheck - 9/9 workspaces pass
  • pnpm check - 0 errors, 3 pre-existing warnings
  • pnpm build - 3/3 tasks pass
  • No new em-dashes; no §; UK English throughout
  • Counts verified by grepping CONVEYANCING_ISSUE_CODES and EXPECTED_ISSUE_CODES

Brand and liability check

  • Marketing now flags claims as "internal benchmark", not market-validated
  • Outcome claim separated from corpus claim so readers can see the framing
  • No "the product is proven" - the language is bounded to the corpus

Moat level

L7 - trust signal. Investors / partners / COLPs reading the trust page get a more accurate framing of where the validation stands.

…im phrasing

GPT external review of the v3 bench results spotted two issues:

1. The "honest gaps" section listed 6 codes but said "5 of 21 codes
   unexercised". Actual count is 8 codes uncovered, 13 exercised
   (verified by grepping EXPECTED_ISSUE_CODES against the
   ConveyancingIssueCode union). The list was also missing
   BOUNDARY_DISPUTE_UNRESOLVED (currently tested only as a must-not-
   emit guard, not legitimately emitted by any scenario) and
   PLANNING_TA6_SEARCH_DISCREPANCY (no scenario lists it as expected).

   Fixed: BASELINES.md now records "13 of 21 exercised, 8 uncovered"
   with the full uncovered list and notes the speculative-priority
   order for future growth (TITLE_DEFECTIVE_INDEMNITY_REQUIRED,
   SEARCH_CONTAMINATED_LAND, MORTGAGE_OFFER_EXPIRY_RISK, LEASE_
   ALTERATIONS_CONSENT - all common lender / client concerns).

2. Marketing claim was missing the "internal" qualifier and combined
   the corpus / outcome claim into one sentence in the FAQ. Per GPT:
   the corpus is INTERNAL benchmark scenarios (not real market data),
   and the score / outcome should be a separate sentence so the
   reader can see the framing clearly.

   Fixed:
   - trust card: "Validated against six adversarial conveyancing
     scenarios" -> "Validated against six internal adversarial
     conveyancing benchmark scenarios".
   - FAQ wrapper: split the corpus claim and the outcome claim into
     two sentences. "The current corpus of six internal benchmark
     scenarios averages 99 out of 100; in that corpus, every planted
     issue was detected and there were zero over-flags of routine
     items."

Both numbers (6, 99) remain grep-verifiable in BASELINES.md.

Refs: GPT external review of v3 bench, "marketing wording: slightly
tighten it" + "one thing to fix immediately";
feedback_marketing_must_reflect_truth.md.
@ptengelmann
ptengelmann merged commit feb61ec into main Jun 27, 2026
1 check passed
@ptengelmann
ptengelmann deleted the fix/baselines-honest-counts-and-tighter-claims branch June 27, 2026 22:25
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants