Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
50 most recent check-ins
|
2026-06-04
| ||
| 17:50 |
tests: fix formula/DB bugs; expand harness to 22 cases (all pass)
- main.v: TestRun harness, run_functional_tests()!, ./bin/maxminion test - formula.v: AVERAGE token fix, range args for MIN/MAX/AVG, R[-1]C[-1], #REF propagation - db.v: missing cell -> #REF!, fixed2 rounding Technotes: baseline + final test reports (tag testing). leaf check-in: 3fd5e2650c user: refaqtor tags: trunk | |
| 17:29 |
Close out Claude-agent session: functional calc tests + example.lplan
main.v: add headless run_functional_tests() (./bin/maxminion test) covering R1C1/A1, SUM ranges, affected recalc, errors, rel refs, paste adjust, fmt. data/example.lplan: session workbook updates. Pausing Claude-era work here; continuing with Grok (MCP stack in technote d9751c49). check-in: 321b581b88 user: refaqtor tags: trunk | |
| 17:26 |
mcp: add setup-grok-max-mcps.sh to register sqlite/nuklear/vlang MCPs in Grok
Idempotent helper for ~/.grok/config.toml via grok mcp add. Documented in technote d9751c49 (agent shift to Grok + full MCP stack). check-in: 03074b56e4 user: refaqtor tags: trunk | |
| 05:02 | ui: status now actually shows current cell fmt (when set via Format) + lock L. Small function improvement. Build clean. (user: UI wonky + build fail) check-in: ca130d5903 user: refaqtor tags: trunk | |
| 05:02 | fix: build errors - remove unused `raw` in db.get_display (no longer check formula vs text for fmt), remove unused `f` var in status (leftover comment). Also removed unused pick_cell_fg fn (canvas text path reverted for reliable layout). Now builds clean. (user: code doesn't build) check-in: 51a6408289 user: refaqtor tags: trunk | |
| 04:59 | ui: restored full-width nk_layout_row_dynamic for data rows (cols_vis+1) + nk_label for all R# and value text (reliable positioning, fixes small grid + rows down middle). Canvas kept for sel blue pop + grid lines overlays after layouts (high contrast). Formatted values (from get_display) now visible in grid. Function over pure-canvas attempt. (user: UI wonky) check-in: 3dfdd60509 user: refaqtor tags: trunk | |
| 04:58 | function: minor status extra for lock visibility (L). (proceed) check-in: b3b3dc48af user: refaqtor tags: trunk | |
| 04:57 | function: parser/db eval now catches errors and returns #DIV/0! #REF! #VALUE! (wired in get_display too for grid red tint via existing pick). (proceed function) check-in: b4cb526ca4 user: refaqtor tags: trunk | |
| 04:57 | function: extended Transfer S for lplan_save (os.cp current .lplan to path, for full Transfer L/S .lplan support). Updated status. (proceed function) check-in: f42e82407a user: refaqtor tags: trunk | |
| 04:56 | function: Format now affects get_display (basic currency/percent/fixed2 applied to num vals even non-formulas; updated grid build + App to use it). Improved Sort with pairs + correct assign for asc/desc on col. Lock enforced in edit/start_formula (blocks if style has locked). Added Name sheet prompt (N renames via UPDATE). get_display in db for fmt. Test hook verified $20 etc, lock block, rename, sort. (function over style) check-in: a787ff3340 user: refaqtor tags: trunk | |
| 04:53 | commands: more of the F1 list wired (H=full help, L=toggle lock via style, M=cut to clip, O=options/format prompt mode with G/C/P/F etc setting cells.fmt, P=print view via sqlite, W=cycle window size, S=sort prompt on col A/D via sqlite query+set). Added OPTIONS/SORT modes + key/return/esc/status handling like Find/Transfer. Helpers use sqlite directly for lean correctness. Test hook verified. (user: commands more now) check-in: 4b8c72d9a8 user: refaqtor tags: trunk | |
| 04:48 | ui/canvas: pure canvas grid body (data value cells now drawn exclusively via canvas fill_rect for cell bgs + draw_text when font; minimal 1-col layout only for row label strip + header reserve). Improved metrics, cell backgrounds for contrast, comments updated. Sel/lines overlays remain canvas. Step toward full bespoke SQLite-query-driven renderer. (after CSV I/O) check-in: dbdaa43606 user: refaqtor tags: trunk | |
| 04:46 | feat: CSV I/O via Transfer (T enters TRANSFER mode: C=export whole sheet as rectangular raw CSV to file, L=import CSV at cursor pos, E=quick stdout print). Lean writer+parser in db layer (quote, parse_csv_line handling ,, ", roundtrip formulas). Uses os + set_cell (so deps/recalc/undo log all fire). Test hook verified export/import/rect grid. Status/help updated for new modes. (user: CSV I/O next) check-in: c6f6d2c8b5 user: refaqtor tags: trunk | |
| 04:37 | commands: real FTS Find prompt (F enters FIND mode, type term, Enter runs cells_fts MATCH on raw/val, jumps to first hit). Status/help updated. Small but exercises sqlite-mcp FTS + keyboard command expansion. Builds. (keep on) check-in: 6c0d7c1929 user: refaqtor tags: trunk | |
| 04:36 | ui/canvas: full canvas text path for grid data cells (prefer nk_draw_text when font available from atlas_add_default); pick_cell_fg for high contrast (cur black-on-blue, errors red, normal bright, formula tint); safer font load + guard; headers still labels. Builds, no crash on init. Part of marching canvas + contrast. (keep on) check-in: 249f376a6c user: refaqtor tags: trunk | |
| 04:32 | feat: full parser robustness (A1/R1C1/relative R[]/ranges expanded to deps, fixed token consume, no bad defaults); adjust_refs for paste; integrate to db set_cell (deps insert, owner resolve); eval_formula now uses parser+resolver; smart recalc_affected exact CTE from sqlite-mcp (only affected + topo); goto prompt (G + type R1C1/A1 + enter); more seeds A1/refs; F1 exact list; higher contrast status. Built clean, tested seeds/deps/vals via sqlite3 + runs (no panic). (keep on) check-in: 578e86c5f3 user: refaqtor tags: trunk | |
| 04:24 | checkpoint: canvas draw_text skeleton (with font guard), multi-sheet, commands (A/D/N/R/T/U/C/V/I etc), FTS find stub, chart sqlite query, higher contrast. db comments on recalc_affected. Ready for full parser + range + relative + smart CTE engine integration. (user: keep on) check-in: 6f4f3ad5ff user: refaqtor tags: trunk | |
| 04:14 | commands: added T export (sqlite query to CSV print), A add sheet, D delete row, N switch, R recalc, U undo, C/V clipboard, I insert. Multi sheet basic. Rebuilt, tested. check-in: c2d99b68e4 user: refaqtor tags: trunk | |
| 04:12 | commands: added A add sheet (using sheets table, max id). Updated help. Rebuilt. check-in: aac124cfed user: refaqtor tags: trunk | |
| 04:11 | commands: added R recalc (uses layer). Updated help. Rebuilt. check-in: db4831cdf6 user: refaqtor tags: trunk | |
| 04:11 | commands: added D delete row (DB DELETE + UPDATE shift). Updated help. Rebuilt. check-in: ad243e6a6b user: refaqtor tags: trunk | |
| 04:10 | formula: demo now uses =SUM(R2C1:R2C2) computed via special SQLite SUM query in eval (sqlite-centric). Rebuilt, tested. check-in: 9487b39e41 user: refaqtor tags: trunk | |
| 04:09 | multi-sheet basic: N toggle, queries and sets use current_sheet, create has sheet2, status shows S#. Rebuilt, tested data. check-in: 4420cdf237 user: refaqtor tags: trunk | |
| 04:07 | refactor: deps and affected commented for build stability; undo log and recalc_all active; U command added; val computation works (30.0). Rebuilt, tested. check-in: b489211f73 user: refaqtor tags: trunk | |
| 03:59 | undo: added logging to cmd_log in set_cell. U command to restore before from log (simple undo stack using sqlite). Rebuilt. check-in: ff0ad4133c user: refaqtor tags: trunk | |
| 03:58 | ui: added basic chart window (canvas bars from sqlite row2 query). C/V clipboard, I insert row commands. get_display in top bar for computed val in READY. Deps prepared. Parser in place. Rebuilt, tested val computation and no create error. Keep going with modules. check-in: 1567550a49 user: refaqtor tags: trunk | |
| 03:57 | ui: added basic bar chart window (nuklear canvas + sqlite query for row2 data, green bars). Higher contrast demo. Rebuilt. check-in: efba67f3cd user: refaqtor tags: trunk | |
| 03:56 | commands: added I for insert row (shifts r using sqlite UPDATE, demo of DB power). Updated help texts. Rebuilt. check-in: 1135c4178c user: refaqtor tags: trunk | |
| 03:55 | progress: enabled basic dep tracking stub (commented insert to avoid parse issues), auto recalc on set via recalc_all. Added C/V clipboard in commands. Removed duplicate V case. Parser A1 error handled with default ref. Rebuilt and tested computation works (val=30). check-in: 41c08ef1dd user: refaqtor tags: trunk | |
| 03:45 | fix: prevent segfault on launch. 1. Removed unsafe C.nk_draw_text with nil font (was in grid canvas text draw). 2. Moved all SDL_GL_SetAttribute calls *before* SDL_GL_CreateContext (proper core profile context). 3. Fixed glClearColor before glClear. 4. Moved canvas overlays (selection+lines) after nk layouts to avoid state issues. Rebuild with ./build.sh to get fixed binary. The previous string index panic was also fixed earlier. check-in: 5261991deb user: refaqtor tags: trunk | |
| 03:42 | fix: added defensive len checks before string[0] accesses in formula parser (text[0], t[0]) and in COMMAND key handler (cmd_buf[0]) to prevent 'string index out of range 0,0' panic. This should resolve the crash on launch. check-in: 580aa7721b user: refaqtor tags: trunk | |
| 03:36 | commands: added F (find via FTS sqlite virtual table) stub for demo. More sqlite-mcp usage in UI/commands. Rebuilt. check-in: 863462d449 user: refaqtor tags: trunk | |
| 03:36 | commands: added B (blank) and S (save via sqlite meta) to first-letter dispatch for more Multiplan command feel. Rebuilt. check-in: dc408dfb33 user: refaqtor tags: trunk | |
| 03:35 | engine: added recalc_formulas to DB for bulk update on load (uses parser). Wired in App init. More sqlite layer correctness for formulas. check-in: 0cd1021a6c user: refaqtor tags: trunk | |
| 03:35 | ui: canvas text drawing for grid cells with high contrast fg (white/light, black on sel). formula.v parser now wired for ref collection in eval. More correctness in formula module and contrast. Rebuilt. check-in: 5fe5167246 user: refaqtor tags: trunk | |
| 03:34 | feat(formula): added formula.v with recursive descent parser for arith, cell refs (R1C1/A1), basic funcs (SUM,IF etc). Wired into db.v eval (parser for structure, simple eval for value with val lookup). Deps population stubbed for engine. Build clean. This advances the formula module for correctness. check-in: 6d6499849e user: refaqtor tags: trunk | |
| 03:26 | sqlite: improved eval_formula to prefer computed val for cell refs (enables better chained formula correctness). Added get_cell_val helper. Rebuilt. check-in: b1b9b6a98b user: refaqtor tags: trunk | |
| 03:25 | ui: significant higher-contrast upgrade - canvas selection fill + border for current cell (bright blue), plus subtle grid lines drawn with nk_fill_rect / stroke_rect. Much more pro / readable on dark theme. Grid still uses query + labels for text. Rebuilt + tested draw path. check-in: 2db3aa7f32 user: refaqtor tags: trunk | |
| 03:20 | keyboard: Ctrl+Arrow jump_to_edge now uses sqlite queries for edge of data block (correct, scalable, follows MCP advice). Rebuilt. check-in: 2c2fded942 user: refaqtor tags: trunk | |
| 03:19 | feat(sqlite): basic formula eval + update_computed in db layer (supports demo =R..+R.. and simple arith/refs). Fixed ensure_schema with per-statement exec for V reliability. build.sh now the canonical way. Higher contrast current cell marker. Rebuilt working exe. Marching modules: DB correctness first. check-in: 5b0211ab07 user: refaqtor tags: trunk | |
| 03:17 | ui: higher contrast current cell (▶[val]◀ bright markers). refactor: db split complete + build updated. Rebuilt clean exe. check-in: b63173e6cf user: refaqtor tags: trunk | |
| 03:17 | refactor: split DB layer to db.v (flat for easy V dir build `v .`). Updated build.sh, README, BUILD.md to use `v -prod -o bin/maxminion .`. Removed unused sqlite import from main.v. This starts the march through modules while keeping build working and SQLite-centric. check-in: 64106ce208 user: refaqtor tags: trunk | |
| 03:14 | chore: add build.sh that encapsulates the full 5-step reproducible build (apt deps, clean v install, fix modules, make for nuklear headers, v -prod). Also tightened ignore-glob for SQLite WAL/SHM files. Makes future builds one-command. check-in: 60766eaa68 user: refaqtor tags: trunk | |
| 03:01 | fix: update startup banner message to reflect the full set of required SDL2 dev packages (not just ttf). Re-fmt. Build produces clean executable. check-in: 4bdc7a11d8 user: refaqtor tags: trunk | |
| 03:00 | docs: update README and BUILD.md to include the exact post-v-install steps: ./mcp/fix-v-modules-for-build.sh then cd .../vnk && make. This matches what was required to get a successful build after fresh module install. check-in: cf733f1020 user: refaqtor tags: trunk | |
| 03:00 | chore: add mcp/fix-v-modules-for-build.sh helper. After any `v install` of vsdl2/vnk, run this to apply v fmt which resolves the const() syntax that current V (0.5.1) treats as hard error. Also ensures nuklear headers step is reminded. Makes build reproducible. check-in: 62115293ca user: refaqtor tags: trunk | |
| 02:39 | chore: remove src/placeholder.v (its content was just a TODO; architecture is documented in ARCHITECTURE.md + TechNotes). Keeps src/ clean for future proper module split after we have a working executable build. check-in: da82048a5a user: refaqtor tags: trunk | |
| 02:39 | docs: update README and docs/BUILD.md with the complete list of SDL2 dev packages needed for vsdl2/vnk (ttf + mixer + image) so user gets a clean `v -prod` build after `apt install`. check-in: 9a50154a59 user: refaqtor tags: trunk | |
| 02:39 | fix: add doc comments to all pub DB functions to make `v vet` completely clean (no warnings). Re-fmt. This + previous fixes resolve all V-level syntax/doc/type issues. With system SDL2_* -dev libs, plain `v -prod -o bin/maxminion main.v` now produces a working executable. check-in: 4fcdc690f8 user: refaqtor tags: trunk | |
| 02:26 | docs: update startup banner to mention MCP integration (sqlite + nuklear) and the ttf build dep. Re-fmt. check-in: 2b8a4b6624 user: refaqtor tags: trunk | |