Design Memory Platform

Technical diary

10 records · 7 decisions · 3 moments
D030 1994adoptedRecordsDecision22 Jun 2026

Seed-based storage: keep the selected variant in full, store only seeds for unselected stages

Change replay JSON storage to 'store the recipe, not the cake'. Per generation, save the SELECTED variant's full design parameters, plus only the SEED (variant_seed) for each UNSELECTED stage. Any sibling can then be regenerated identically on demand from parent + seed, so full backtracking into non-selected stages is preserved at near-zero storage cost - scaling cleanly from 3x3 to nxn (e.g. 12x12). REQUIRES generation to be bit-for-bit deterministic from seed+parent, so a 'genome_version' is stamped into the JSON and reconstruction always uses the matching algorithm version.

D031 evolvedadoptedConventionDecision22 Jun 2026

Filename and folder-structure convention

ADOPTED. Filenames follow gaad_[tool]_v[version].py (e.g. gaad_generator_v0_12.py, gaad_tree_v0_1.py, gaad_tree_report_v0_1.py). Local project layout: a per-version folder (e.g. 'GAAD Development 0_12') containing the .blend and the .py scripts side by side, plus two subfolders - 'Generations/' (the recorded per-generation JSON; was 'Replay') and 'Reports/' (HTML/PNG report output). Scripts resolve the data folder RELATIVE to the .blend (Blender //Generations) so paths never need hand-editing; the plain-Python report falls back to a Generations folder beside the script. An absolute path remains an optional override.

D032 newadoptedTerminologyDecision22 Jun 2026

'GAAD' is always capitalised in prose, labels and output

Whenever GAAD appears as a word - in comments, strings, on-screen labels, reports, posts, graphics and documentation - it is written in full uppercase: GAAD. Exception: the lowercase 'gaad_' prefix in filenames and code identifiers (e.g. gaad_generator_v0_12.py, gaad_version) is retained, as lowercase is standard coding convention.

D033 newadoptedToolingDecision22 Jun 2026

GAAD Rebirth Blender add-on for one-click workflow

Provide a small installable Blender add-on (gaad_rebirth_addon.py) that adds a 'GAAD' sidebar tab with buttons - Next Generation, Build Tree, Write Report (plus Open Report Folder) - so the scripts no longer have to be loaded/pasted each session. The add-on auto-detects the newest versioned script (gaad_generator_v*.py etc.) in the .blend's folder, so future versions are picked up automatically. The standalone scripts remain the canonical artefacts; the add-on is a thin launcher that runs them.

D034 newadoptedToolingDecision22 Jun 2026

Scene hygiene: purge orphaned data, isolate the tree scene, and auto-frame the view each run

Adopt clean scene management across the GAAD scripts: (1) each run PURGES orphaned/accumulated data (stray cameras, lights, meshes, curves left from prior runs) so counts stay stable rather than climbing into the hundreds; (2) the Forward Evolution Tree builds in its own dedicated 'GAAD Tree' scene, fully isolated from the generator world; (3) after building, the script AUTO-FRAMES the viewport on the actual geometry and sets a generous clip distance, so the world/tree is always correctly sized and centred without manual Home / clip-end fiddling.

D035 newadoptedToolingDecision22 Jun 2026

Add-on UX: rename Evolution Tree, auto-write report with it, one-click Open Report

Refine the GAAD add-on panel: (1) rename 'Build Tree' to 'Evolution Tree' (names the thing, not the action; the build is quick); (2) running Evolution Tree also auto-writes the report, since both read the same Generations data and are usually wanted together - a standalone 'Write Report' button is kept for report-only runs; (3) 'Open Report Folder' becomes 'Open Report', opening the report HTML directly in the browser, with opening the folder as a fallback when the HTML is not yet present. Labels finalised: 'Evolution Tree', 'Write Evolution Tree Report', 'Open Evolution Tree Report'.

D036 newadoptedVisualisationDecision22 Jun 2026

Evolution Summary Report: add per-generation ISO date/time and rename title

Rename the report title to 'GAAD - Evolution Summary Report' and add a Date / Time column showing each generation's creation timestamp in ISO format (YYYY-MM-DD HH:MM:SS, to the second), so rows can be sorted chronologically. The timestamp is read from generation.created_at already stored in the JSON - no generator change needed (report v0_2).

P023 ToolingMoment22 Jun 2026

GAAD becomes a tool - the Blender add-on with its own interface

Bundled the generator, evolution tree and report into an installable Blender add-on with a 'GAAD' sidebar panel and one-click buttons (Next Generation, Build Tree, Write Report). It auto-detects the newest versioned script, so the workflow no longer means loading or pasting scripts each session.

P024 ToolingMoment22 Jun 2026

GAAD becomes a smooth, usable tool - clean scenes and one-click workflow

With the add-on (P023) plus scene hygiene (D034) - data purging, an isolated tree scene, and auto-framed views - the generator and tree now switch cleanly with one-click buttons: the 3x3 world and the lineage each render correctly framed, with no manual Home/clip fixing and no data pile-up.

P025 PhilosophyMoment22 Jun 2026

Reflection on development pace - why GAAD Rebirth has moved so fast

Stepped back to ask whether the rapid progress is typical. Concluded it is faster than usual, for concrete reasons: the 1994 thesis is a finished spec (little time lost to 'what are we building?'), the scope is a tight, well-bounded loop (generate, select, record, replay, report), and modern AI compresses what was weeks of 1994 scripting into minutes.