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
Suggestions (Track SX) 25
FeatureSU.1110 Link to SU.1110Comment on SU.1110 CivilCraft: reusable corridor templates and several assemblies on one corridor, with left and right pavement and end conditions set apart

Asked (#1110, Oct 28): templates for roadway and site structures (curb, gutter, sidewalk, retaining walls), as OpenRoads Designer does: a template usable on any element, even applied to terrain surfaces; several templates or assemblies on one corridor; pavement and end conditions controlled left and right separately; small templates reused instead of a custom one per project. Builds on D7.35 (corridor assemblies) and WL.25 (corridor targets). Do: template library (components with offsets, slopes, materials, point codes); corridor takes a list of templates by station range; left and right pavement and end conditions (daylight to ground, wall, ditch) independent; surface templates for terrain edits (LD.3 grading). Example templates are for checking by an engineer. **Implementation started 2026-11-02** (0.9 top-5 pick #4, hardest first; session `civil-templates-09`, log docs/0.9-sessions/civil-templates-09.md). Status moves to Partly built or Built only when the code is reachable and tested (rule 49).

CivilCraft Built · Live 10 Engineer review of the 8 example templates (placeholders, marked for checking by an engineer) From: site suggestion (Suggestion) docs/0.9-PLAN.md § 9, from /admin/suggestions 2026-11-02
FeatureSU.1112 Link to SU.1112Comment on SU.1112 Live in every app: see each other's cursors and names while co-editing

Asked (#1112, Oct 28): collaboration where people see each other's cursors, so working in teams is easier. CadCraft's Live already shows other people's cursors and selections (live.js presence). Do: the same presence layer in the other apps' Live sessions (cursor, name colour, selection), reusing the CadCraft code through the shared Live library. Relates to DC.27 and EG.41. **Implementation started 2026-11-02** (0.9 pick #7, second five, hardest first; session `live-cursors-09`, log docs/0.9-sessions/live-cursors-09.md). Status moves to Partly built or Built only when the code is reachable and tested (rule 49). **Built 2026-11-02** (session `live-cursors-09`, log docs/0.9-sessions/live-cursors-09.md): one shared presence layer (assets/js/live-presence.js, synced by tools/shell/sync.mjs) with a thin adapter in each app's live.js; BimCraft, ModelCraft, TakeoffCraft, CivilCraft, DetailCraft and PartCraft now show cursors, names in the person's color and selections; CadCraft and MarkupCraft keep their own views on the same palette. Tested with two real pages per app (tools/live-apps-test/browser-apps.mjs) and test-presence.mjs.

CadCraftBimCraftModelCraftMarkupCraftTakeoffCraftCivilCraftDetailCraftPartCraft Built · Live 6 – From: site suggestion (Suggestion) docs/0.9-PLAN.md § 9, from /admin/suggestions 2026-11-02
FeatureSU.1119 Link to SU.1119Comment on SU.1119 Environmental analysis: shade studies, daylight, PV yield, wind and outdoor comfort on the site and the building

Asked (#1119, Oct 29): what Autodesk Forma and ClimateStudio give: solar angles, shade studies, interior daylight, PV analysis, wind studies, thermal comfort, auto-generated site information. Already built: sun hours and massing (LC.1), daylight, sun and grid (LC.20), EnergyPlus wasm (0.8). Missing: shade-study images and animations on the site, PV yield on roofs and facades, outdoor comfort (UTCI) from weather files, and wind (the hard one: needs a validated solver, never invented). Candidate: owner chooses. **Implementation started 2026-11-02** (0.9 pick #14, third five, hardest first; session `env-analysis-09`, log docs/0.9-sessions/env-analysis-09.md). Status moves to Partly built or Built only when the code is reachable and tested (rule 49). **2026-11-02 (env-analysis-09):** built in the shared library lib/envir (solar position tested against NREL SPA and Meeus, shade study with sun/shade-hours maps, shaded-area series and an animation, PV yield on roofs and walls from an EPW file with the model written out, UTCI from the published polynomial, 78 + 17 tests). Wind is not built: it needs a validated solver, and the validation list is in the log. Reachable once the one mount line lands in CivilCraft's massing-ui.js.

BimCraftCivilCraft Built · in the lab 12 Built in 0.9; wind is Experimental, not validated vs wind-tunnel data (only Cp converges). Owner: check .epw vs PVWatts, UTCI; AIJ/CEDVAL data. From: site suggestion (Suggestion) docs/0.9-PLAN.md § 9, from /admin/suggestions 2026-11-02
FeatureSU.1080 Link to SU.1080Comment on SU.1080 CivilCraft: GIS analysis tools (buffer, overlay, spatial join, attribute tables) with shapefile and GeoPackage

Asked (#1080, Oct 26): a GIS tool; ArcGIS Pro is expensive and the requester has not learned QGIS. CivilCraft has map layers and GeoJSON/LandXML. Do (after a gap check against map layers): attribute table with filters and joins, buffer, clip, intersect and dissolve, symbology by attribute, shapefile and GeoPackage read and write. Candidate: owner decides whether CivilCraft should grow GIS or point people to QGIS. **Implementation started 2026-11-02** (0.9 pick #12, third five, hardest first; session `civil-gis-09`, log docs/0.9-sessions/civil-gis-09.md). Status moves to Partly built or Built only when the code is reachable and tested (rule 49). **Built in /lab 2026-11-02 (session civil-gis-09, log docs/0.9-sessions/civil-gis-09.md):** Surface > More > Analyze (or type ANALYZE): buffer, overlay (intersect, union, erase, dissolve), spatial join, select by attribute or shape, measure and statistics, each a new layer in one undo step, with help topic gis-analysis. Shapefile and GeoPackage read/write were already built. **Round 2 built in /lab 2026-11-02 (same log, Round 2):** attribute table (layer menu or Surface > More > Attribute table): sort, filter by expression or words, rows and plan features selected both ways, cell edits with undo, add/rename/remove fields, field calculator (no eval), CSV, 3,000+ features without freezing; Style by attribute (single, categorized, graduated: equal interval, quantile, natural breaks; colour-blind safe ramps, size by attribute for points, polygon tint, legend on the plan), saved in the project file. **Not built:** manual class colours, a legend in plots, adding or deleting rows, field type changes, geodesic buffers.

CivilCraft Built · Live 14 owner: hand check in /lab with a real parcels file (table, style, Analyze) From: site suggestion (Suggestion) docs/0.9-PLAN.md § 9, from /admin/suggestions 2026-11-02
FeatureSU.1120 Link to SU.1120Comment on SU.1120 CivilCraft covers eSurvey-style work: contours, cut and fill, cross and long sections, KML

Asked (#1120, Oct 29): eSurvey-style software for civil projects: soil cut and fill, contour maps, KML files, cross sections and longitudinal sections. Covered by CivilCraft, released (checked 2026-11-05; nothing new was built for this card): contours (help "Read contours, elevations and slopes"), cut and fill volumes ("Earthwork volumes"), cross sections with cut and fill at each station ("Sample lines and cross sections"), longitudinal profiles ("Design a vertical profile", "Plan and profile sheets"), KML and KMZ out and in (the GIS export and import topics). Not checked: eSurvey's own file formats or a side-by-side with its outputs. Tests re-run 2026-11-05: test-civilcraft-kml, -sections, -earthwork (see the log).

CivilCraft Built · Live 0 – From: site suggestion (Suggestion) docs/0.9-sessions/suggestions-sweep-09.md, from /suggest
Point clouds add-on (PC) 11
FeaturePC.1 Link to PC.1Comment on PC.1 Point clouds engine: tiled octree store, streaming build, resume

Built in the lab: lib/pointcloud store + tiler + octree. 150 k points land exactly once, resume is byte-identical, about 3 M points/s on the VPS. 50 M run waits for workstation11a.

CivilCraft Built · Live – – From: site suggestion #935 (Suggestion) docs/0.9-POINTCLOUD-ADDON.md
FeaturePC.2 Link to PC.2Comment on PC.2 Point clouds viewer in CivilCraft 3D and plan

First pass in the lab: streaming nodes within a point budget, colour by RGB/height/class/intensity/residual. Headless software GL only, so the 55 fps target is not measured. civil-points-09 2026-11-05: Eye-dome lighting (own shader, whole scene through a depth target), size attenuation (a point shader), a phone default (500 k, EDL off), and a plan raster that refines when you zoom in (a window raster after the zoom settles) are built and tested in the real page (tools/pointcloud-engine/browser.mjs 27/0). Real GPU on workstation11a (RTX 5070, Chrome): 2 M points drawn at about 100 fps with EDL and shrinking points, no frame gap over 17 ms (tools/pointcloud-engine/gpu-fps.mjs). A made-up site, not a real survey; 50 M points are the PC.1 scale run.

CivilCraft Built · Live 3 – From: site suggestion #935 (Suggestion) docs/0.9-POINTCLOUD-ADDON.md
FeaturePC.3 Link to PC.3Comment on PC.3 Point clouds cleaning: select, delete, reclassify, crop, undo

Built in the lab: non-destructive edit log, lasso/box/polygon with a count before applying, undo and redo to the byte. Lasso in 3D is a vertical prism.

CivilCraft Built · Live – – From: site suggestion #935 (Suggestion) docs/0.9-POINTCLOUD-ADDON.md
FeaturePC.4 Link to PC.4Comment on PC.4 Point clouds noise filters

Built in the lab: isolated-point filter finds 200 of 200 planted strays, 0.09 % false positives. The statistical filter is over the 0.2 % limit and is not the default.

CivilCraft Built · Live – – From: site suggestion #935 (Suggestion) docs/0.9-POINTCLOUD-ADDON.md
FeaturePC.5 Link to PC.5Comment on PC.5 Point clouds ground classification by tile

Built in the lab on the made-up drone scene: RMS 0.017 m to the true terrain, no roof or canopy kept, seams within tolerance. Real drone data not yet tested.

CivilCraft Built · Live – – From: site suggestion #935 (Suggestion) docs/0.9-POINTCLOUD-ADDON.md
FeaturePC.6 Link to PC.6Comment on PC.6 Point clouds geometric classes (vegetation, buildings)

Built in the lab on the made-up scene: 97 % of roof points class 6, 100 % of tree points 3/4/5. No machine learning. Real data not yet tested.

CivilCraft Built · Live – – From: site suggestion #935 (Suggestion) docs/0.9-POINTCLOUD-ADDON.md
FeaturePC.7 Link to PC.7Comment on PC.7 Point clouds residuals, fix the ground, breaklines on the cloud

Built in the lab: residual map and stats, ten worst places, Build ground through the same path as the LAS import, contours. civil-points-09 2026-11-05: Breaklines can now be picked in the plan as well as in 3D (each click takes the nearest cloud point, ground first) and the contours have a preview canvas over the plan raster; both tested in the real page (browser-ui.mjs). The engine can rebuild only the affected area (region + base) but that is not wired to a button.

CivilCraft Built · Live 2 – From: site suggestion #935 (Suggestion) docs/0.9-POINTCLOUD-ADDON.md
FeaturePC.8 Link to PC.8Comment on PC.8 Point clouds volumes: flight to flight, stockpile

Built in the lab: gaussian hill 0.02 % error, cone 0.12 % in engine tests. The browser stockpile on the 360 k scene is 6 % low and must be understood before it is called done. civil-points-09 2026-11-05: Found why the browser stockpile read 6 % low: not the cell size, edges or resampling. The 8 m boundary crossed tree canopy; its samples raised the TIN base by 0.2 m on average. The base now leaves boundary samples above a robust fit out, and a smooth curved base is offered. The 6,000 m3 drone block now reads 1 % to 3 % off depending on the base (engine and browser cases added).

CivilCraft Built · Live 1 – From: site suggestion #935 (Suggestion) docs/0.9-POINTCLOUD-ADDON.md
FeaturePC.11 Link to PC.11Comment on PC.11 Point clouds adapter for BimCraft

Same engine, thin adapter (build for Super); E57/PLY/PCD inputs through pointcloud.js. adapters-09 2026-11-06: The Point clouds add-on now runs in BimCraft over the same lib/pointcloud engine (byte-identical copy) and the same panels as CivilCraft, with a thin host adapter: the cloud is drawn in the IFC 3D view with levels of detail and a point budget, clean with undo, section strip, ground classification, and E57, PLY, PCD, PTX and XYZ through the app's own readers (thinned to 3 million points). window.ccPointCloud.cloud is the open cloud for scan to BIM. Tested in the real page on the 360,200-point made-up site (tools/pointcloud-adapters/browser.mjs --app bim, 20/0). Not tried on a real scan, in Studio or on a GPU; ground building, contours, stockpile volumes and orthomosaics stay in CivilCraft.

CivilCraft Built · Live 5 – From: site suggestion #935 (Suggestion) docs/0.9-POINTCLOUD-ADDON.md
FeaturePC.12 Link to PC.12Comment on PC.12 Point clouds adapters for CadCraft and SuperCad Studio

Same engine, thin adapters. adapters-09 2026-11-06: CadCraft has the Point clouds add-on over the same engine (3D tab camera, build, clean with undo, section strip, E57/PLY/PCD/PTX/XYZ inputs); tested in the real page (tools/pointcloud-adapters/browser.mjs --app cad, 19/0). CadCraft has no TIN module, so no ground classification there. SuperCad Studio's adapter is not built.

CivilCraft Built · Live 5 Hand check is community test PC.12-HAND (not blocking) From: site suggestion #935 (Suggestion) docs/0.9-POINTCLOUD-ADDON.md
FeaturePC.14 Link to PC.14Comment on PC.14 Point clouds LAZ export

LAZ export of the cleaned cloud, next to LAS 1.4. laz-09 2026-11-06: Built: our own LAZ compressor (lib/pointcloud/laz.js, Apache-2.0, written from the public LAZ specification 1.4 R1 of rapidlasso GmbH; no third-party code: laz-perf ships a decoder only, laz-rs and LASzip would need a WebAssembly build we cannot run here). Point formats 0 to 3 with extra bytes, chunked (compressor 2), in a LAS 1.4 header. CivilCraft Point clouds add-on: Export, File type LAZ (format 0, or 2 with colour; classes above 31 refused). Tested: our reader, laz-perf 0.0.7 and laspy 2.7.0 + lazrs 0.8.2 read every field bit for bit (formats 0-3, several chunks, GPS jumps, grey and coloured RGB); three LAZ files made by laspy re-encode to the same bytes and chunk table; the 300 m made-up site (353,766 points) is 2.17 MB LAZ against 10.61 MB LAS 1.4 (20.4 %); in the real page (/lab) download and streamed save byte-identical (bin/test-pointcloud-laz.mjs 65/0, tools/pointcloud-engine/browser-laz.mjs 10/0). Not built: LAZ formats 6 to 10 (layered). Not tried: other LiDAR programs (community test PC.14-HAND).

CivilCraft Built · Live 3 Other LiDAR programs: community test PC.14-HAND (not blocking) From: site suggestion #935 (Suggestion) docs/0.9-POINTCLOUD-ADDON.md
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.