Skip to content

v0.3.0

Choose a tag to compare

@github-actions github-actions released this 05 Sep 02:52
· 60 commits to main since this release

ee20498 chore(release): v0.3.0
be4cf25 fix(board): add the missing ic::trash helper
92e59c6 feat(ai): compact bar reasoning picker
123d5c6 feat(board): presentation page controls, trash icon, explorer header
bcd38fc feat(fill): dense near-solid style + working style switching
09aad70 feat(board): page bar adapts to page count; filename moves above it
642581e style(board): translucent backgrounds for the floating chrome
97d01bd feat(ai): redesign the compact chat bar - pill shape, one-line input
ffc762c refactor(ai): drop the conversation panel's session list
60d9cd2 fix(board): keep the canvas centered through every panel toggle
52ebbe9 feat(workspace): workspaces, explorer tree with per-board sessions, autosave, and a compact chat mode
ee2dbc4 feat(slides): per-page transition effects by design + no chrome in the show
dd3a3c5 feat(slides): camera glide transitions - flips sweep sideways, the show glides in
2343fda fix(slides): lift the presenting veil on a timer, not a render frame
42fff79 fix(slides): open the show on a black veil, fit only after the viewport settles
adb2772 feat(ai): the agent now knows today's date - per-turn clock in runtime context
7948c1f fix(slides): fit the presenting camera to the final viewport, not the stale one
a2237b8 feat(slides): true-fullscreen presentation - PowerPoint-style show mode
85f4566 fix(board): center the presenting view - the hidden AI panel width was still subtracted
2a88317 fix(ai): log success/failure the right way around + record agent build failures
d825df8 fix(ai): tolerate how models actually emit style args - string colors + double-encoded style objects
27249fa fix(slides): contrast rule for text on color blocks + firmer layout anchors
b56ac8d feat(slides): design-system rewrite of the skill - v2.0.0
89a2a67 feat(slides): delete_page tool + sticky follow camera + locked presenting view
05118ed feat(ai): enforce palette at the tool boundary - reject gaudy fills with the correct hex
8e53b87 feat(ai): draw_text anchor=center - page-centered titles without mental math
c92682b fix(slides): ban gaudy fills + page delete
7c1db93 fix(slides): manual +page extends the deck's existing ratio, not always 16:9
ee3b3a2 fix(slides): crash when the AI opened a page - apply runs inside AiPanel's update
6643262 fix(slides): camera follows add_page - new pages opened off-screen drew invisibly
f3c7b77 fix(slides): vertical composition rule for tall pages + spread check in rubric
9c72222 feat(slides): paged PPT with aspect ratios - pages, flipping, presenting, add_page tool
99b08cf fix(platform): no console window in debug builds either
d8cd674 fix(ai): use_skill renders as its own step - was falling into the generic wrench chip
eba26ee feat(ai): scenario skills - scenes move to skills/*/SKILL.md, prompt slims to core
4231315 fix(mindmap): label fold gate past the box edge + teal replaces gold
03fef02 fix(mindmap): text-fit - bound labels wrap 6px inside the border, width estimate biased wide
d9feb46 fix(mindmap): link exits track child heights - kills knots and fan crossings
dcd0376 feat(mindmap): one-call draw_mindmap - model supplies the tree, code owns the layout
b728da4 feat(ai): auto-retry once when the model narrates without drawing + prompt anti-narration hardening
79b9af7 fix(eval): restore ink checks lost in block replacement (seal/inscription/scenery)
8d9cf51 feat(ink): composition discipline - near-shore restraint, varied silhouettes, focal placement
b755207 feat(ai): draw_polygon - irregular closed shapes for the ink-wash style
4d50f62 feat(diag): native exception filter + should_close exit logging
eece630 fix(render): solid fill overdraw - stroke width 2.2x the hatch gap for true solid coverage (no stripes)
ab7f6e6 fix(render): route solid fills through dense hachure strokes
e5bb75c feat(stylebar): hachure/solid fill-style toggle for shapes
10b0a95 fix(platform): grab-offset drag - cursor offset into the window is kept constant
666ecf2 fix(platform): manual window drag (SetCapture + SetWindowPos per move)
ec146db fix(platform): window drag must not enter the modal move loop synchronously
303727e fix(ink): visible-ink density standard
20456c9 fix(eval): neutral report title (not blackboard-specific)
10f40cf feat(eval): ink-wash landscape rubric (evaluate_ink) + ink composition guide
ae440a3 feat(eval): composition checks + centering formula
83de291 fix: adapt chain test to try_recv semantics
710d167 chore: try_recv instead of deprecated try_next; shape arm messages propagate ids
20e4205 fix(ai): sanitize double-escaped newlines + eval surface/contrast checks
7a7e0d7 fix(eval): budget test lookup matched the wrong check name
086fb49 feat(eval): adversarial hardening from real eval rounds 4-8
52b85a9 feat(ai): blackboard-poster goal loop - board themes, rich text params, run logs, headless eval
0316c60 feat(render): element geometry cache + tap-to-dot
35e4436 fix(ci): if expression must live in a block scalar - colon+space in plain scalar broke the YAML parse
5fbf070 fix(ci): single-line job if expression - folded scalar with uneven indent made the workflow file invalid