7.4 KiB
7.4 KiB
Task: Integrate permanent point wallet into MakeLore main
Identity
- Task ID: 20260922-integrate-permanent-points-client-38f5b921
- Mode: Integration
- Branch: main
- Worktree: D:\Datas\OthersProjects\makelore
- Base commit:
2f82b9f79c - Owner: codex
- Status: Ready for Integration
Scope
- Fast-forward MakeLore main from
2f82b9fto the completed permanent-point wallet sourcea1cce428af, then promote its accepted account rules and Main-owned billing data flow into canonical project memory.
Intent And Constraints
- User explicitly authorized handing off the completed 20260921-integrate-game-audio-client-a6c8f241 registration and merging
a1cce42. Official release/start/status succeeded; this task owns primary main in integration mode with the integration lock. - Preserve the three pre-existing untracked package-122, package-123 and client-hang-diagnosis task documents exactly; their approved adopted states remain outside this commit. Source task records and other worktrees are read-only.
- Concurrent Task Gate and Planning Gate Passed. Read entry/own task, memory index, positioning, current state, decisions/auth ADR, architecture/module/data-flow, domain/glossary/success criteria and relevant evidence/reflection/commitment/stale context. Canonical memory is unchanged from the source base; reuse the source task's prior context and inspect the account sections being promoted.
- Assessed 122 peer scopes, intents and promotion candidates. Historical undefined scopes remain unknown/read-only. The isolated coding-teacher task may overlap Sidebar/README but does not contradict the wallet behavior; preserve that task for its later integration. Old membership/reset-card policy is superseded by the user's explicit accepted change.
- Confirmed policy: genuine registration 100 points once, no old-account gift/conversion, CNY 1 = 50 permanent points, parent recharges only their own wallet, youth own balance exact and another payer's balance coarse. Explicit AI-programming funding selection, cloud creator-pays and Plugin personal-payer boundaries remain.
- Preserve Code/Canvas/Robot/cloud Agents, Main-owned authentication and existing module restrictions. No subagents, push, packaging, installation, deployment or real payment. Merge consent does not authorize worktree removal.
Plan
- Fast-forward the verified source into main without altering product files or source records.
- Replace superseded account rules and architecture descriptions, recording the exact source under Integrated Through.
- Verify source parity, focused tests and Renderer typecheck in primary; reuse unchanged-source lint/build/Electron and baseline evidence where applicable.
- Record the result, run the official documentation gate, commit integration documentation and complete task registration. Offer eligible source worktree cleanup separately.
Outcome
- Fast-forwarded main from
2f82b9f79ctoa1cce428afwith no conflicts. Product files and the imported source task record are unchanged from that source. - Promoted the user-confirmed permanent-point policy into current-state, business-rules and decision-index; replaced obsolete membership/reset-card descriptions in system-overview, module-map and data-flow. Recorded actual source provenance under Integrated Through; historical task records remain intact.
- Official drift validation confirms the three adopted foreign task documents remain at their approved original states. They remain untracked and excluded from the integration commit.
- Before cleanup, verified the source worktree was clean, managed and ready_for_integration, with its committed ready record and latest
a1cce42included in main. User then explicitly approved removal of this source worktree; primary and other task worktrees were excluded. - Resumed this same integration task using official start/status and retained the passed planning context for the bounded cleanup. Confirmed the resolved target was exactly the approved child of D:\Datas\OthersProjects.codex-worktrees\makelore, then ran official retire from primary. Git returned Directory not empty and the command exited 1. It partially removed the checkout and Git worktree registration, but retained residual files/directories and the node_modules junction. The source's .git marker and on-disk task record are now absent; the skill ownership/reservation state was retained on failure. No manual removal or registry bypass was attempted.
- Source branch still resolves to
a1cce428afand remains included in main. Primary tracked files are unchanged; the same three unrelated documents remain untracked. Merge/documentation commit88800f9completed before the failed cleanup. - Local merge only: no push, packaging, installation, deployment, real payment or subagent use.
Verification
- In primary main after the merge: 8 focused files / 103 tests passed; pnpm run typecheck passed (Renderer). These cover billing auth/capability/privacy, stable payment intent, pending/review order recovery, frozen prices, own/family/youth balance contracts, account switching, menu refresh and retained Works routes.
- Product parity: git diff
a1cce42-- src electron shared tests README.md package.json pnpm-lock.yaml was empty. The integration changed only canonical documentation and this task record; source record provenance is preserved. - Reused the identical source's passing scoped ESLint, Vite Renderer/Main/Preload/utility build, Windows Electron wallet E2E and actual backend in-memory API contract acceptance. The Electron flow verifies zero balance, original pending-order recovery after reload/repricing, exactly one POST and server-confirmed credit/ledger; it is not a real payment.
- Source limitations remain: full suite had the unchanged Pi runtime-v6 assertion against runtime-v7 and a timing failure that passed in isolation; extended Main typecheck has the same 67 baseline diagnostics, with no added/removed diagnostics. No claim that all repository tests or Main type checks pass.
- Reviewed source-to-main diff and canonical rule changes; git diff --check and official task-aware check_doc_drift passed before the final documentation commit.
Follow-ups
- Source cleanup was approved but is blocked after partial Git removal: task 20260922-permanent-points-client-7f4c9a2e at D:\Datas\OthersProjects.codex-worktrees\makelore\20260922-permanent-points-client-7f4c9a2e, branch codex/20260922-permanent-points-client-7f4c9a2e-permanent-points-client. Residual directory and stale local task registration require a supported recovery path; do not treat this as a clean usable worktree or retry ordinary retire without restoring its prerequisites. Branch/commit are preserved. This failure does not invalidate or block delivery of the completed main merge.
- Before release, deploy matching Works Square permanent-points API / 0094 migration and verify genuine registration, actual payment callbacks and configured desktop payment payload. PostgreSQL upgrade/concurrency and non-Windows packaged acceptance remain release work.
- Track the existing Pi v6/v7 test assertion and Main typecheck baseline independently.
Promotion Candidates
- Accepted source promotions were applied to current-state, business-rules, decision-index, system-overview, module-map and data-flow under this integration lock. No unresolved semantic conflict or additional product decision remains.