Skip to content

History / Contribution Record

Revisions

  • Deck-E: the keyboard drift (PR #85) Snapshot of the DECISIONS.md entry, plus the ledger line. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>

    @fluid-chey fluid-chey committed Aug 24, 2026
  • Deck-E: the iOS keyboard (PR #84) Snapshot of the DECISIONS.md entries, plus the ledger line. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>

    @fluid-chey fluid-chey committed Aug 24, 2026
  • Deck-E: measure his mark against the panel, not the viewport (PR #82) Snapshot of the DECISIONS.md entry, plus the ledger line. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>

    @fluid-chey fluid-chey committed Aug 24, 2026
  • Sync Decision-Log (80 entries the page had fallen behind, plus the two 2026-08-24 animation-pass entries) and add the animation-pass ledger line (PR #81) On-Behalf-Of: @cheyras Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>

    @cheyras cheyras committed Aug 24, 2026
  • Decision Log and Contribution Record: the prompt fix that let writes happen Closes the half of AGENTS.md's rule that commit 9ba77b0 left open -- DECISIONS.md and the wiki Decision Log are meant to move together, and that commit landed with only the repo half done. Appends the entry verbatim: the system prompt told him to preview a collection change in prose and wait, which duplicated the SDK's needsApproval gate, and duplicating it disabled it -- the dialog only exists once the tool is called, so he stated the numbers, stopped, and the reader was left answering a question the system had never been asked to put. The ledger gets a second row for the date rather than an edit to the first, matching how this page already handles several sessions in one day. It keeps the caveat rather than the headline: roughly 30% of opening turns still stall and need a follow-up, which is the stated ceiling of a prompt-level fix. Still branch-only. The note above the 2026-08-21 block already says so and covers this entry, so it was not repeated. On-Behalf-Of: @cheyras Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>

    @cheyras cheyras committed Aug 22, 2026
  • Sync the wiki, and correct a page that described branch work as shipped Brings Architecture, Decision Log and the Contribution Record in line with the 2026-08-22 work on `decke-agent` (PR #74, open): the approval `signature` bug that broke every approved write once DECKE_APPROVAL_SECRET was set, the round trip extracted into a testable module, the narration transform's move, search_cards no longer grounding a guessed set id, and the chat model switch. Twelve DECISIONS entries appended verbatim -- this page is a snapshot, not a rewrite. The correction that mattered most was to our OWN previous sync. MCP Setup said the 23 tools "are defined once, in the packages/agent-tools workspace package". That package does not exist on origin/main. It is branch-only work from PR #74, and the 2026-08-21 sync wrote it up as current behaviour -- so a reader following that page would have gone looking in a directory that is not there, and Deck-E in production has its own separate tool set rather than a share of the MCP registry. The page now says what is true today and names the pending PR without claiming it. Everything new is marked as branch-only for the same reason. Nothing here describes the collection-write path as working, because it does not: the model will not call `log_cards` at all, which is recorded plainly rather than omitted. Two older pages get a banner instead of a rewrite. Data Layer and Frontend Research §D sized a single-user Raspberry Pi deployment that the project abandoned for Vercel + Supabase the same week they were finished. Their measurements are captioned with the command that produced them, so they are left as measured and the banner says which sections are still evidence and which describe a plan that was dropped. A dated measurement rewritten to a current number stops being evidence. Also: removed an orphaned mid-file footer from Decision Log and the Contribution Record, each left behind by an earlier sync that appended below it, so both pages now carry exactly one and a reader scanning for the date gets the right one. TypeScript's entry corrected to 7.0.2. Home was checked against the files on disk and the AGENTS.md inventory and left alone. Dex Data, Prior Art, Project Brief and UI Spec were checked and deliberately not touched -- Project Brief is historical by designation, and UI Spec already carries its own supersession notice. On-Behalf-Of: @cheyras Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>

    @cheyras cheyras committed Aug 22, 2026
  • Sync wiki with Deck-E rev 2: agent-tools extraction, entitlement/meter, data access, deep tier Brings Architecture, MCP Setup, Decision Log and the Contribution Record in line with the deckpal repo's Deck-E PRs 1-4 and 7 (the browser tool wire fix, server-side entitlement + spend meter on /api/chat, the packages/agent-tools extraction with two front-ends, Deck-E's lazy-RLS data access, and the metered deep tier). Also corrects two staleness gaps found while syncing: the MCP tool count (21 -> 23) and the Deck-E route's dev-only status, both of which had drifted from the canonical repo docs before this session. On-Behalf-Of: @cheyras Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>

    @cheyras cheyras committed Aug 22, 2026
  • Deck-E: foil measurement, rip flow, showScreen

    @cheyras cheyras committed Aug 21, 2026
  • Deck-E: hand the scroll tracking to the compositor

    @fluid-chey fluid-chey committed Aug 20, 2026
  • Deck-E: movement-engine pass — pace, the boot pop, the phone

    @fluid-chey fluid-chey committed Aug 20, 2026
  • Deck-E: the two-ignore-list trap and the build gate that caught it Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>

    @fluid-chey fluid-chey committed Aug 20, 2026
  • Deck-E: real card art, batched card_stash Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>

    @fluid-chey fluid-chey committed Aug 20, 2026
  • Sync the Deck-E framing and loop-seam pass On-Behalf-Of: @cheyras <cheyras@gmail.com> Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>

    @fluid-chey fluid-chey committed Aug 20, 2026
  • Sync the Deck-E states/gaze pass Decision Log gets the 2026-08-20 entry (a state is something he stays in; the look-at constraint that never exported; the one wrong spin axis behind two reported defects), and the Contribution Record gets its session line. On-Behalf-Of: @cheyras Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>

    @fluid-chey fluid-chey committed Aug 20, 2026
  • Record the #46–#57 issue sweep Decision Log: the sweep, four already-fixed reports, and why #49 stays open. UI Spec §3.19: the Pokédex tile's gender sign is drawn, not typeset. Contribution Record: one ledger line. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> On-Behalf-Of: @cheyras

    @cheyras cheyras committed Aug 20, 2026
  • Record the 2026-08-19 write-safety work Root cause of the silent-success incident, idempotency, the mutation log and revert, soft delete, and the product-id Mass Entry lines. On-Behalf-Of: @cheyras Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>

    @cheyras cheyras committed Aug 19, 2026
  • Deck-E: parentage over analysis, and the lighting was never occlusion Five defects closed in the three.js character port, and in four of them the recorded diagnosis had to be discarded before the real cause showed up. Three placement errors turned out to be the same mistake: a relationship the .blend expresses as PARENTAGE had been reimplemented analytically. - the lid pivot is a matrix pair, not an angle pair. DeckBox_Lid.location is keyed and reaches (0, 0.152263, -0.117046) at the full gape; leaving it at rest put the lid 0.313 BU out of place, which is why card_stash was the worst-scoring frame in the sweep. - Eye_Rig is VERTEX_3-parented to the MORPHED lid, so it tracks the shape keys. Reproduced to 1e-6; the eyes no longer draw on the inside of the open lid. - the brow sockets hang off Eye_Rig, not the lid (this page said otherwise and was wrong), and carry a keyed follow-through of their own. Worst brow error 0.36 BU -> 0.006. The lighting residual was not occlusion. Filed for weeks as "shadows 24-37% too bright", it was an unported EEVEE firefly clamp, and it has to be applied to the HDRI texels rather than to the finished IBL lookup. Bucketing the residual by surface NORMAL rather than by pixel is what showed it: the up-facing lid top was +44% against the front face's +5%, a shape no occlusion term can produce. Also recorded: never quantize the glb (it parks a de-quantisation transform on nodes the rider system overwrites), the SDF atlas must stay 16-bit (the shader's edge band is narrower than an 8-bit step), gating a dev route needs its import() guarded and not just its beforeLoad (the PWA was precaching 945 kB of three.js for every production user), and travel_far's flight is baked into the .blend at 2x speed where the port is the correct one. Parity coverage went from 8 stills to 14 stills plus 3 clips compared frame-by-frame, and the harness was made deterministic after it was found to vary by up to 0.045 IoU between identical runs. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01EFYdqPpfFcY8z8sKzggnZJ

    @cheyras cheyras committed Aug 18, 2026
  • Document the Deck-E three.js character runtime Architecture gains §15: the subsystem, the decision to drive 47 normalised pose channels rather than AnimationMixer clips, and the traps worth knowing before touching it. Frontend Research gains section F on the stack choices — vanilla three.js over r3f, the AgX colour recipe for matching Blender, why PMREM is a correctness fix and not just an aliasing one, and why Draco cannot be used with morph targets. Also records that the separate character wiki is now stale in eight measured places: its own regeneration chain died on 2026-08-17, so the .blend is the authority. On-Behalf-Of: @cheyras Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>

    @claude claude committed Aug 18, 2026
  • Rename the product to DeckPal Follows the repo rename: DeckScout → DeckPal, deckscout.io → deckpal.app, and the MCP server rotom-mcp → deckpal-mcp.

    @cheyras cheyras committed Aug 15, 2026
  • Sync design-system merge: Decision Log snapshot, Architecture §14, UI-Spec supersession banner, contribution ledger On-Behalf-Of: @cheyras Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>

    @cheyras cheyras committed Aug 14, 2026
  • Sync Decision Log + Contribution Record for issues #28, #32-#35 Consolidated wiki sync for the tail of this session's issue-queue batch: avatar upload Vercel race (#28), bug/feature-request split (#32), scoped-down AI triage (#33), kebab-menu delete buttons (#34), and the Promise.all connection-pool fix that closes out #35 (and the #25/#26/#27/#30 wedges). On-Behalf-Of: @cheyras Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>

    @cheyras cheyras committed Aug 11, 2026
  • Update Decision Log + Contribution Record for issue #31 Agentic deck-building now defaults to cheapest printing — price in ambiguous candidates, cheapest-first sort, tool description guidance. On-Behalf-Of: @cheyras Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

    @cheyras cheyras committed Aug 11, 2026
  • Issue #30: Decision Log + UI-Spec + Contribution Record for the one-bar ProgressCluster fix Reversal of the Phase 1 two-bar decision recorded, UI-Spec §3.6 flagged as superseded for DeckScout's own component (still-accurate pkmn.gg research otherwise), one ledger line. On-Behalf-Of: @cheyras Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>

    @cheyras cheyras committed Aug 11, 2026
  • Issue #27: Remove Stream Tools — Decision Log + Contribution Record entries Documents the removal of the never-shipped OBS-overlay Stream Tools feature from apps/web, per the repo owner's product-scope directive. Mirrors the DECISIONS.md entry in the main repo. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>

    @cheyras cheyras committed Aug 11, 2026
  • Log issue #26 fix: honest range-caption instead of invented data On-Behalf-Of: @cheyras Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_0136MZx8gJRZn4ET9ieof6bt

    @cheyras cheyras committed Aug 11, 2026
  • docs(wiki): sync issue #25 fix -- real username, and the metadata assumption it corrected On-Behalf-Of: @cheyras Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>

    @cheyras cheyras committed Aug 11, 2026
  • fix(wiki): remove stray blank line breaking the Contribution-Record table The previous commit's new ledger row was separated from the table above it by a blank line, which GFM renders as literal pipe-text instead of a table row (the exact failure mode a past sync already fixed once for this same file). Caught by re-reading the file after pushing rather than assuming the edit landed clean. On-Behalf-Of: @cheyras Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>

    @cheyras cheyras committed Aug 11, 2026
  • docs(wiki): sync the OAuth connect flow (issue #29) and the build-cache incident MCP-Setup: rewritten to lead with the OAuth 2.1 "Connect" flow (works with claude.ai, ChatGPT, Gemini, Claude Code, or any MCP-spec client) instead of the manual personal-access-token flow, which is now documented as the fallback for clients without MCP OAuth support. Added a note on the token-in-URL + OAuth-attempt interaction that can surface as "unknown client_id," and its fix. Decision-Log: appended two entries from DECISIONS.md -- the OAuth 2.1 + PKCE + dynamic-client-registration authorization server build (issue #29), including the independent Opus review that caught a production-only RLS bug and an open redirect before ship; and the stale-Vercel-build-cache incident that 500'd every signed-in user right after, root-caused and fixed within the hour. Contribution-Record: one ledger line for the combined session. Home: MCP Setup row now mentions the OAuth flow explicitly. On-Behalf-Of: @cheyras Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>

    @cheyras cheyras committed Aug 11, 2026
  • docs(wiki): sync 2026-08-09/08-10 work — decisions, architecture, MCP setup page Decision-Log: append 20 entries from DECISIONS.md (public catalog landing, auth polish, cloud image tier x2, page-load perf, image_object split, 1,854-image audit, user_set_progress RLS fix, MCP multi-user, landing imagery + libpq sslmode, identity-seam self-host regression, deck/battle-log cloud fix + bug-reporter screenshot (#17), catalog refresh (#21), profile photos (#14), scanner spawn-magick fix (#20), dark-inked set logos (#16), deck-lane alias fix, catalog goes public), in DECISIONS.md order. Architecture: corrects two stale facts against the live repo — scanner accuracy was documented at ~99.6% (a superseded ImageMagick-era pipeline); the shipped dhash8v3/bit(64)/Hamming-distance matcher measures 96.9% at threshold 9. MCP was documented as parked (Wave 3); it is live and multi-user at /mcp via per-user personal access tokens. Also documents the cloud image tier (lazy Vercel-function fill into Supabase Storage), image_object per-tier metadata, public catalog browsing for logged-out visitors, profile photos, and the weekly catalog-refresh workflow — none of which existed in the page before today. Contribution-Record: 19 new ledger rows for today's sessions, reconstructed from commit trailers. Also fixes three stray blank lines that were silently breaking the GFM table into literal pipe-text on the live page from the "Two cloud fixes" row onward — confirmed via a live fetch before the fix. New page: MCP-Setup, built from DEPLOYMENT.md's token → connector → verify → revoke flow (the product's headline feature, previously undocumented on the wiki), linked from Home's page index. On-Behalf-Of: @cheyras

    @cheyras cheyras committed Aug 10, 2026
  • docs(wiki): sync the McDonald's trademark decision (#15) On-Behalf-Of: @cheyras Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>

    @cheyras cheyras committed Aug 10, 2026