Build pass on UI content-accuracy audit selections (PR #56 items 1-10, 12) - #64
Merged
Merged
Conversation
Fixes upstream-links honesty (1,6-9): desktop-tool download/wiki/source links now use shared UpstreamDesktopTool* constants with copy that says they're upstream's, not this fork's - confirmed not diverged (no ProxyPrints strings in desktop-tool/, no backend-API coupling). The broken per-platform asset-fetch mechanism is gone in favor of linking straight to GitHub Releases. Adds one-line "confirm before ordering" hedges to the PringlePrints and NotMPC steps (2,3) - real verification of those flows is still owner work, tracked separately. Drops "fresh" from the questionFeed subline (4) since it's not additive with total/contested; total===fresh on a real response now only fires a console.warn as a version-skew signal, never renders. Adds ProxyPrints credit alongside (not replacing) the chilli_axe footer line (5). Adds a lean-tooltip and a one-time legend to attribute chips (10) so a strong fill can't read as a confirmed fact - "community + machine votes lean yes/no (N%) - not confirmed". Gives the deckbuilder confirm badge a visible "Confirm?" label (12) instead of a bare "?" with only a screen-reader aria-label. #11 (privacy-policy date) wasn't selected for a code fix - CLAUDE.md gets a process line instead ("policy text changes update the Last-updated date"). docs/audits/ui-content-audit.md on PR #56's branch got its own commit marking every row's disposition.
4 tasks
5 tasks
WilfordGrimley
added a commit
that referenced
this pull request
Jul 18, 2026
* Terminology fix: "AI" -> "machine" for OCR/phash/deduction votes Owner-directed accuracy fix: the machine votes are OCR, perceptual-hash clustering, and deductive backfill - classical algorithms, no AI/ML involved anywhere. "AI" was a fossil of the pre-2026-07-15 VoteSource.AI name (split into DEDUCTION/OCR that day). "Machine evidence/machine votes" is the house term (already established by the #64 chip-tooltip copy, "Community + machine votes lean..."). docs/theory.md: SS4's "AI weight 0.5 by default" -> "machine weight 0.5 by default"; the Dawid-Skene paragraph keeps the literal PRINTING_TAG_AI_WEIGHT name where it's citing code, glossed per spec, plus a note on the rename below. Frontend (grepped frontend/src for user-facing "AI" strings): whatsthat.tsx's intro copy ("AI-suggested cards come first" -> "machine-suggested cards come first") is the one real user-facing occurrence - visible on the live /whatsthat page. Also fixed QuestionFeed.tsx's adjacent code comment for consistency (not user-facing, but describes the same headline logic). Checked and left alone: mocks/handlers.ts's ["ai-art", "AI art"] and reason_tags.py's "AI-Generated" tag - a real AI-GENERATED-ARTWORK card attribute, a completely different meaning of "AI" than the vote-source terminology this task is about. Backend hygiene (own commit-worthy piece, folded in since it's small): renamed PRINTING_TAG_AI_WEIGHT -> PRINTING_TAG_MACHINE_WEIGHT in settings.py, with the old name kept as a backward-compatible env-var fallback (read new name, fall back to old, one-line deprecation comment) so an existing deployment's config can't silently regress - resolves the rebinding caution behind the original no-rename decision without carrying its risk. Updated the two _SOURCE_WEIGHTS usages in vote_consensus.py and every comment elsewhere that cited the setting name as a live value (purge_machine_votes.py, deductive_backfill.py, local_residual_classify.py, test_purge_machine_votes.py). Added TestMachineWeightRename (test_vote_consensus.py) asserting DEDUCTION and OCR still resolve to the same 0.5 weight post-rename - direct proof the rename changed no actual behavior. Verified the fallback logic's three scenarios (only old set, only new set, both set) via a standalone simulation, since Django isn't installed in this sandbox. Left untouched, deliberately: every VoteSource.AI citation describing the actual historical 2026-07-15 enum-split event (printing-tags.md, federation-v1.md, vote_consensus.py's own docstring) - these are accurate historical code citations, not a live terminology choice, and the surrounding prose already explains the split. Also untouched: the broader backend comment/docstring "AI" usage across deductive_backfill.py, question_feed.py, test files, and immutable Django migrations (0050/0053/0054) - a much larger, unrequested sweep outside this task's scope (docs/theory.md, frontend, docs/ sweep, and the one setting rename), flagged in the relay report as a possible future cleanup rather than done unilaterally here. docs/ sweep beyond theory.md: printing-tags.md (5 prose spots -> "machine", 2 VoteSource.AI historical citations kept literal, 1 real ai-art tag mention kept), catalog-completion-plan.md (1 prose spot). federation-v1.md and infrastructure.md needed no change (already correct / different AI meaning respectively - infrastructure.md's "AI" mentions are about AI-assisted PR authorship disclosure, unrelated). Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Eq8f8QqQ5UKadBW6yHUmxq * Report relay: AI-to-machine terminology fix Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Eq8f8QqQ5UKadBW6yHUmxq * Report relay: fix PR number reference (#76) Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Eq8f8QqQ5UKadBW6yHUmxq --------- Co-authored-by: Claude <noreply@anthropic.com>
5 tasks
WilfordGrimley
added a commit
that referenced
this pull request
Jul 18, 2026
…staleness mini-pass (#79) * publish_wiki.py: fix link rewriting for parent-relative paths and slug casing GitHub wiki's native [[...]] auto-linking reinterprets our own docs/ [[file.md]] convention: [[../troubleshooting.md]] became a dead literal slug, and [[printing-tags.md]] linked the raw filename casing instead of the published page name "Printing-Tags" (both visible live on Catalog-Completion-Plan). Every internal link is now resolved against its source file's real repo path and mapped through wiki-publish-map.json: a published target becomes a same-wiki link using its real page name, an unpublished-but-real target becomes an absolute GitHub blob URL, and a target resolving to neither is a hard publish error. docs_lint.py can't catch this class of bug since it only checks links within docs/ itself, not the wiki-transform's own reinterpretation downstream - the script now self-checks at publish time instead. Also adds two docs/ pages that were listed in docs/README.md's index but missing from the mapping entirely (found via the new validation): documentation-process.md and upstream-wiki-drift.md. * Docs staleness pass: Part 3 write-pass status + proposal B/C/E-1/E-2 markers catalog-completion-plan.md: Part 3 heading and Status section updated to reflect the completed write pass (run_id 20260718T145157-a12b1387, 13,275 votes, all hard bounds passed, 0/7,124 zero-resolution violations at full population), pointing to docs/reports/2026-07-18-part3-write-pass-complete.md. Filled the dangling "see the follow-up entry below" reference and replaced the now-stale "HOLD #P3 stands" language. Part 4's heading now notes it's confirmed unstarted with HOLD #B prep queued. proposal-b-bleed-normalization.md: top summary no longer lists the prior-resolution batch fetch as remaining work - it shipped as PR-1 (#72). proposal-g-user-accounts-saved-decks.md: noted the build-order queue (E-1 #61, E-2 #62, Level-2 grid fix #63, audit pass #64, GIS error UX #65, Proposal B #66/#72, Proposal C part (a) #67) has fully cleared. docs/README.md: added proposal-b and proposal-c to the "Plans & proposals" table - both have dedicated docs but were missing from the index entirely, despite the section's own stated policy that any proposal with a dedicated doc gets a row. printing-tags.md and vote-system.md checked per the mini-pass's minimum list; no changes needed - printing-tags.md already defers Stage 8+ status to catalog-completion-plan.md, and vote-system.md has no AI-terminology or merged-PR staleness. * Report relay: wiki review findings (publish-script fix, Part 3 status, staleness mini-pass) * CI: black-format publish_wiki.py, prettier-format cache-transition-resilience.md black reformatting for publish_wiki.py (never run locally - only py_compile was checked, missing the repo's black rev 22.8.0 pinned in .pre-commit-config.yaml). cache-transition-resilience.md's prettier drift predates this PR (introduced by #75) and is unrelated to its content - swept here since the "Formatting and static type checking" check runs pre-commit against all files, not just the diff, and this PR's own CI needs to go green. --------- Co-authored-by: Claude <noreply@anthropic.com>
This was referenced Jul 19, 2026
WilfordGrimley
added a commit
that referenced
this pull request
Jul 19, 2026
…3 stale branches (#193) * Seed repo-wide extractable-primitives ledger with a mechanical tether Audits frontend, PDF/export, backend, and docs/federation tooling for code with no dependency on this fork's vote system/CanonicalPrinting- consensus/auth that an outside consumer (upstream, proxies-at-home, federation peers) could lift wholesale. HOLD pending owner review. Every CLEAN claim is checked by docs_lint.py's new check_extractable_primitives_tether(), which greps each CLEAN row's file(s) for imports from a hardcoded fork-only-module allowlist so entanglement drift fails CI at the commit that causes it. Adds the CLAUDE.md convention line for future sessions to add/remove a row when an extraction or refactor changes a primitive's status. * Add session report for the extractable-primitives ledger Per CLAUDE.md's reporting convention (reports >10 lines get relayed via docs/reports/ instead of chat) — the task summary for this branch's work. * Follow-up: MANIFEST row + fix stale audits/ cross-references MANIFEST.md gets a row for the newly-landed docs/upstreaming/extractable-primitives.md (binding rule: new docs/*.md file, same PR). Separately, docs/MANIFEST.md's and docs/README.md's audits/ entries still described ui-content-audit.md as unmerged/no disposition column - stale since PR #56 merged and #64's build pass filled in the Disposition column (found while classifying the now-superseded claude/ui-content-audit-docs duplicate branch for #144). Also states the wiki-publish-map.json exclusion for extractable-primitives.md as an explicit HOLD-based decision rather than a silent gap. * Fix formatting: black/prettier reformat on cherry-picked ledger files --------- Co-authored-by: Claude <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
entry
Description
Builds the selected findings from the UI content-accuracy audit (
docs/audits/ui-content-audit.md, PR #56). Covers items 1-10 and 12; item 11 got a process fix instead of a code fix.frontend/src/features/export/FinishedMyProject.tsxandNavbar.tsxnow link tochilli-axe/mpc-autofill's real GitHub Releases/wiki/source via newUpstreamDesktopTool*constants (frontend/src/common/constants.ts), with copy that honestly says it's the upstream tool, not a ProxyPrints build. The broken per-platform asset-fetch mechanism (download.mpcautofill.com, a domain not owned by this fork whose deploy job always fails) is removed in favor of linking straight to the Releases page; the now-redundant fallback<Alert>is removed too. Divergence check: no ProxyPrints-specific strings anywhere underdesktop-tool/, and the tool never talks to a backend API at all, so it's safe to keep pointing upstream.QuestionFeed.tsx's subline drops "fresh" entirely ({total} in catalog · {contested} contested) since it isn't additive with the other two counts.total === freshon a non-legacy response now fires aconsole.warnas an internal version-skew signal instead of ever being displayed.Footer.tsxnow credits ProxyPrints alongside (not replacing) the existing "chilli_axe" line.AttributeChipPanel.tsxgets a lean tooltip on untouched chips with a real vote lean ("Community + machine votes lean yes/no (N%) - not confirmed") plus a one-time legend line above the ring, so a strong chip fill can't be misread as a system-confirmed fact.DeckbuilderConfirmAffordance.tsx) now shows a visible "Confirm?" label instead of a bare "?" (thearia-labelwas already there; this adds sighted-user affordance).CLAUDE.md's tooling rules instead ("policy text changes update the Last-updated date").docs/audits/ui-content-audit.md(on PR #56's own branch) was updated separately with a Disposition column marking what shipped for every row.Checklist
pre-commitand installed the hooks withpre-commit installbefore creating any commits.npx tsc --noEmitclean.npx eslinton all changed files: 0 errors (pre-existingno-img-elementwarnings only, unrelated to this change).npx prettier@2.7.1 --checkclean on all changed files.npx jest --runInBand: 249/250 passing; the 1 failure isQuestionFeed.test.tsx's documentedrevealCard()flake (docs/troubleshooting.md), reconfirmed passing in isolation (-t).DeckbuilderConfirmAffordance,QuestionFeedLevels,QuestionFeedConfirmSuggestion,QuestionFeedArtistAndTag,NoMatchReasonStrip): 22/22 passing.CLAUDE.mdprocess line for Add deductive printing-tag backfill: AI-weight votes for entailed printings #11;docs/audits/ui-content-audit.mddisposition table on PR UI content-accuracy audit findings (docs, HOLD) #56.)Merge-time checklist
Generated by Claude Code