Dev console refuses buildable piece materials; loose piece grains cleared on load (t97)
This commit is contained in:
@@ -604,3 +604,9 @@ above, including:
|
||||
the old feel. Restore the original advancing-front nudge: 30% times ray energy per
|
||||
half-grain sample, straight back toward the bot, then down or up if blocked. Scale that
|
||||
chance with sampling distance; do not keep shaking the travelled path.
|
||||
|
||||
- **Build pieces never go in the bag (t97, 2026-10-29).** The owner wants pieces such as saws
|
||||
built from the menu: giving them as grains let the nozzle leave permanent, uncollectable
|
||||
cells. Exclude dedicated construction materials from give, discovery and blowing. On load,
|
||||
clear loose construction grains and their bag/nozzle inventory; preserve owned blocks,
|
||||
slope seals and machines. Ordinary wall ingredients still become rubble, scrap or bars.
|
||||
|
||||
+4
-4
@@ -317,7 +317,7 @@ Molds: cavities for castings; ingot troughs empty themselves below. Removal retu
|
||||
- functions: moldCellsAt, canPlaceMold, newMoldRecord, addMold, castMix, cavityState, troughState, clearCavity, moldPlugCells, rakeAbove, furnaceJunkHint, unplugMold, ejectIngot, checkMolds, moldAt, tally, collectMold, removeMold
|
||||
- variables: DROSS, grains, barWord
|
||||
|
||||
### src/sim/items.js (318 lines)
|
||||
### src/sim/items.js (319 lines)
|
||||
Bars and other loose objects (ents), and the bag: adding, taking, costs and refunds.
|
||||
- functions: entSolidCell, entSupportCount, entFreeAt, entMark, spawnBar, removeEnt, entScrewAt, entScrewFree, entScrewMove, entScrewLane, entScrewEdge, entScrewEnter, entScrewTick, entDiagonalScrewTick, entBeltScrewEnter, entSlopeBeltTick, entTick, entsInCircle, bagAdd, bagTake, giveOrDrop, refundAt, canAfford, payCost, fmtMoney, costText, needText
|
||||
- variables: BAR_W, BAR_H, entCurM, droppedLast
|
||||
@@ -337,7 +337,7 @@ Trees (background layer), acorns, saplings, and waking freezing water.
|
||||
- functions: cutTree, treeHeld, findTreeBases, treeSupportTick, woodRoom, treeFall, coldTick, plantTick, setTreeCell, saplingTick, igniteTree
|
||||
- variables: treeBases, saplings, treeDraw
|
||||
|
||||
### src/sim/vacuum.js (199 lines)
|
||||
### src/sim/vacuum.js (200 lines)
|
||||
The vacuum, blowing grains out, grains in flight (flyers), and the flame tool. Material the vacuum would start on at the cursor: a bar, else the nearest loose grain.
|
||||
- functions: vacuumTargetAt, toolVacuum, nozzle, toolBlow, flyOpen, depositNear, bagTemp, landFlyer, flyTick, toolIgnite
|
||||
- variables: blowRR, FLY_G, FLY_Q
|
||||
@@ -387,12 +387,12 @@ World generation helpers: noise and removal of tiny hard rock specks.
|
||||
World generation: staged terrain, ore, caves and placement, with synchronous and async entry points.
|
||||
- functions: generateWorld, generateWorldAsync
|
||||
|
||||
### src/sim/devconsole.js (185 lines)
|
||||
### src/sim/devconsole.js (193 lines)
|
||||
Dev commands are pure simulation operations; the browser owns the panel and confirmation.
|
||||
- functions: resetDevConsole, enableDevConsole, devError, devName, devGiveable, devMaterialList, devDistance, devSuggestions, devHistory, devRemember, devRecall, devComplete, devMaterial, devCommand
|
||||
- variables: devWorld, devLog, devFree, devSpeed, devPaused, devSteps, DEV_COMMANDS, DEV_MATERIALS
|
||||
|
||||
### src/sim/save.js (185 lines)
|
||||
### src/sim/save.js (216 lines)
|
||||
Saving and loading a world (serializeWorld / deserializeWorld) and old-save migration.
|
||||
- functions: serializeWorld, deserializeWorld, startLoadWake, wakeLoadArea, wakeLoadNearBot, loadWakeTick
|
||||
- variables: SAVE_VERSION, TOFF
|
||||
|
||||
@@ -4,6 +4,18 @@ What agents have done, newest first. Add an entry for every piece of work: the d
|
||||
note or request it was for, what changed, the files touched, the tests run, and anything left
|
||||
open or not verified. Keep each entry short; the git history has the details.
|
||||
|
||||
## 2026-10-29: t97 keep construction grains out of the bag (Codex)
|
||||
|
||||
- PARTMAT now blocks give/discovery, inventory/refunds and single/mixed blowing. Load clears
|
||||
unowned piece grains and contaminated bag/nozzle entries, preserving construction and seals.
|
||||
- Files: src/sim/{devconsole,items,vacuum,save}.js, test/t_dev_console.{js,py},
|
||||
docs/{DESIGN,PROJECT_MAP}.md, tasks/t97_give_no_buildables.md and this log.
|
||||
- Tests first: 9 new regressions failed; all 37 headless suites passed (14 new checks;
|
||||
/tmp/t97-headless-final.log). Only browser suite: test/t_dev_console.py, 31 checks passed
|
||||
(/tmp/t97-browser-final.log); inspected shots/t97-console.png (pixel). Sandboxed real/soft
|
||||
startup timed out (soft reported WebGPU unavailable); real GPU outside sandbox passed after isolating console output in
|
||||
the existing colour test. Worldgen/save format unchanged; owner review pending. No commit.
|
||||
|
||||
## 2026-10-29: t80 validate imported world arrays (Codex)
|
||||
|
||||
- Validate positive integer dimensions up to the Huge option (6144 x 2048), cell/block/fog
|
||||
|
||||
Reference in New Issue
Block a user