feat: add Axl Lounge with five terminal games - #400
Draft
Kaushik-Kumar-CEG wants to merge 12 commits into
Draft
Kaushik-Kumar-CEG wants to merge 12 commits into
Kaushik-Kumar-CEG wants to merge 12 commits into
Conversation
Kaushik-Kumar-CEG
marked this pull request as draft
September 14, 2026 14:43
Signed-off-by: Kaushik <kaushikrjpm10@gmail.com>
Signed-off-by: Kaushik <kaushikrjpm10@gmail.com>
Signed-off-by: Kaushik <kaushikrjpm10@gmail.com>
Signed-off-by: Kaushik <kaushikrjpm10@gmail.com>
Signed-off-by: Kaushik <kaushikrjpm10@gmail.com>
Signed-off-by: Kaushik <kaushikrjpm10@gmail.com>
Kaushik-Kumar-CEG
force-pushed
the
feat/axl-lounge
branch
from
September 14, 2026 15:52
e9ea16d to
b087f2b
Compare
Signed-off-by: Kaushik <kaushikrjpm10@gmail.com>
Signed-off-by: Kaushik <kaushikrjpm10@gmail.com>
Signed-off-by: Kaushik <kaushikrjpm10@gmail.com>
Signed-off-by: Kaushik <kaushikrjpm10@gmail.com>
Signed-off-by: Kaushik <kaushikrjpm10@gmail.com>
Signed-off-by: Kaushik <kaushikrjpm10@gmail.com>
| } | ||
|
|
||
| function parseCastlingRights(value: string): ChessCastlingRights { | ||
| if (value !== "-" && !/^(?!.*(.).*\1)[KQkq]+$/u.test(value)) { |
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
Chess Puzzles
Chess ships 1,000 reviewed offline Lichess tactics across Easy, Medium, and Hard. Daily and Practice selection is deterministic. Players must follow the exact sourced solution line. Controls support arrows or HJKL, Enter or Space, mouse selection, board flip, progressive hints, difficulty, theme, mode, restart, and in-pane help. Solved daily puzzles continue in Practice.
The square board uses original dependency-free indexed artwork authored for Axl. Windows Terminal rendering is calibrated from terminal cell metrics. Unsupported terminals, missing metrics, and text-only mode retain the semantic text board. Selection, legal moves, captures, hints, checks, mistakes, and cursor state have non-color cues. Reduced motion applies replies immediately.
Versioned bounded storage reconstructs Chess progress from canonical puzzle data and keeps completion statistics. Focus loss, pause, resize, presentation changes, and disposal cancel scheduled work safely. The Agent pane remains live while a game is open.
Architecture and provenance
Lounge uses the public extension API and bounded client-local storage. Games create no canonical session events and add no network access or production dependency. The generic raster contract validates dimensions, palettes, pixels, placement, and descriptions before the TUI emits terminal controls.
Wordle data uses the pinned ESDB release documented in the repository. Sudoku fixtures are independently generated and versioned. Chess data is a reviewed CC0 subset of the official Lichess puzzle database, revision
lichess-2026-09-10-axl-chess-v1; checked-in provenance records the source archive digest, retained source IDs, quality bounds, review results, and artifact hashes. Chess artwork is original Apache-2.0 project code.Diff size
The final PR contains 43,876 additions and 108 deletions across 99 files.
Verification
Passed:
pnpm buildpnpm typecheckpnpm lintpnpm check:boundariespnpm check:generatedreuse linton the tracked treepnpm audit --audit-level highgit diff --checkThe aggregate
pnpm testrun completed 1,142 tests with 1,127 passing, 11 skipped, 3 cancelled, and 1 failure. The known unrelated daemon testqueue restore leaves queue and active work untouched when its event append failsreportsSession cleanup failedand times out its daemon file. Under aggregate contention, Chess perft and release-package files also exceeded the 30-second per-file limit; both pass when run in their focused suites. The PR does not change daemon code.AI assistance
AI-assisted with OpenAI GPT-5.6 Sol through pi. The contributor directed the work and reviewed the complete diff, provenance, generated output, and verification results under
AI_POLICY.md.Follow-ups