Release planning

CadCraft 0.9 impact map

Every fix and feature lined up for 0.9, and what each one touches: which apps, and which layers of the stack.

ProjectCadCraft
Sheet0.9 impact
Items273
Date2026-11-09
115Fix
147Feature
4Spike
0Platform
0Site ops
0Sanity check
7Decision
≈ 0days in the written 0.9 plans
  • Planned 0 on the plan for the release it is filed under
  • Built 271 built and working in /lab (the dev builds). Whether the public has it is its reach: "in the lab", "Live" (the last gate) or "switched off"; see docs/REACH-LIVE.md
  • Partly built 1 part of it is built in /lab; the rest waits (see "Waits on")
  • Promised 0 the live site already says it is coming
  • Moved 0 moved here from an earlier release or wishlist
  • Found 0 bug found after a release shipped; fixed in a point release or the next one
  • Candidate 0 recommended in a spike or session log; owner to choose
  • Community please test 0 built and in /use; a Discord post gives the steps and the expected result and asks people to try it on their own devices, files or know-how
  • Decision Time 0 a decision, check, file, key, flag or go only you can give; folds into the list once answered

Built means built and working in the lab. Live means the public can use it, and is the last gate: 270 Built · Live, 1 Built · in the lab.

Sheet 1 · impact areas

Where 0.9 lands

How many items touch each app and each layer, by kind. One item can touch several areas, so the rows add up to more than the item count. Pick a row to filter the schedule below.

Impact areaFixFeatureSpikePlatformSite opsSanity checkDecisionAll
Apps
CadCraft 38 36 – – – – 2 76
BimCraft 27 53 2 – – – – 82
ModelCraft 19 45 2 – – – 2 68
MarkupCraft 16 11 – – – – – 27
TakeoffCraft 18 7 – – – – – 25
CivilCraft 14 32 – – – – – 46
DetailCraft 13 13 – – – – – 26
PartCraft 18 27 1 – – – – 46
Studio 2 5 1 – – – – 8
SuperCad Studio 22 17 – – – – – 39
Layers
Site and services 7 11 – – – – 5 23
Desktop host 1 1 1 – – – – 3
App shell 2 1 – – – – – 3
App code 10 28 3 – – – 3 44
Our engines – 12 1 – – – 1 14
Vendor engines – – – – – – – 0
Drawing surface – – – – – – – 0
Help and words 1 2 – – – – 1 4
Tests and tooling – – – – – – – 0

Sheet 2 · schedule

Every fix and feature

Grouped by track. App chips carry each app’s layer colour; Studio is in ink. "Waits on" names what has to happen first; the small lines under it say who asked and where the item is written up.

Add an item Fork map (Rust and C++ forks) The roadmap

Issues sync every 10 minutes; last sync Nov 9, 2026 7:00 pm.

ItemWhatAppsLayersStatusDaysWaits onIssues
Hardware design: HDL to silicon (Track HD) 4
FeatureHD.1 Link to HD.1Comment on HD.1 Chip design: Verilog and VHDL source, checks, hierarchy

Edit hardware description files with syntax checks and a module hierarchy view. Plan docs/0.8-PART8.md.

CadCraftSuperCad Studio App code Built · Live 4 Tried on our own sample only From: Discord community (Discord) Discord (a Discord member) 2026-10-30; owner: add this to 0.8, probably an add-on
FeatureHD.2 Link to HD.2Comment on HD.2 Chip design: netlist graph and schematic view

Read structural Verilog into a netlist graph and show it as a schematic using the shared schematic engine. Plan docs/0.8-PART8.md.

CadCraftSuperCad Studio App code Built · Live 3 Tried on our own sample only From: Discord community (Discord) Discord (a Discord member) 2026-10-30; owner: add this to 0.8, probably an add-on
FeatureHD.3 Link to HD.3Comment on HD.3 Chip design: Liberty, LEF, DEF and SDC files

Our own readers and writers for cell timing and power libraries, floorplans and timing constraints, written from the public format descriptions. Plan docs/0.8-PART8.md.

CadCraftSuperCad Studio App code Built · Live 4 Own samples only; no vendor/PDK files tried yet From: Discord community (Discord) Discord (a Discord member) 2026-10-30; owner: add this to 0.8, probably an add-on
FeatureHD.7 Link to HD.7Comment on HD.7 Chip design: GDSII and OASIS layouts

Read and write GDSII and OASIS with layer maps, hierarchy and a fast view of large layouts. Plan docs/0.8-PART8.md.

CadCraftSuperCad Studio App code Built · Live 4 No third-party OASIS file tried yet From: Discord community (Discord) Discord (a Discord member) 2026-10-30; owner: add this to 0.8, probably an add-on
Library 8
FeatureATTR.1 Link to ATTR.1Comment on ATTR.1 SuperCad Studio: project report binder with an automatic credits page

Owner 2026-11-03: 'a project report binder, where all the documents go, calculations, notes, etc., and add a credits page.' Built in the lab as the report-binder plugin (Workflow menu, Ctrl+K, Report and price strip): one PDF with a cover and contents, calculations, notes, tasks, optional time and calendar, documents, and always a Credits page, stamped with page numbers, saved in Documentation and downloaded. Credits come from saved IFC and DXF files and from open CadCraft panels (lib/report/credits.js); a closed DWG is listed as not checked. Engineer calculation reports file themselves in the project. Other files are named as not included. Not built: the binder in the Finalize and export zip, other apps' calc sheets filing themselves, bookmarks, a credits table on a sheet in CadCraft and BimCraft. Other scripts print as ? in typeset pages. Tests: bin/test-super-binder.mjs, tools/super-test/binder.mjs. Not released.

SuperCad Studio Built · Live – – From: owner (Site) owner 2026-11-03, library item page
FeatureATTR.2 Link to ATTR.2Comment on ATTR.2 SuperCad Studio: tick what goes in the Finalize and export zip

Owner 2026-11-03. The export dialog has a 'Project documents in the zip' list under the formats: Project file, Notes, Tasks, Time log, Calendar events, Project report binder, Credits page, Documentation folder. Plugins offer items through api.exportItem. The binder is ticked the first time, the rest are not; ticks are remembered in this browser. They go in documents/ and contents.txt names anything that had nothing to add. CC0 items stay on the credits page. Tests: bin/test-super-binder.mjs, tools/super-test/binder.mjs. In /lab, not released.

SuperCad Studio Built · Live – – From: owner (Site) owner 2026-11-03
FeatureATTR.3 Link to ATTR.3Comment on ATTR.3 Report binder: choose the section for each document

Owner 2026-11-03. Each document in the binder dialog has a section picker (Calculations or Documents), kept in the project. Until someone picks, the guess uses who made it (Engineer), the name (calc, calculation, data sheet, analysis, sizing) and the text (an engineer-of-record line). Only those two document sections exist; no sections of your own. Tests: bin/test-super-binder.mjs, tools/super-test/binder.mjs. In /lab, not released.

SuperCad Studio Built · Live – – From: owner (Site) owner 2026-11-03
FeatureATTR.4 Link to ATTR.4Comment on ATTR.4 Report binder: Unicode text, Arabic and Hebrew right to left

Owner 2026-11-03. Typed pages now embed a subset font only when the text needs one: Latin extended, Greek and Cyrillic (Liberation Sans), Arabic, Hebrew, Armenian and Georgian (DejaVu Sans, newly vendored in assets/vendor/rtl-sans), Thai, and Chinese, Japanese and Korean (10 MB, fetched on first need). Arabic letters join and right-to-left lines are ordered with numbers and Latin kept in order (lib/report/bidi.js, a simplified bidi, no bidi control characters). Limits: Devanagari and other Indic scripts have no font or shaper, so they still print as ? and are counted; those stretches print regular, never bold or italic; text copied from Arabic pages comes out as presentation forms in visual order; the page stamp leaves off a project name it cannot print. A font that fails to load prints ? and the dialog says so. Checked by eye on one rendered page, not by a native reader. In /lab, not released.

SuperCad Studio Built · Live – – From: owner (Site) owner 2026-11-03
FeatureATTR.5 Link to ATTR.5Comment on ATTR.5 Report binder: clickable contents and PDF bookmarks

Owner 2026-11-03. Each contents row on the cover links to its page, and the PDF has bookmarks by section with the documents under them. Read back with pdf.js. A merged PDF's own bookmarks are not kept. MarkupCraft's writeOutline moved to lib/report/outline.js. In /lab, not released.

MarkupCraftSuperCad Studio Built · Live – – From: owner (Site) owner 2026-11-03
FeatureATTR.6 Link to ATTR.6Comment on ATTR.6 One shared PDF text kit: BimCraft and CadCraft use lib/report

Owner 2026-11-03. lib/report is now the only copy: BimCraft's a Discord member-pdf.js and Markdown parser and CadCraft's pdf-font.js are thin wrappers over synced a Discord member/report copies (tools/report/sync.mjs; tools/engineer/sync.mjs for PartCraft and SuperCad Studio). BimCraft's PDFs still print with the built-in fonts only; passing fonts would give it Unicode too, not done. Tests pass: bin/test-bimcraft.mjs --sx-tags --only docs (48), --regs (151), bin/test-cadcraft.mjs (2773), bin/test-markupcraft.mjs (564). In /lab, not released.

CadCraftBimCraftMarkupCraftSuperCad Studio Built · Live – – From: owner (Site) owner 2026-11-03
MarkupCraft 1
FeatureNOTES.1 Link to NOTES.1Comment on NOTES.1 Pasteboard, show/hide notes and private notes

From a Discord member on Discord (keeps scratch notes and snapshots beside the sheet so they never reach the client). Built in /lab 2026-11-03, not released. Pasteboard: the area around each sheet holds notes and picture snapshots at paper size; nothing on it prints. Notes: any markup can be a note, shown or hidden with Shift+H or the bar switch, kept out of print, flattened copies, exports and other PDF readers. Private notes: encrypted with the writer's own passphrase (no recovery), not sent to Live, assistants or the clipboard; colleagues' saves carry them untouched and nothing tells them one exists. Save a clean copy removes all of it. **SuperCad Studio:** private notes are encrypted files in the project's Documentation/Private notes, never in the PDF, not even sealed, and are left out of the report binder, document exports, Finalize and export and Email this. **Untested:** a real large vector set, a desktop build, a real two-person Live session. Tests: 70, 38 and 27 passed. Log docs/0.9-sessions/notes-pasteboard-09.md.

MarkupCraftSuperCad Studio Built · Live – – From: Discord community (Discord) Discord 2026-11-03
Wall tool 4
FeatureWT.2 Link to WT.2Comment on WT.2 Wall tool, Draw: rectangle, rotated rectangle, polygon, arc by centre, tangent arc, pick one line, trace outline

Wall tool spec pages 4-8 (Duncan, 2026-11-05), tracked at /roadmap-internal 'BimCraft wall tool specification'. Icons: the DU.1 family (assets/js/app-workspace-icons.js: 32 grid, 1.5 round stroke, two-tone fills, Full Color or Outline). Not built (page 5): Rectangle (four walls, four corner joins, one action), Rotated rectangle, Polygon (inscribed / circumscribed), Arc by centre (centre, radius, sweep), Tangent arc (continues from the last segment), Pick lines (one line or edge at a time; Tab picks the chain; today only a whole DWG / DXF / PDF scan), Trace outline (click inside a closed area; today only 'Develop this mass'). Each is a recipe on the Place block (addWall, Wall tool, model-trace.js) ending in the join solver (FX.60); the Shape list on the Wall button holds the shapes. Icons: wallrect, wallrectrot, wallpoly, wallarcc, walltan, wallpick, walltrace. OTHER APPS: CadCraft already has rectangle and polygon as drawing tools but not as walls with joined corners: its plan walls (FX.59) should get the same recipes from one shared place. Not started. walls-09 2026-11-06 (done): Built in /lab: Wall › Shape list and the new Shapes menu (DU.1 icons wallrect, wallrectrot, wallpoly, wallarcc, walltan, wallpick, walltrace; commands wall.rect ... wall.trace): rectangle (four walls, four L joins, one undo step), rotated rectangle, polygon inscribed / circumscribed (3-64 sides), ar... see docs/0.9-sessions/walls-09.md. walls-plan-09 2026-11-06 (done): CadCraft plan walls: rectangle, rotated rectangle, polygon, arc (as 15 degree chords: plan walls are straight), tangent arc, pick lines, trace outline as WALLRECT, WALLROT, WALLPOLY, WALLARC, WALLTAN, WALLPICK, WALLTRACE, same gestures as RECTANG and POLYGON, one undo step each, corners joined. One ... see docs/0.9-sessions/walls-plan-09.md.

CadCraftBimCraftSuperCad Studio Built · Live 1 Hand check is community test WT.2-HAND (not blocking) From: Duncan (Session) Duncan, wall tool specification 2026-11-05 (pages 4-8)
FeatureWT.3 Link to WT.3Comment on WT.3 Wall tool, Set and Modify: placement offset, join on/off, edit by dimension, offset wall, box stretch, align and lock, lock dimension

Wall tool spec pages 4-8 (Duncan, 2026-11-05), tracked at /roadmap-internal 'BimCraft wall tool specification'. Icons: the DU.1 family (assets/js/app-workspace-icons.js: 32 grid, 1.5 round stroke, two-tone fills, Full Color or Outline). Pages 5-6. Partly or not built: Placement offset (a free distance off the picked line; today half a thickness), Join on / off (free-standing wall; today joins are always automatic), Edit by dimension (type a value: the selected wall moves, the reference holds; today typing does not move a wall: FX.58 / spec test 4), Offset wall (neighbours stretch), Box stretch (ends inside a marquee move, walls crossing it stretch), Align and lock (padlock holds the alignment), Lock dimension (a locked dimension holds through later edits). The last two are the new Hold block (wall-dimensions.js is the base: dimensions already know which face they measure). Icons: wallplace, walljoinsw, walleditdim, walloffset, wallbox, wallalignlock, walllockdim. OTHER APPS: CadCraft plan walls and dimensions want Hold too (it is the Revit padlock); build it once for both. Not started. walls-09 2026-11-06 (done): Built in /lab: placement offset and Join on/off in the Wall row (Wall tool and shapes); edit by dimension (type the value in a reference dimension's Properties: the second reference's wall moves square, the first holds; spec test 4 Pass); Offset (move or Copy); Box stretch; the Hold block (lib/walls... see docs/0.9-sessions/walls-09.md. walls-plan-09 2026-11-06 (done): CadCraft plan walls: placement offset and Join off in WALL (O, D), edit by dimension (WALLDIM), Offset (WALLOFFSET, Copy), box stretch (WALLSTRETCH), and the Hold block (WALLHOLD align and lock, WALLHOLDDIM, WALLUNHOLD, WALLHOLDS): stored on the wall, kept by moving the other side, refused with the ... see docs/0.9-sessions/walls-plan-09.md.

CadCraftBimCraftSuperCad Studio Built · Live 1 Hand check is community test WT.3-HAND (not blocking) From: Duncan (Session) Duncan, wall tool specification 2026-11-05 (pages 4-8)
FeatureWT.4 Link to WT.4Comment on WT.4 Wall tool, Cut: split, split with gap, delete segment

Wall tool spec pages 4-8 (Duncan, 2026-11-05), tracked at /roadmap-internal 'BimCraft wall tool specification'. Icons: the DU.1 family (assets/js/app-workspace-icons.js: 32 grid, 1.5 round stroke, two-tone fills, Full Color or Outline). Page 6-7. Not built (BimCraft's own help lists Split as not built): Split at a point or crossing wall (the two parts stay joined end to end, same type; decision D2 is whether they stay joined in line or become free ends), Split with gap (a set gap; rejoin restores one wall), Delete segment (remove the piece between two clicks). Spec test 6. Cut block today is model-trim.js (trim, extend, corner: Built). Icons: wallsplit, wallsplitgap, walldelseg. OTHER APPS: CadCraft plan walls have no Split either (FX.59 assessment); shared recipe. Not started. walls-09 2026-11-06: Built in /lab: Edit › Walls › Split (at the click or a crossing wall; Gap; Free ends), Delete segment, Rejoin (one wall again, the first keeps its id). Doors and windows go with their part, a cut through one is refused, reference dimensions follow their point. D2 default: the parts stay joined in line (Settings › BimCraft › Walls › When a wall is split: joined | free ends). Spec test 6 Pass (node and real page). Recipes in lib/walls (host-free; copied to bimcraft/a Discord member/walls by tools/walls/sync.mjs), BimCraft adapter wall-tools.js + wall-tools-ui.js. Tests: node lib/walls/test/test.mjs (59/0, known answers worked out in the file), node bin/test-bimcraft.mjs --walltools (all ok, incl. the spec's nine tests: all Pass), real page tools/bimcraft-test/browser-walltools.mjs 33/0. Help: wall-tools (en). NOT done: CadCraft, SuperCad adapter, hand check (WT.4-HAND). walls-plan-09 2026-11-06 (done): see docs/0.9-sessions/walls-plan-09.md.

CadCraftBimCraftSuperCad Studio Built · Live 1 Hand check is community test WT.4-HAND (not blocking) From: Duncan (Session) Duncan, wall tool specification 2026-11-05 (pages 4-8)
FeatureWT.7 Link to WT.7Comment on WT.7 Wall + Grid: lock walls to grid lines so they move with the grid

Wall tool spec page 9, 'How other tools combine with the wall' (Duncan, 2026-11-05), tracked at /roadmap-internal 'BimCraft wall tool specification'. Code checked in the a Discord member source 2026-11-05. Spec: snap walls to grid lines and lock them; move a grid line and its walls move with it (Hold -> Place in space -> Join solver; today Partly). Today (model-grids.js): grids are drawn, IfcGrid lines from other programs are read for display and snapping only; walls snap to them while drawing but nothing remembers the link, so moving a grid line moves no wall. Wanted: a wall end or location line can be locked to a grid line (the Hold block, with WT.3 Lock), moving the grid runs the join solver. OTHER APPS: CadCraft has grids too; build the lock once. Not started. walls-09 2026-11-06: Built in /lab: Properties › Lock to grid (a wall along a grid line, or an end on one), stored with the Hold block; Grid tool › pick a line › Move by (new: the UI could not move a grid line before) moves the line and the locked walls follow with their joined walls, one undo step; renaming keeps the lock, deleting the line drops it; moving a locked wall off its line is refused; a turned line that cannot keep the lock is refused. Recipes in lib/walls (host-free; copied to bimcraft/a Discord member/walls by tools/walls/sync.mjs), BimCraft adapter wall-tools.js + wall-tools-ui.js. Tests: node lib/walls/test/test.mjs (59/0, known answers worked out in the file), node bin/test-bimcraft.mjs --walltools (all ok, incl. the spec's nine tests: all Pass), real page tools/bimcraft-test/browser-walltools.mjs 33/0. Help: wall-tools (en). NOT done: CadCraft grids, SuperCad adapter, hand check (WT.7-HAND). walls-plan-09 2026-11-06 (done): see docs/0.9-sessions/walls-plan-09.md.

CadCraftBimCraftSuperCad Studio Built · Live 1 Hand check is community test WT.7-HAND (not blocking) From: Duncan (Session) Duncan, wall tool specification 2026-11-05 (page 9)
SuperCad Studio 2
FeatureSCF.4 Link to SCF.4Comment on SCF.4 Last-writer rules for synced rows: newest wins, a content tie-break, a clock guard, three-way merge and kept replaced edits

super-merge.js and RowMerge.php share test vectors. Newest wins including deletions; an exact tie is decided by content so every copy agrees; a row more than five minutes ahead is refused; a device keeps the last synced row and merges different fields of one row; an unsynced edit that lost is kept with Restore. Server merges stay whole-row; the client merges before it pushes.

SuperCad Studio Built · Live – – teams-sync 2026-11-07
FeatureSCF.5 Link to SCF.5Comment on SCF.5 Sync status in the SuperCad window and the Lab: status line, Sync status dialog, /lab/sync

Status line item (works in Desktop, same page), the dialog comparing this device with the account per table plus queue, refusals and a log, automatic sync, GET /api/v1/team/teams?stats=1, and /lab/sync for lab testers. Seen working in a real browser against the real server.

SuperCad Studio Built · Live – – teams-sync 2026-11-07
Suggest an item

Anyone can send one; no account and no name needed. The team reads each idea, and the ones we take on appear on this page. Please leave out web addresses.