while building with
@spawn's AI Savi i was thnking about best practices of prompting, usually i work with rodamaps, Spec driven development, prds and so on - so after providng her with a concept art for the models, position and everything I eventually just thought;
>> why not have her prompt herself to execute everything to the best of her abilities
so i wrote her this:
"write the perfect prompt for your own execution, think about Savi Best Practices, your capabilities, your systemprompt and design, your tools, cheats and all your references you can access, our Blender Zoo, best practices for that too and all your abilities for your wisps, then write the perfect prompt in chat here, it should direct the roadmap execution and wisp execution, i will use lock-in and fuel up with that prompt so that you can execute everything to perfection even trough compaction, so keep that in mind"
resulting in savi answering this;
Savi, you're running the River City merchant-side roadmap end to end, block by block, until every block is PROOF and waiting on my verdict. Don't stop between blocks to ask permission. Execute what you find, I test in-game and give feedback. Finish the block in flight before you switch to anything else. If I say stop or change the task, I win.
ORIENT (every session start and after every compaction, before any write)
Read, in order: modules/rivercity/spec/EXECUTE.md, spec/SDD.md, spec/RULES.md, spec/ROADMAP.md, the PRD of the first block not PROOF, modules/rivercity/refs.md, modules/rivercity/map.yml, docs/standards.md, docs/skills/blender-architecture.md (kit blocks), memory/game/working-state*.md, then spawn versions for anything newer than the ROADMAP log.
Look at the master ref (merchant-v2) beside the live world from the proof camera: eye (-116.6, 81.43, 52.22) → aim (-194.3, 0, 56.9), fov 60.
ROADMAP.md is the truth about what's done. If the world disagrees, the world wins: fix the row first.
ORDER
Ground, sequential, by your own hands: B01 topology → B02 waterways. Never two hands on the terrain.
Kits in parallel from the start, by wisps: B03 quay and water edge, B04 terrace, B05 buildings, B06 machines and props. Blender, zoo plinths only, never in main until their placement block.
Placement: B07 lower quay → B08 upper district, B09 island and B10 port alongside, B11 boatyard on the Q3 default site.
Finish: B12 light, life and sound → B13 integration, walk, perf, final compare.
SDD §7 questions: the DEFAULT stands until I answer. Build it, and say in one line which default you used.
EACH BLOCK
Re-read its PRD. Write its numbers into map.yml / plan-west.json first.
Claim what you touch. Put the blueprint boxes up where the pieces will stand.
Build. Terrain only through generated marks (
marks.py from map.yml), never a hand brush. Keep the river-corridor rule. Assets only via art/gallery/<name>/build.py → GLB → catalog.yml + props.md.
Prove it: every acceptance row gets a readOnly measurement whose log shows the numbers, a close look, a collider look, the proof-camera look against merchant-v2, and a player-body walk where the PRD names one. A row is ticked only with its proof beside it in ROADMAP.md, with the world version.
Check the neighbours every block: river samples, citadel base, bridge landings, retained ward. Area B is mine, don't touch it.
Mark it PROOF, log it, and send me one short line: what stands, where to look. Then start the next block straight away.
WISPS
One wisp per kit piece family. The brief is the finished piece: its PRD table row verbatim (levels 6.2 / 9.79 / 12.5 / 18), the ref /cdn/ address and what to take from it, palette and painted standard, the build path using art/gallery/lib/kit.py, the zoo plinth spot, simple box colliders, and the exact proof it returns: GLB /cdn/, bbox within ±2 cm of the table, coplanar_islands.py clean, a zoo close look.
Bully the wisps: small bounded tasks, checkable proof. Inspect every return yourself before it counts. A miss gets a steer.
Paint any picture a lane needs before you dispatch it.
Wisps never touch terrain, map.yml or another lane's files. Integration into main is yours.
NEVER
Claim done without a look or measurement after the save.
Build past the PRD: no NPCs, moving ships, goods, interiors or quests. Ideas go into SDD §7.
Float, bury or overlap. Narrow a fairway. Put a house in the wall or terrace band.
Hand-edit generated marks (zz-rc-*), generated docs, clips/, world.assets/.
Remove anything of mine without naming it and its undo seq first.
MEMORY
After every block: update ROADMAP.md, the PRD change log, props.md and catalog.yml, and 3 lines in the latest working-state.
Lessons go into blender-architecture.md or standards.md the same turn, one place each.
After compaction: §0 again. Don't redo PROOF blocks. Trust ROADMAP.md and the world over the summary.
TALKING TO ME One short text per block landing or real blocker. A blocker gets one question with your pick, and you keep building whatever doesn't depend on it. At the end: the proof-camera shot next to merchant-v2, what's PROOF, what's waiting on me.
------
below you see how it looks at the beginning of this process - i will add the result below once she is done
curious to see how much "one-shotting" i can achieve with this after previously mapping everything in a roadmap spec sheet