Promote PringlePrints to a full ordering tab - #2
Merged
Conversation
Gives PringlePrints the same structure and visual weight as the MakePlayingCards and NotMPC tabs (3-step numbered instructions), replacing the earlier single-line footer mention. Steps are based on pringleprints.ca's site copy and flagged with a TODO for manual verification. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
WilfordGrimley
marked this pull request as ready for review
July 11, 2026 03:49
WilfordGrimley
added a commit
that referenced
this pull request
Jul 11, 2026
Promote PringlePrints to a full ordering tab
6 tasks
WilfordGrimley
added a commit
that referenced
this pull request
Jul 16, 2026
Synthesizes infra prerequisites, corrected throughput, cluster/coverage census, Track 4 status, git/branch audit, and the updated scaling recommendation (single continuous run, not chunked slices, given the now-real ~1.8-2.3 day runtime). Awaiting owner go-ahead for the full-catalog run. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_016i9S7LQsCL3FGaih3ZTRBJ
WilfordGrimley
added a commit
that referenced
this pull request
Jul 16, 2026
…k note (#24) * Add per-source exclusion flags for OCR/phash selection, yield reconciliation, future-work note - --exclude-sources-ocr / --exclude-sources-phash flags, OCR defaults to excluding source pk=1 (WilfordGrimley), fully overridable, never hardcoded - reconcile old vs new logic yield on the same fresh 250-card window - log the 1,097-card (Front)/(Back) name-matching fix as future work * Test the --exclude-sources CLI argparse defaults, not just the library function * Add periodic-flush checkpointing to run_pilot, per-batch gate checking * Document Stage 8 phase timing breakdown (item 3a) * Item 3b: check CDN tier premise against real Worker source, add --fetch-budget * Item 3c: tighten OCR crop box + add empirically-validated --fetch-dpi resolution floor * Addendum item 7: aspect-ratio bleed-edge classification, votes on appropriate-bleed * Addendum item 8: DPI-tag audit (report only) + deferred art-crop DPI note * Validate item 8's DPI-tag audit query mechanics against known-nonzero tags * Item 3d: pipeline concurrency + bleed-first crop normalization Split per-card compute (fetch/OCR/phash/border/frame/fallback) from the sequential DB-write loop, run via ThreadPoolExecutor validated against real live-API contention (2 workers, ~2.1x speedup, ~5ms extra latency on this box's 2 cores). Bleed classification now runs first and normalizes every other fixed-fraction crop box for the trimmed-image minority. Fixed a real cross-thread DB-visibility bug caught by the new concurrency tests (transactional_db, matching test_sources.py's existing precedent for update_database()'s own worker threads). * Item 3e: re-projected full-catalog wall-clock using real dpi=250/concurrency measurements * Item 4: scaling proposal, phash verdict, install-path decision * Dockerize pilot: install tesseract in image, retire host venv Verified end-to-end with a real dry-run inside the rebuilt worker container; closes the host-venv-disposition gap from the scaling proposal. * Addendum items 1/3/4: coverage-gap+demand ordering, skip-before-fetch select_candidates now sorts by coverage-gap tier, descending uncovered count, edhrec_rank demand, candidate count, pk - replacing the old multi-candidate-first split. Cards below the empirical dpi=200 resolution floor are excluded from selection entirely, never fetched. New uncovered_printings_closed progress metric. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_016i9S7LQsCL3FGaih3ZTRBJ * Addendum item 2a: run-scoped cluster dedup with vote propagation compute_own_image_clusters phashes our own eligible images and collapses distance-0 clusters to one representative before slicing; absorbed members skip OCR/phash/fallback entirely and get their vote via propagation instead. Guards against double-voting a member that already has its own vote from a prior run. No schema change (item 2b deferred). Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_016i9S7LQsCL3FGaih3ZTRBJ * Bleed tag: negative-only voting (supersedes both-directions design) cast_bleed_edge_vote now writes a vote only for a 'trimmed' reading; 'bleed' (the ~97.5% common case) casts nothing at all, so absence of a vote becomes the documented convention for normal bleed - avoids flooding moderation with routine APPLY confirmations on a SENSITIVE tag meant to flag the rare exception. Updated sensitive_tags.py's comment, which previously documented the opposite convention. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_016i9S7LQsCL3FGaih3ZTRBJ * Document bottleneck-split measurement: CPU-bound, not I/O-bound Fresh instrumented 50-card run against current code shows fetch is only ~13% of per-card cost; border/frame classification + pass-2 fallback dominate at ~65-72%. No separate fetch-thread pool exists currently - _compute_card's single worker pool handles fetch+OCR+ phash+fallback together. This favors a core-count resize or manifest mode over decoupling fetch threads. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_016i9S7LQsCL3FGaih3ZTRBJ * Document 250-card soak test: throughput stable, clustering rate confirmed Real 250-card dry run (not a burst) confirms ~1.94s/effective-card, consistent with the prior top-down measurement, and independently corroborates the ~26-28% cluster-absorption rate seen in the bottleneck-split sample. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_016i9S7LQsCL3FGaih3ZTRBJ * Clarify soak test is the pre-resize baseline, not the workers=3 number * Redact specific instance shape/region from public doc Exact OCPU/RAM/region values shouldn't sit in a public-facing doc - keeping the substantive finding (core count matches DEFAULT_WORKERS) without the specific numbers. History still has the prior values; owner declined a history rewrite for this pass. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_016i9S7LQsCL3FGaih3ZTRBJ * Exclude tokens/cardbacks from pilot selection - unmatchable by design Diagnosed live: a token's printed collector line reads its parent set's code, while its CanonicalCard candidates use token-specific set codes that never match - structural, not a parsing bug. Item 1's descending-uncovered-count ordering was front-loading generic multi-set token names (huge candidate counts, near-zero coverage) to the very front of every real selection, yielding 0/250 OCR votes in today's soak tests where the original pre-items-1/3/4 baseline (94/300) had none of this population dominating. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_016i9S7LQsCL3FGaih3ZTRBJ * Document token-exclusion fix + corrected post-resize soak comparison Real 2.24x speedup and healthy OCR yield (56/198, matching the original baseline) once tokens are correctly excluded from selection. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_016i9S7LQsCL3FGaih3ZTRBJ * HOLD #2: full package report Synthesizes infra prerequisites, corrected throughput, cluster/coverage census, Track 4 status, git/branch audit, and the updated scaling recommendation (single continuous run, not chunked slices, given the now-real ~1.8-2.3 day runtime). Awaiting owner go-ahead for the full-catalog run. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_016i9S7LQsCL3FGaih3ZTRBJ --------- Co-authored-by: Claude Sonnet 5 <noreply@anthropic.com>
WilfordGrimley
added a commit
that referenced
this pull request
Jul 16, 2026
…cale Its own sequential ~21.6h cost (unaffected by --workers) exceeded the compute time it saved by absorbing ~20-28% of cards - HOLD #2's own numbers showed 1.82 days raw vs 2.34 days with clustering. Also zero progress visibility for its entire duration, indistinguishable from a hung process. compute_own_image_clusters/ClusterResult left intact for a future chunk-scoped redesign; run_pilot now passes a no-op ClusterResult instead of calling it. 4 integration tests marked skip with a clear reason, not deleted. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_016i9S7LQsCL3FGaih3ZTRBJ
4 tasks
WilfordGrimley
pushed a commit
that referenced
this pull request
Jul 18, 2026
Adds a Disposition column recording what actually shipped for each selected finding, and checks the boxes for everything built on claude/audit-build-pass. #11 stays unselected (process note in CLAUDE.md instead of a code fix); #2/#3 are hedge-only, with real verification still pending from the owner.
6 tasks
WilfordGrimley
added a commit
that referenced
this pull request
Jul 18, 2026
* Add UI content-accuracy audit findings table (docs/audits/ui-content-audit.md) Survey-only, HOLD - not built. 12 findings as a markdown table (location/current text/why wrong/proposed text/severity 1-5, where 5 is reserved for a machine suggestion presented indistinguishably from confirmed fact), with a per-row Selected checkbox for the review pass, summary counts at top, and a "checked, nothing found" section for completeness. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_014dB7mGPQyoML2Ri5ZrprdK * Mark audit finding dispositions after the build pass Adds a Disposition column recording what actually shipped for each selected finding, and checks the boxes for everything built on claude/audit-build-pass. #11 stays unselected (process note in CLAUDE.md instead of a code fix); #2/#3 are hedge-only, with real verification still pending from the owner. --------- Co-authored-by: Claude <noreply@anthropic.com>
This was referenced Jul 19, 2026
Merged
WilfordGrimley
added a commit
that referenced
this pull request
Jul 23, 2026
…ss-method replay baseline
WilfordGrimley
added a commit
that referenced
this pull request
Jul 23, 2026
This was referenced Jul 23, 2026
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.
Summary
TODOcomment for manual verification since it was sourced by an automated fetch, not a manual walkthrough — pricing/service area details may have changed.OtherPrintShopsHeightconstant and the height-budget workaround it required, since the content now lives in a normal tab pane instead of a fixed-height footer.Test plan
npx prettier@2.7.1 --checkon all changed filesnpx tsc --noEmit— no errors🤖 Generated with Claude Code