Remove Internal Language from Judge-Facing Content

You are working in the Trueup repository (this folder). Foreground only. Do not commit, push or post. Never print a key. Take up to 30 minutes; careful beats fast. Work carefully: keep every number and fact exactly; change words, not facts.
Goal: remove internal words, internal notes and weakness-first phrasing from everything a judge reads.
-
Delete these internal files with
git rm: docs/owner-actions.md, docs/posts.md, docs/video-script.md. Remove any links to them (grep the repo: README.md, docs/, live/static/, hackathon.md). If a test reads one of them, update that test to stop reading it (never weaken a number check). -
Plain words on the site pages (live/static/index.html, demo.html, how-it-works.html, fixes.html, built-with.html, and the generator live/build_fixes.py which writes fixes.html; run it after) and in README.md and docs/getting-started.md, docs/how-it-works.md, docs/built-with.md, docs/limits.md, docs/witness-before-after.md, docs/neatlogs-email.md, docs/business-plan.md. Visible text only (never break HTML tags, code, file paths, URLs, or code identifiers like
instrumentations=[...]). Replace:- "upstream" -> "to the companies that make these tools" / "sent to Arize, Traceloop and neatlogs" (as fits); "Sent upstream" tag -> "Sent"
- "planner, checker, fixer, verifier" -> describe what they do: "the part that plans tests", "the part that checks results", "the part that writes fixes", "the part that proves fixes" (or "plans tests, checks results, writes and proves fixes")
- "checker" alone -> "Trueup's checks"; "verifier" -> "the proof step"; "withdrawn" -> "set aside"; "sweep" -> "full run of all 57 test failures"; "root span" quote -> say Arize's head of open source said fixing it was "the right goal"
- "instrumentation" in prose -> "tracing code"; "leads" meaning possible problems -> "possible problems" ("engineering leads" meaning people is fine)
- "scenario(s)" in prose -> "test case(s)" or "plan(s)" for cfo.ai scenarios -> "cases"
- "observed"/"reported" as audit labels -> drop Keep product names: Trueup Witness, TRACE DISAGREE, neatlogs, Entire, cfo.ai, Arize, Traceloop, OpenInference, OpenLLMetry, and neatlogs detection names quoted exactly as they are named in neatlogs (e.g. "Trueup: lead withdrawn (own false alarm)") because those are real names.
-
Weakness-first phrasing: in the files above, any sentence that leads with a failure or "not done" should lead with what works, keeping the honest fact after it. Example: "Our first attempt stayed 2 → 2" -> keep, but only after the 2 → 0 result and framed as "how we got there".
-
hackathon.md is the dated build log; do NOT rewrite its history. But:
- Add at the very top, under the title, a short "Read this first" block (5-7 plain lines): what Trueup is, the 2 → 0 live result with 0 false alarms in 40 calls, the neatlogs email finding, the three pull requests (links), the live demo link, and one line: "Below is the dated build log, kept as written, including the mistakes and how we fixed them."
- Rephrase lines that start with "Not done" into "Left for later:" with the same facts.
- Remove the audit labels OBSERVED / DOCUMENTED / REPORTED / ASSUMED from the log (keep the sentences), but keep heading anchors working: the README links
hackathon.md#what-entire-recorded-and-what-it-did-not-12-oct-observed; if you change that heading, update the README link to the new anchor.
-
Run
uv run pytest -qanduv run trueup bundle && uv run trueup verifyuntil green. Print: files changed, files deleted, any test you changed and why, and a list of any banned word still present in visible text with its reason. -
Entire wording. The hackathon rule only asked us to give the coding agent context through Entire checkpoints or the entire-graph, with checkpoints as evidence. It never asked for every commit to be recorded. So nothing here is a mistake and must not be called one. Never write "mistake", "gap", "unrecorded", "did not record" or "no Entire record" about Entire anywhere a judge reads. Never claim every commit was recorded, and never invent or change a number.
- README.md: delete the whole bullet that starts
- **[Our mistake with Entire]. Keep the Entire bullet above it. - hackathon.md: replace the section "## What Entire recorded, and what it did not (12 Oct, OBSERVED)" (heading plus its two paragraphs) with "## What Entire recorded" and one positive paragraph: Entire recorded the core build (the test lab, comparer, checks, test planning, the part that wrote and proved the first fixes, the code-graph step that located them) and later the live app's safety tests, the links from each fix to its record, the product site and the README. Give the number of commits that carry an
Entire-Checkpointtrailer, counted withgit log --format='%(trailers:key=Entire-Checkpoint,valueonly)' | grep -c .(state it as "N commits carry an Entire record"), and link https://entire.io/gh/Jennycruzy/trueup. Also grep hackathon.md for any other sentence saying work had no Entire record and rephrase it positively or drop it, without changing other facts. - docs/built-with.md: replace the "What Entire did not record." paragraph with a short "What Entire recorded." paragraph in the same positive style (same count, link to the build log). In the "Every fix links to the session that made it" paragraph, change "Three of the five fixes have an Entire record; the other two say plainly that their commit has none (see below)." to "Three of the five fixes link to their Entire record."
- Same changes on live/static/built-with.html (and any other site page) if the text appears there.
- Finally grep the whole repo (excluding .venv, .trueup and fixes/*/PROVENANCE.md) for: "Our mistake", "what-entire-recorded-and-what-it-did-not", "did not record", "unrecorded", "no Entire record". Fix any link to the old anchor; report every remaining hit.
- README.md: delete the whole bullet that starts
All done, and everything is green. Nothing was committed, pushed or posted.
Checks
uv run pytest -q: 447 passed, 19 deselected.uv run trueup bundlethenuv run trueup verify: "verify: OK (every sha256 matches; every number recomputed)". The bundle rebuilt onlyevidence/business-plan.mdandevidence/manifest.json, because it copiesdocs/business-plan.md.
Files deleted (with git rm): docs/owner-actions.md, docs/posts.md, docs/video-script.md. Nothing linked to them. Line 385 of the build log named two of them by file path, so I changed those paths to plain words ("The video script…", "The X post drafts…") and kept the facts.
Files changed: README.md, hackathon.md, docs/built-with.md, docs/business-plan.md, docs/how-it-works.md, docs/limits.md, docs/neatlogs-email.md, docs/witness-before-after.md, live/build_fixes.py, live/static/fixes.html (rebuilt from build_fixes.py), live/static/index.html, live/static/demo.html, live/static/how-it-works.html, live/static/built-with.html, plus the two evidence files. docs/getting-started.md had none of the listed words, so it is unchanged.
Tests changed: none. No test read the deleted files. The only test that checks page text reads docs/index.html, which I didn't touch.
Entire wording
git log … | grep -c .gives 17, one trailer per commit. Both the build log andbuilt-with.mdnow say "17 commits carry an Entire record".- The build log heading is now
## What Entire recorded, with one positive paragraph and the entire.io link. TheOur mistakebullet is gone from the README, so nothing links to the old anchor.built-with.mdlinks to../hackathon.md#what-entire-recorded. - I renamed
## Why our first attempt stayed 2 → 2to## How we got there, and updated the link inlimits.mdto match.
Final grep for "Our mistake", the old anchor, "did not record", "unrecorded" and "no Entire record":
src/trueup/provenance.py:16:NO_RECORD = "no Entire record for this commit". This is code that writes the excludedPROVENANCE.mdfiles. I left it so those files and their tests stay the same..entire/metadata/*/prompt.txt(2 files): these are copies of this task's own instructions. Git ignores them.
Listed words still in visible text, and why
- Code, file paths and commands:
instrumentations=[...],trueup upstream,upstream/,withdrawn.json,src/trueup/fixer/locate.py. CSS names like.leadandsweepindemo.htmlalso match, but they never show on the page. - The neatlogs detection name: "Trueup: lead withdrawn (own false alarm)", quoted exactly as neatlogs names it.
- "engineering leads" in
business-plan.md, which means people. - "reported" in plain prose (getting-started, built-with, witness-before-after, business plan). It is never used as an audit label there.
hackathon.mdkeeps its build-log words (planner, checker, fixer, verifier, upstream, sweep, leads, scenario, withdrawn, instrumentation), because you asked me not to rewrite the history. The new "Read this first" block uses plain words. All the OBSERVED / DOCUMENTED / REPORTED labels are gone, and the "Not done" lines now start with "Left for later:".
Three small points:
- In
how-it-works.html, the old limits line said "Neither upstream fix…", which suggested only two fixes. It now says "The fixes sent to Arize, Traceloop and neatlogs are under review, not merged yet", so it no longer gives a count. - The "latest recorded commit" link in the
demo.htmlfooter points to7c92dc4. The newest commit with an Entire record is now32c461b. I didn't change it, because that would change a fact. docs/index.html(the generated lab report, outside the list you gave me) still has the headings "Withdrawn leads" and "Upstream drafts". A test checks for exactly those headings.