Commit graph

335 commits

Author SHA1 Message Date
gpt-engineer-app[bot]
ff3a0fc9c3 Changes 2026-01-20 06:58:21 +00:00
gpt-engineer-app[bot]
ab7a417629 Add Eternal Domination grid
Introduce a new Miscellany interactive "Eternal Domination on a Grid" implementing a 12x10 grid m-eternal domination defense, initial guard layout from the paper, and attack/defense mechanics. Adds page and routing integration, UI scaffolding, and minimal visuals to reflect the figure-10 strategy.

X-Lovable-Edit-ID: edt-ceed3eb3-61ec-4591-8507-b65b83f35093
2026-01-20 04:22:53 +00:00
gpt-engineer-app[bot]
e9128f0aea Changes 2026-01-20 04:22:52 +00:00
gpt-engineer-app[bot]
c2d2cfa990 Add AscDesc grid puzzle
Implement interactive Ascending-Descending Grid Puzzle (Puzzles theme)
- New AscDescGridPuzzle component with grid, A/D labels, number palette, validation, and hints
- New AscDescGridPuzzlePage and route integration
- Hook into App routing to include new puzzle in puzzles list

X-Lovable-Edit-ID: edt-5f6c4886-712d-47ac-ae85-3364cbbeb22e
2026-01-13 01:40:36 +00:00
gpt-engineer-app[bot]
348986b109 Changes 2026-01-13 01:40:36 +00:00
gpt-engineer-app[bot]
45386ffd9b Fix tiger trap logic in Bagchal
Adjust bagchal game to correctly detect tiger traps using updated goat positions
- Reintroduced isTigerTrappedWithGoats to evaluate traps with current goat placements
- Replaced premature trap checks to use updated goat positions after moves
- Fixed three call sites to ensure trap evaluation uses latest state
- Preserved existing win conditions and goat-tiger interaction flows

X-Lovable-Edit-ID: edt-74e1bc3c-b0e9-49f9-83c7-efbe7bea49bc
2026-01-12 09:47:46 +00:00
gpt-engineer-app[bot]
8aad6ed2b2 Changes 2026-01-12 09:47:46 +00:00
gpt-engineer-app[bot]
bbdbdbda06 Add Bagchal game interactive
Introduce a new Bagchal game (Tiger and Goats) with grid-based setup, sliders to adjust m x n (rows 2-10, cols 2-10), goat count, and game modes (2-player or play vs computer). Implement tiger/goat placement phases, movement rules, capture mechanics, and win conditions. Wire into app routes and gallery, and provide Bagchal page.

X-Lovable-Edit-ID: edt-bed94c41-2926-491b-92df-ca0f60dbdc36
2026-01-12 09:39:03 +00:00
gpt-engineer-app[bot]
55c01cea33 Changes 2026-01-12 09:39:02 +00:00
gpt-engineer-app[bot]
dee3482dfa Update U-matrix on rent changes
Ensure the U-matrix recalculates whenever rents are updated by clarifying dependencies and re-render behavior in RentDivisionPuzzle.tsx, so changes to individual rents trigger a recalculation of utilities (U = V - R) across all agents and rooms.

X-Lovable-Edit-ID: edt-a60b7332-4f67-4926-a402-d083626b1c12
2025-12-18 09:13:45 +00:00
gpt-engineer-app[bot]
4ac463e70e Changes 2025-12-18 09:13:45 +00:00
gpt-engineer-app[bot]
eb42b1caa7 Add Social Choice listing
Add a Social Choice theme page listing interactives, including Envy-Free Rent Division, with a structured gallery similar to Games and Rent Division pages, using icons and descriptive cards.

X-Lovable-Edit-ID: edt-a900553a-3f11-49b7-90bc-4ea5f2b4481e
2025-12-18 09:07:59 +00:00
gpt-engineer-app[bot]
1910f2ae6c Changes 2025-12-18 09:07:59 +00:00
gpt-engineer-app[bot]
a1ae2df9b9 Add rent total slider and icons
- Introduce a total rent slider to Rent Division puzzle to vary overall budget
- Replace agent labels with icons and show names to the left of icons

X-Lovable-Edit-ID: edt-606b97af-eba4-41c9-983c-f406baa289b7
2025-12-18 09:02:39 +00:00
gpt-engineer-app[bot]
78528fbe8d Changes 2025-12-18 09:02:39 +00:00
gpt-engineer-app[bot]
394bf32820 Add envy-free rent division UI
Introduce an interactive 4-agent, 4-room tool to populate V-matrix, set rents, assign rooms, compute U-matrix, and highlight envy. Includes routing page and partial UI layout for V/U matrices, allocations, and envy display.

X-Lovable-Edit-ID: edt-3968a01f-7029-4266-a86a-025fce6e3954
2025-12-18 08:56:57 +00:00
gpt-engineer-app[bot]
2922027ee7 Changes 2025-12-18 08:56:57 +00:00
gpt-engineer-app[bot]
9ab07e0421 Fix vertical placement hover bug
- Improve handleCellHover logic to consider all ways a domino could cover the hovered cell, including vertical placements that start at the cell above. This ensures you can always put a vertical domino back to its original position by hovering over the relevant adjacent cell.

X-Lovable-Edit-ID: edt-40e80a71-a4ae-4645-a1b3-e8105a8f3680
2025-12-08 10:00:40 +00:00
gpt-engineer-app[bot]
8115d26824 Changes 2025-12-08 10:00:39 +00:00
gpt-engineer-app[bot]
065ce19cd1 Improve board container UI
Enhance DominoRetilingPuzzle board by enlarging the container to remove scrolling, and add cleaner boundaries with padding and rounded corners. Adjust surrounding layout accordingly.

X-Lovable-Edit-ID: edt-922d5ab6-04d3-4109-911c-0f050d43acb5
2025-12-08 09:41:19 +00:00
gpt-engineer-app[bot]
56c73bf714 Changes 2025-12-08 09:41:19 +00:00
gpt-engineer-app[bot]
c5d7901fa2 Shade inaccessible region
Shade the inaccessible last-column region (except top tile) to reflect board limits and fix tiling holes at 12x12 by ensuring the shaded area covers missing cells and address incomplete tiling bugs.

X-Lovable-Edit-ID: edt-11779aed-a2f6-4c13-92a0-0ccbd20e7020
2025-12-08 09:40:11 +00:00
gpt-engineer-app[bot]
2e99b4b53d Changes 2025-12-08 09:40:11 +00:00
gpt-engineer-app[bot]
bfff2b5651 Add board size slider
Introduce an interactive feature to adjust the domino puzzle board size (2–12, even-only) and shade the blue extra square. The update includes:
- A new slider for selecting board dimensions (even numbers only, 2–12)
- Blue extra square shading to be visually distinguished
- Maintains existing puzzle mechanics across any chosen dimension
- Ensures the description text and UI reflect the selected board size dynamically

X-Lovable-Edit-ID: edt-d3f37ef8-791f-4f55-a0a9-9c25178e7cec
2025-12-08 09:37:58 +00:00
gpt-engineer-app[bot]
3b26796cd0 Changes 2025-12-08 09:37:58 +00:00
gpt-engineer-app[bot]
5671af101c Make domino move hover only
Update DominoRetilingPuzzle UI to:
- hide the selected domino from the board
- use a hover-based placement indicator instead of dashed outlines
- trigger placements on hover-and-click interaction (described in code)

X-Lovable-Edit-ID: edt-3461c9a0-2f9d-48af-acf7-3a0962c81a8f
2025-12-08 09:33:01 +00:00
gpt-engineer-app[bot]
12606925b7 Changes 2025-12-08 09:33:01 +00:00
gpt-engineer-app[bot]
1dfa8d6617 Create Domino Retiling puzzle
Implement an interactive Domino Retiling puzzle:
- New DominoRetilingPuzzle component to tile an augmented 8x8 board into all horizontal dominoes with an extra right-hand square
- New DominoRetilingPuzzlePage and route integration
- Puzzles list integration via App.tsx
- Pattern follows existing puzzle UI (cards, instructions, board, interactions)
- Includes generate/random tiling, valid placement, and reset hooks for replayable puzzles

X-Lovable-Edit-ID: edt-14d7396d-c5c0-4f4b-bf64-4264937b9c28
2025-12-08 09:29:01 +00:00
gpt-engineer-app[bot]
b8f6f38e8c Changes 2025-12-08 09:29:01 +00:00
gpt-engineer-app[bot]
fd3e1ac8d7 Color full hook segments
Color entire L-shaped hooks in Ferrers-Ramanujan diagram, not just diagonal boxes. Applies colors to all boxes forming each hook (boxes to the right in the same row and below in the same column) with consistent coloring across both diagrams. Updates color generation and rendering accordingly.

X-Lovable-Edit-ID: edt-5dda2f3e-2253-418a-a683-aaa8c065ec76
2025-12-01 07:10:55 +00:00
gpt-engineer-app[bot]
0b89a70805 Changes 2025-12-01 07:10:55 +00:00
gpt-engineer-app[bot]
b398f4864b Color code hooks for RR
Add color-coding for generated hooks and mirror colors on RR partition.
- Introduce hookColors and baseHue state for pastel color shading.
- Generate random base color per run and derive diagonal hook colors across both diagrams.
- Apply consistent colors to Ferrers diagram highlights and Rogers-Ramanujan partition boxes.
- Ensure muted pastel shades traverse along the diagonal hooks and reflect on both views.

X-Lovable-Edit-ID: edt-8409dc4c-1a65-459a-9898-f0e32c8966a0
2025-12-01 07:09:13 +00:00
gpt-engineer-app[bot]
809ef10980 Changes 2025-12-01 07:09:13 +00:00
gpt-engineer-app[bot]
9433f41cbf Limit hooks to main diagonal
Restrict Ferrers-Rogers-Ramanujan animation to traverse only the main diagonal (top-left to bottom-right) of the Ferrers diagram. Process hooks at positions (i, i) as long as a box exists, stopping when the diagonal ends. This replaces the previous diagonal traversal to avoid generating excessive hooks.

X-Lovable-Edit-ID: edt-dd8be332-f1e2-49f5-9077-6354075ccfe7
2025-12-01 07:06:42 +00:00
gpt-engineer-app[bot]
5d4d87b3a1 Changes 2025-12-01 07:06:42 +00:00
gpt-engineer-app[bot]
b694b38558 Fix FerrersRogersRamanujan loop
Refactor animation logic to prevent infinite loop by replacing local step variable with state-driven useEffect, add proper termination, and guard intervals. Also introduce isAnimating flag, and adjust generate button states to reflect animation progress.

X-Lovable-Edit-ID: edt-8715691a-8a92-4c00-b580-9cb8dd310fc8
2025-12-01 07:05:05 +00:00
gpt-engineer-app[bot]
863f590d8c Changes 2025-12-01 07:05:04 +00:00
gpt-engineer-app[bot]
a87231ce46 Add Ferrers-RR interactive
Introduce a new interactive under discrete math counting:
- plan for Ferrers diagram with partition sliders, commit, and RR partition generation
- scaffold components, page, and routing integration
- prepare for animated hook-based RR partition generation and visualization

X-Lovable-Edit-ID: edt-63dbabbf-9a98-4e18-a83d-f8c0f2d03697
2025-12-01 07:02:39 +00:00
gpt-engineer-app[bot]
1b43ff2a32 Changes 2025-12-01 07:02:38 +00:00
gpt-engineer-app[bot]
da887327f7 Add dynamic sliders to puzzle
Introduce numPresents and numBoxes sliders in PresentsPuzzle.tsx, replacing fixed 26/100 text with dynamic values. Propagate these values through generation, orders, rendering, and win logic to ensure presents ≤ boxes, update labels accordingly, and keep UI text in sync with slider values.

X-Lovable-Edit-ID: edt-f8775504-3605-417d-9d51-1502310b4168
2025-11-19 04:05:25 +00:00
gpt-engineer-app[bot]
3641f01310 Changes 2025-11-19 04:05:25 +00:00
gpt-engineer-app[bot]
ca39141f80 Fix step to end edge case
Ensure step-to-end stops at current final state instead of rewinding to an earlier winning step; add guard to do nothing if already at end or winner determined, preserving final outcome. Adjust logic to prevent recalculation after completion.

X-Lovable-Edit-ID: edt-7b7e08ff-28cd-4aed-9f1f-08fce229a90b
2025-11-19 03:59:09 +00:00
gpt-engineer-app[bot]
6a5bd31b28 Changes 2025-11-19 03:59:08 +00:00
gpt-engineer-app[bot]
363e681f48 Fix step to end to win step
Compute winning step where a player first reaches 26 gifts and sync both players to that exact step, advancing to that step for both and ensuring at least one undiscovered gift for the loser unless tie.

X-Lovable-Edit-ID: edt-921d1c7e-89b5-49dc-ae02-ffee236d632b
2025-11-19 03:56:53 +00:00
gpt-engineer-app[bot]
d0ef67e995 Changes 2025-11-19 03:56:52 +00:00
gpt-engineer-app[bot]
6450824c73 Fix auto play label and first step behavior
- Change initial play button label from Resume to Auto Play
- Ensure first step opens a single box when manually stepping
- Adjust logic to start from an initial idle state (-1) to align with expected behavior

X-Lovable-Edit-ID: edt-70f04cee-2de9-4621-9009-66a571a91a4f
2025-11-19 03:49:23 +00:00
gpt-engineer-app[bot]
eae31d66f4 Changes 2025-11-19 03:49:23 +00:00
gpt-engineer-app[bot]
8cb5f4bdf4 Synchronize auto-play steps
Ensure Alice and Bob's step counts advance in lockstep during auto-play and remain synced when paused. Update PresentsPuzzle logic to keep both sides' opened boxes counts aligned and reflect consistent progression across pause/resume.

X-Lovable-Edit-ID: edt-5987193b-4caf-47a0-a0d9-332b2b269e6f
2025-11-19 03:44:38 +00:00
gpt-engineer-app[bot]
c4bbe0d000 Changes 2025-11-19 03:44:37 +00:00
gpt-engineer-app[bot]
2bfc8603ca Fix presents puzzle buttons
Improve button functionality for Presents Puzzle by debugging and updating pause/step logic, ensuring proper initialization and synchronous pause handling, and aligning behavior with other interactives.

X-Lovable-Edit-ID: edt-39d880a1-7b02-467d-a083-abd2257f5e13
2025-11-19 03:38:28 +00:00