Design Memory Platform

Technical diary

35 records · 14 decisions · 5 moments · 3 tickets · 13 quotes
D037 newadoptedTerminologyDecision23 Jun 2026

Formalise the 1994 to Rebirth terminology as a source-of-truth record

Adopt a dedicated terminology record - gaad_terminology.json as the source of truth with a generated gaad_terminology.md view - mapping every GAAD term and concept from the 1994 thesis to its 2026 Rebirth equivalent, grouped into seven categories (identity & platform; genetic encoding & evolution mechanics; spatial structure & interface; selection & lineage; history, replay & storage; cells/shapes vocabulary; records, tooling & framing). Blank 1994 cells mark terms new in Rebirth; concepts that existed in 1994 but are not yet built are flagged. Each row cites its governing decision where one exists.

D038 1994openScoringDecision23 Jun 2026

Scoring model for variants/generations

OPEN. Adopt a measured 'fitness' score per variant/generation, derived from the data the report already computes (floor area, volume, shape mix, deltas), running ALONGSIDE human selection rather than replacing it. Held open pending Miles's UX feedback and resolution of the design forks below; the scoring rule encodes what 'good' means, so it is a real decision to be settled before code.

D039 evolvedopenToolingDecision23 Jun 2026

Ground-level title panel (GAAD + version + Generation number)

OPEN. Add a flat title plaque on the ground in FRONT of the 3x3 world, at stage level, in the empty foreground, showing the project name GAAD (brand green), the script version parsed from the filename (e.g. v0_18), and a clear 'Generation N' label - all as plan-readable surface text (D010), with a slim green brand accent bar. Implemented additively in v0.15 (no geometry/mutation/JSON change); the version auto-updates from the filename. Held OPEN pending UX tweaks (size, position, content and styling).

D040 newadoptedRecordsDecision23 Jun 2026

Adopt a development-issues log (I###)

Maintain a third record log - Development Issues (I###) - as JSON source of truth with generated Markdown, newest-first, in the same pattern as Decisions (D###) and Pivotal Moments (P###). Each issue records symptom, root cause, resolution, severity, status (open/resolved), the script version that introduced it (introduced_in) and the one that resolved it (resolved_in), and links to related decisions/PMs. Rendering is folded into generate_records_markdown.py so one command refreshes all views. All three record logs (Decisions, Pivotal Moments, Issues) also carry a Category field, drawn from one shared taxonomy - Philosophy, Platform, Terminology, Convention, Genome, Interaction, Records, Visualisation, Tooling, Scoring, Vision, Milestone - rendered as a Category column after Date so a large log stays navigable. A category means the same thing across all three logs.

D041 evolvedadoptedToolingDecision23 Jun 2026

Adopt the 'Rebirth Colours' palette; rename the 1994 palette 'Retro Bold'

Adopt a modern shape palette named 'Rebirth Colours' = the 'Vibrant Startup' web/UI palette (Coral Red #FF6B6B, Bright Yellow #FFE66D, Aqua Blue #4ECDC4, Deep Teal #1A535C, Sunset Orange #FF9F1C) plus an added Green #6BCB77 and Purple #9B5DE5. The original 1994 saturated-primary palette is retrospectively named 'Retro Bold' and kept as a selectable heritage look. Initial shape assignment: cube = Aqua Blue, pyramid = Coral Red, dome = Green, wedge = Bright Yellow, cylinder = Purple; Deep Teal reserved as the dark studio world tone and Sunset Orange as a secondary accent. The champion stays marked by the bright emissive green stage edge-frame (D028), which is distinct from the matte dome-green fill.

D042 evolvedadoptedToolingDecision23 Jun 2026

Champion = whole stage gold (supersedes the green edge-frame); add Grey, wedge becomes grey

Replace the champion's green square edge-frame (D028) with highlighting the ENTIRE champion stage surface in GOLD - fill #F2B705 with a brighter #FFD23F rim - echoing the gold parent stage of early GAAD versions, because the thin green frame did not read well in practice. Extends the Rebirth Colours palette (D041): add a neutral Grey #8A9299 (now 8 colours) and reassign the wedge from Bright Yellow to Grey, so yellow/gold is reserved as the champion signal and is unambiguous. With the champion no longer green, Green stays free as the dome's shape colour. Non-champion stages remain neutral light so the single gold stage stands out.

D043 1994adoptedRecordsDecision23 Jun 2026

Record same-stage 'object intersections' as neutral data (not 'clashes')

Give primitives relational awareness on their own stage by recording OBJECT INTERSECTIONS: pairs of objects on the same stage whose axis-aligned bounding boxes overlap. Recorded as a count of intersecting pairs plus the total overlap volume (m3), each with a per-generation delta, surfaced as columns in the Evolution Summary Report (report v0_4). Scope is strictly objects on the SAME stage. The term is 'object intersection', deliberately NOT 'clash': an intersection is neutral, measured data, not a fault - it may be intentional and a precursor to a future Boolean join (echoing the thesis 'penetration of one body with another'). Whether intersections ever penalise a score is a separate, later decision (D038). Bounding-box test; rotation ignored (approximation) for now. Adjacency-as-quality is parked: with no relationship rules defined it cannot be measured, though neighbour topology may be recorded later.

D044 newadoptedToolingDecision23 Jun 2026

Project records reachable from the GAAD add-on; 'Records/' folder convention

The GAAD Blender add-on (v0_4) gains a 'Records' panel section with four one-click buttons - Decisions, Pivotal Moments, Issues, Terminology - each opening its .md directly (wm.path_open). The record .md files live in a 'Records/' folder beside the .blend (matching the Generations/ and Reports/ convention of D031), with fallbacks to GAAD_Rebirth_data/ and the .blend root so existing layouts still work.

D045 1994openVisionDecision23 Jun 2026

Adopt backward / forward tracking (replay-based) - restore stored phenotypes from a pivot progeny

OPEN. Bring the thesis's second algorithm - Backward / Forward Tracking (Richard Coyne backward chaining) - into Rebirth. When forward search hits a DEAD END (a path that will not reach satisfactory quality), the designer BACKWARD-TRACKS up the recorded genetic path to an earlier ancestor (a PIVOT PROGENY) and then FORWARD-TRACKS, striking out in a new direction. Per the thesis (p.14), backward/forward tracking are REPLAY functions that RESTORE previously-created stored macro phenotypes - they do not re-mutate - so they depend on the genes for every visited node already being stored (D030 seed/quad-numbering). The Forward Evolution Tree must therefore grow from just the genetic PATH (today) into the full GENETIC ARRAY / tree (Fig 3.16 / 3.29) with dead-end stubs and multiple pivots. To be resolved: (a) exact UX for choosing a pivot and a new direction; (b) whether the tracking tree is shown in Blender or a dedicated 2D graph tool; (c) dependency/order vs D030 storage and D038 scoring; (d) warnings when no forward/backward generation exists (Fig 3.17).

D046 newadoptedRecordsDecision23 Jun 2026

Add an 'origin' field to decisions: 1994 (rebirth) / evolved / new

Add an 'origin' field to every Decision record, with three values: '1994' (restored from the Digital Evolutions thesis), 'evolved' (a 1994 seed taken somewhere the thesis did not go), and 'new' (no 1994 precedent). Rendered as an Origin column in the decisions summary table and in each detail block. Applies to Decisions only; Pivotal Moments are excluded (they are largely realisations, often about the 1994<->now relationship itself). First-pass classification of all 45 decisions: 14 are '1994', 8 'evolved', 23 'new'.

D047 newadoptedRecordsDecision23 Jun 2026

Add a Quotes (Q###) record type for marketing / posts

Introduce a new record type, Quotes (Q###), in gaad_quotes.json with its own generated gaad_quotes.md (newest-first). Fields: id, date, source (thesis_1994 / miles_2026 / ai_collaboration), theme (light tag e.g. philosophy, vision, origin-story, the-tree, decisions-as-data), quote, context, related (optional links to D/P records). No 'cleared for use' flag - the project is open source, so all quotes are cleared; source is always attributed and AI-assisted lines are explicitly marked. Seeded with 12: 5 from the 1994 thesis, 2 from Miles 2026, 5 AI-assisted. Curation bar kept deliberately high. To gain a Records button in the add-on later.

D048 newadoptedRecordsDecision23 Jun 2026

Rename Issues to Tickets (T###); priority high/med/low; status open/in progress/closed

Rename the Issues record type to TICKETS (T###), reframing the log from a passive list of problems into an active backlog worked down through the development cycle as resources allow (solo developer). Fields: id, date, category (shared taxonomy), priority (high / medium / low), status (open / in progress / closed), title, description, resolution (filled on close), related. Migrated I001 -> T001 (closed). The old gaad_issues.json/.md are superseded by gaad_tickets.json/.md with its own generator, and have now been removed (archived to _archive/). Add-on v0.5 replaces the Issues button with Tickets and adds a Quotes button. Seeded two live tickets: T002 (title panel 'AutoCAD retro' rework) and T003 (variant ID labels not legible), both to be bundled into one text-legibility / title pass.

D049 1994adoptedToolingDecision23 Jun 2026

Records-Tree: render the project's own records as a live evolutionary tree (Graphviz)

Adopt a Records-Tree generator (generate_records_tree.py) that reads the project's own records (gaad_decisions.json + gaad_pivotal_moments.json) and renders a branching evolutionary tree via Graphviz (dot) to SVG + PNG. Decisions form the vertical spine (the genetic path); nodes are coloured by ORIGIN (gold=1994 rebirth, aqua=evolved, purple=new); Pivotal Moments are coral blooms branching beside their anchor decision; supersedes links are gold fork-arcs with the superseded node faded/dashed (a pruned branch); open decisions are dashed-white (live growth points). Regenerated from the source of truth, so it is a true live infographic - never out of date. Uses a graph tool, not Blender (per P029): the architectural tree renders 3D form in Blender; the Records-Tree renders relationships in Graphviz - same data-agnostic engine idea, different renderer (P027).

D050 newadoptedRecordsDecision23 Jun 2026

Record pages also output as styled HTML (origin/status colour-coded); add-on opens HTML

Every record type now generates a styled HTML page alongside its Markdown: gaad_<type>.html via a shared helper (gaad_html_style.py) matching the Evolution Summary Report look (dark, Deep-Teal accent, Rebirth Colours). Origin (1994 gold / evolved aqua / new purple), status (adopted green / open orange / closed grey) and ticket priority (high coral / med yellow / low grey) render as colour pills; decisions cross-link supersedes/superseded-by; a summary table links to per-record detail cards. Markdown is KEPT as the source for quick diffs and GitHub rendering; HTML is the readable/shareable page. A driver generate_all_html.py rebuilds all five. Add-on v0.6 points the Records buttons at the .html pages (opening in the browser like the report) instead of raw .md.

P026 VisionMoment23 Jun 2026

Reaching the limits of the 1994 design - pressing forward with modern UX

With v0.19 the generator had faithfully reconstructed the 1994 thesis's world - typed genome, cumulative selection, replay, the genetic path - and the work hit the ceiling of what the original could offer visually. The look still read as 1994 (primary-saturated shapes, flat shading, the default grey void). The decision was taken to stop reconstructing and start pressing forward: give GAAD its own modern visual identity (desaturated palette with green reserved for the champion, an Eevee studio look with AO/soft shadows/bloom, a grounding plinth, a clearer title panel).

P028 GenomeMoment23 Jun 2026

Primitives gain relational awareness - from isolated shapes to objects-in-context

Recognised that since Classic GAAD and Rebirth, a primitive has known only ITSELF - its shape and design parameters - with no awareness of what surrounds it. The step taken was to give objects relational knowledge of their stage neighbours: recording where objects on the same stage intersect (overlap in space). Framed deliberately as neutral 'object intersection' rather than 'clash', leaving open that an overlap may be intended (a future Boolean join).

P029 VisionMoment23 Jun 2026

GAAD turned on itself - the project's own records as a live 3D/visual evolutionary tree

Proposed feeding GAAD's own development data (gaad_decisions.json, gaad_pivotal_moments.json, issues, terminology) into the evolution-tree machinery instead of architectural variants, to grow a branching tree where each node is a record - coloured by the category taxonomy, branching on related/supersedes links (e.g. D028->D042 as a pruned branch), Pivotal Moments as blooms, Issues as scars - that regenerates from the source of truth so it is never out of date: a 'live infographic', a self-portrait of the project drawn by the project. Raised the follow-on question of whether Blender is the right tool if nodes become text/cards rather than 3D forms, and whether an open-source node/graph/text tool would suit better.

P030 VisionMoment23 Jun 2026

The loop closed - GAAD visualised itself

The Records-Tree rendered for the first time: 48 decisions as a vertical genetic spine, coloured by origin, with pivotal-moment blooms and gold supersedes-forks. For the first time the project's own evolutionary history was drawn by the project's own machinery - the same generate/select/record/replay idea, pointed at GAAD's development instead of architecture.

P031 VisionMoment23 Jun 2026

GAAD as a render-ecosystem: one record substrate, many renderers (GAADBlender, GAADGraphviz, ...)

Building the Records-Tree in Graphviz made explicit that GAAD now has TWO renderers reading ONE set of records: GAADBlender renders 3D form, GAADGraphviz renders relationships in text and nodes. The naming shift - Blender as 'GAADBlender', one renderer among several rather than 'the project' - encodes the realisation. The data substrate is the constant; renderers are swappable and additive (P027). Once that is true, the question 'what else could read the records?' arises on its own, and a render-ecosystem appears rather than a single tool.

T001 highclosedInteractionTicket23 Jun 2026

Title panel blocked Next Generation - world would not advance

Panel objects made non-selectable (hide_select) and force-deselected via the direct API; Next Generation made robust by finding the chosen Stage (active object first, otherwise any selected Stage object); v0.18 then surfaced every refusal as an on-screen popup (never silent again) and added a .blend-saved guard plus a latest-generation-on-disk diagnostic.

T002 mediumclosedVisualisationTicket23 Jun 2026

Title panel reads 'AutoCAD retro' - rework to a modern wordmark

Resolved this cycle by D051 (World + Tree title/label UX pass): title panel reworked to a modern grey 'GAAD - Generation' wordmark, green accent bar removed.

T003 mediumclosedVisualisationTicket23 Jun 2026

Variant ID labels (e.g. G021_S006) not legible at working camera angles

Resolved this cycle by D051 (World + Tree title/label UX pass): variant ID labels made legible as part of the label/colour pass.

Q006 miles_2026Quote23 Jun 2026

"It is so GAAD."

Miles, on realising the project documenting its own evolution is the thesis in action - GAAD applied to GAAD.

Q007 miles_2026Quote23 Jun 2026

"Two years, part time, working so very hard in a wilderness that few understood."

Miles, reflecting 30+ years on the original MSc - the emotional engine of the Rebirth.

Q008 ai_collaborationQuote23 Jun 2026

"The wilderness turned out to be the trailhead."

AI-assisted, on how ideas that few understood in 1994 - generative design, design-space exploration, recording the design journey - are live and serious topics now.

Q009 ai_collaborationQuote23 Jun 2026

"The generator is the demo; the records folder is the actual thesis."

AI-assisted, on the most interesting output of the project being the proof that design-history-as-data is tractable and useful.

Q010 ai_collaborationQuote23 Jun 2026

"GAAD's core is platform-agnostic; the renderer is swappable."

AI-assisted, from the BricsCAD discussion - the genome, selection and records travel; only the geometry layer is tool-specific.

Q011 ai_collaborationQuote23 Jun 2026

"You can't store the cake, so you store the recipe."

AI-assisted, summarising the 1994 Unique Quad Numbering / seed storage - encode the genetic path, not every phenotype, to defeat exponential growth.

Q012 ai_collaborationQuote23 Jun 2026

"A self-portrait of a project, drawn by the project."

AI-assisted, on the Records-Tree idea - feeding GAAD's own decisions into the tree machinery as a live infographic.

Q013 ai_collaborationQuote23 Jun 2026

"The wilderness was the trailhead."

AI reflection on reading the 1994 thesis - the ideas few understood then are the live, serious topics now.

Q014 ai_collaborationQuote23 Jun 2026

"The thesis isn't a curiosity we're being kind to; it's holding up as a genuine spec thirty years on, which almost nothing in computing does."

AI reflection on reading Digital Evolutions in full - the algorithms and data structures are all still load-bearing.

Q015 ai_collaborationQuote23 Jun 2026

"Rebirth isn't just preserving the thesis - it's finishing the sentence."

AI reflection: the 4th dimension Miles could only describe in 1994 can now actually be built, with tools that finally caught up to the idea.

Q016 ai_collaborationQuote23 Jun 2026

"You invented it thirty years ago - D030 isn't a new idea, it's a restoration."

AI, on discovering the 1994 Unique Quad Numbering / file-naming algorithm is exactly the seed-based storage scheme designed for Rebirth.

Q017 ai_collaborationQuote23 Jun 2026

"That patient younger self did the hard part; this part is the reward."

AI reflection on the two years' part-time work in 1992-94 making the Rebirth possible.

Q018 ai_collaborationQuote23 Jun 2026

"Your 1994 self already drew the target output."

AI, on the Genetic Array (Fig 3.29) being exactly the Records-Tree visual scoped for Rebirth - rendered in plan, arguing for a 2D graph tool over Blender.