[{"data":1,"prerenderedAt":1074},["ShallowReactive",2],{"$fb-gNrQBUKShjBDl5PvWanmcrsG1IdJnGlNQP1WLZMH0":3},{"newThing":4,"project":5,"cycle":8,"sections":23,"threads":1062,"otherDocs":1063,"documents":1066,"images":1071,"archiveItems":1072,"links":1073},null,{"id":6,"label":7,"liveBase":4},"design","Design",{"id":9,"num":10,"dir":11,"name":12,"title":13,"focus":14,"status":15,"statusNote":16,"created":17,"completed":4,"mode":18,"report":4,"recordless":19,"thumbnail":4,"imageCount":20,"artifactCount":21,"lastActivity":17,"hasPickup":22,"hasInitialPrompt":22},"c129",129,"c129.deploy-build-time","deploy-build-time","Deploy Build Time","Keep `npm run deploy` short as the lab grows. The prerender crawler renders every page it can reach, and the build's time goes wherever the crawl goes.","parked","parked 2026-11-03 — see PICKUP.md; query-link fix took the deploy build from 17.5 to 4.4 min, next trims ranked","2026-11-03","evolution. The deploy pipeline (c49, in place since 2026-10-18) stays as it is; this cycle trims what the crawler does.",false,0,2,true,[24,55,75,114,654,668,880],{"key":25,"title":26,"empty":19,"ast":27},"why","Why",{"type":28,"children":29},"root",[30],{"type":31,"tag":32,"props":33,"children":34},"element","p",{},[35,38,45,47,53],{"type":36,"value":37},"text","On 2026-11-03 a deploy ran past 20 minutes, and two concurrent deploys collided in ",{"type":31,"tag":39,"props":40,"children":42},"code",{"className":41},[],[43],{"type":36,"value":44},".nuxt-deploy",{"type":36,"value":46},". The phase-4 lab links to itself with query knobs (",{"type":31,"tag":39,"props":48,"children":50},{"className":49},[],[51],{"type":36,"value":52},"?findingId=…&policyId=…&team=…",{"type":36,"value":54},"). Nitro's crawler rendered every permutation, about 19,000 of them, and then threw each away, because a query URL can't be written as a file. The lab keeps growing, so the build will drift back up unless something trims it.",{"key":56,"title":57,"empty":19,"ast":58},"objective","Objective",{"type":28,"children":59},[60],{"type":31,"tag":61,"props":62,"children":63},"ul",{},[64,70],{"type":31,"tag":65,"props":66,"children":67},"li",{},[68],{"type":36,"value":69},"A deploy build in a few minutes, outputting the same pages.",{"type":31,"tag":65,"props":71,"children":72},{},[73],{"type":36,"value":74},"A ranked list of what to trim next, measured rather than guessed, ready for when the build grows again.",{"key":76,"title":77,"empty":19,"ast":78},"scope","Scope",{"type":28,"children":79},[80],{"type":31,"tag":32,"props":81,"children":82},{},[83,89,91,97,99,104,106,112],{"type":31,"tag":84,"props":85,"children":86},"strong",{},[87],{"type":36,"value":88},"In:",{"type":36,"value":90}," ",{"type":31,"tag":39,"props":92,"children":94},{"className":93},[],[95],{"type":36,"value":96},"nuxt.config.ts",{"type":36,"value":98}," prerender settings (deploy builds only), the server data the cycle pages read, slow or broken pages the crawler reaches.\n",{"type":31,"tag":84,"props":100,"children":101},{},[102],{"type":36,"value":103},"Out:",{"type":36,"value":105}," the deploy script's shape (local build → ",{"type":31,"tag":39,"props":107,"children":109},{"className":108},[],[110],{"type":36,"value":111},"deploy",{"type":36,"value":113}," branch), Cloudflare, dev-server behaviour.",{"key":115,"title":116,"empty":19,"ast":117},"key-changes","Key Changes",{"type":28,"children":118},[119],{"type":31,"tag":61,"props":120,"children":121},{},[122,350,408,594],{"type":31,"tag":65,"props":123,"children":124},{},[125,130,132,138,140,146,148,154,156,162,164,170,172,178,180],{"type":31,"tag":84,"props":126,"children":127},{},[128],{"type":36,"value":129},"2026-11-03 — skip query links in the deploy crawl",{"type":36,"value":131}," (commit ",{"type":31,"tag":39,"props":133,"children":135},{"className":134},[],[136],{"type":36,"value":137},"a7323795df",{"type":36,"value":139}," on ",{"type":31,"tag":39,"props":141,"children":143},{"className":142},[],[144],{"type":36,"value":145},"claude\u002Fjovial-dubinsky-36e37e",{"type":36,"value":147},", unpushed). Under ",{"type":31,"tag":39,"props":149,"children":151},{"className":150},[],[152],{"type":36,"value":153},"DESIGN_DEPLOY_OUT",{"type":36,"value":155},", ",{"type":31,"tag":39,"props":157,"children":159},{"className":158},[],[160],{"type":36,"value":161},"nitro.prerender.ignore",{"type":36,"value":163}," skips any link with a ",{"type":31,"tag":39,"props":165,"children":167},{"className":166},[],[168],{"type":36,"value":169},"?",{"type":36,"value":171}," and queues its bare path instead (captured from the ",{"type":31,"tag":39,"props":173,"children":175},{"className":174},[],[176],{"type":36,"value":177},"prerender:routes",{"type":36,"value":179}," hook), so a page linked only with a query still prerenders. Dev is untouched.",{"type":31,"tag":61,"props":181,"children":182},{},[183,293,345],{"type":31,"tag":65,"props":184,"children":185},{},[186,188,194,196,202,204],{"type":36,"value":187},"Measured on ",{"type":31,"tag":39,"props":189,"children":191},{"className":190},[],[192],{"type":36,"value":193},"c123\u002Fowasp-agentic-tour",{"type":36,"value":195}," plus the main checkout's 23 uncommitted lab paths (",{"type":31,"tag":39,"props":197,"children":199},{"className":198},[],[200],{"type":36,"value":201},"nuxt generate",{"type":36,"value":203},", deploy.sh step 1):",{"type":31,"tag":205,"props":206,"children":207},"table",{},[208,230],{"type":31,"tag":209,"props":210,"children":211},"thead",{},[212],{"type":31,"tag":213,"props":214,"children":215},"tr",{},[216,220,225],{"type":31,"tag":217,"props":218,"children":219},"th",{},[],{"type":31,"tag":217,"props":221,"children":222},{},[223],{"type":36,"value":224},"Before",{"type":31,"tag":217,"props":226,"children":227},{},[228],{"type":36,"value":229},"After",{"type":31,"tag":231,"props":232,"children":233},"tbody",{},[234,253,271],{"type":31,"tag":213,"props":235,"children":236},{},[237,243,248],{"type":31,"tag":238,"props":239,"children":240},"td",{},[241],{"type":36,"value":242},"Total build",{"type":31,"tag":238,"props":244,"children":245},{},[246],{"type":36,"value":247},"1,051 s",{"type":31,"tag":238,"props":249,"children":250},{},[251],{"type":36,"value":252},"262 s",{"type":31,"tag":213,"props":254,"children":255},{},[256,261,266],{"type":31,"tag":238,"props":257,"children":258},{},[259],{"type":36,"value":260},"Prerender phase",{"type":31,"tag":238,"props":262,"children":263},{},[264],{"type":36,"value":265},"967 s",{"type":31,"tag":238,"props":267,"children":268},{},[269],{"type":36,"value":270},"191 s",{"type":31,"tag":213,"props":272,"children":273},{},[274,283,288],{"type":31,"tag":238,"props":275,"children":276},{},[277],{"type":31,"tag":39,"props":278,"children":280},{"className":279},[],[281],{"type":36,"value":282},"index.html",{"type":31,"tag":238,"props":284,"children":285},{},[286],{"type":36,"value":287},"3,126",{"type":31,"tag":238,"props":289,"children":290},{},[291],{"type":36,"value":292},"3,125",{"type":31,"tag":65,"props":294,"children":295},{},[296,298,304,306,312,314,320,321,327,329,335,337,343],{"type":36,"value":297},"Gained ",{"type":31,"tag":39,"props":299,"children":301},{"className":300},[],[302],{"type":36,"value":303},"pages\u002Fphase4\u002Fmock\u002Finventory\u002Fagents\u002Fdetail",{"type":36,"value":305}," and ",{"type":31,"tag":39,"props":307,"children":309},{"className":308},[],[310],{"type":36,"value":311},"inventory\u002Ftools\u002Fdetail",{"type":36,"value":313},": they were linked only with a query, so the live site was missing them. Dropped ",{"type":31,"tag":39,"props":315,"children":317},{"className":316},[],[318],{"type":36,"value":319},"\u002Fcycles\u002Fdesign\u002Fc0",{"type":36,"value":305},{"type":31,"tag":39,"props":322,"children":324},{"className":323},[],[325],{"type":36,"value":326},"\u002Fcycles\u002Fdesign\u002Fc97-harness-chip",{"type":36,"value":328}," (+ ",{"type":31,"tag":39,"props":330,"children":332},{"className":331},[],[333],{"type":36,"value":334},"record",{"type":36,"value":336},"): 404 pages reached only from ",{"type":31,"tag":39,"props":338,"children":340},{"className":339},[],[341],{"type":36,"value":342},"?cycle=",{"type":36,"value":344}," links on the c124 mock. Posture report and time-window pages are byte-identical.",{"type":31,"tag":65,"props":346,"children":347},{},[348],{"type":36,"value":349},"The 1,660-page figure in the original log came from a build that was cut short; a full build writes about 3,125 pages.",{"type":31,"tag":65,"props":351,"children":352},{},[353,366,368,374,376,382,384,390,392,398,400,406],{"type":31,"tag":84,"props":354,"children":355},{},[356,358,364],{"type":36,"value":357},"2026-11-03 — ",{"type":31,"tag":39,"props":359,"children":361},{"className":360},[],[362],{"type":36,"value":363},"DataTimeline",{"type":36,"value":365}," demo fixed",{"type":36,"value":367}," (same commit). The demo passed ",{"type":31,"tag":39,"props":369,"children":371},{"className":370},[],[372],{"type":36,"value":373},"timeframe: 'week'",{"type":36,"value":375},", but Timeline matches ",{"type":31,"tag":39,"props":377,"children":379},{"className":378},[],[380],{"type":36,"value":381},"Time",{"type":36,"value":383}," values (",{"type":31,"tag":39,"props":385,"children":387},{"className":386},[],[388],{"type":36,"value":389},"'7days'",{"type":36,"value":391},"), so its computed was undefined and SSR threw ",{"type":31,"tag":39,"props":393,"children":395},{"className":394},[],[396],{"type":36,"value":397},"reading 'labels'",{"type":36,"value":399},". The demo now passes ",{"type":31,"tag":39,"props":401,"children":403},{"className":402},[],[404],{"type":36,"value":405},"Object.values(Time)",{"type":36,"value":407},".",{"type":31,"tag":65,"props":409,"children":410},{},[411,416,418,564,568,570,576,578,584,586,592],{"type":31,"tag":84,"props":412,"children":413},{},[414],{"type":36,"value":415},"2026-11-03 — where the rest of the time goes",{"type":36,"value":417}," (from the baseline log, summed render time across 12 cores, so per-page numbers are inflated by queueing):",{"type":31,"tag":205,"props":419,"children":420},{},[421,442],{"type":31,"tag":209,"props":422,"children":423},{},[424],{"type":31,"tag":213,"props":425,"children":426},{},[427,432,437],{"type":31,"tag":217,"props":428,"children":429},{},[430],{"type":36,"value":431},"Bucket",{"type":31,"tag":217,"props":433,"children":434},{},[435],{"type":36,"value":436},"Routes",{"type":31,"tag":217,"props":438,"children":439},{},[440],{"type":36,"value":441},"Summed render time",{"type":31,"tag":231,"props":443,"children":444},{},[445,463,481,505,528],{"type":31,"tag":213,"props":446,"children":447},{},[448,453,458],{"type":31,"tag":238,"props":449,"children":450},{},[451],{"type":36,"value":452},"Query permutations (now skipped)",{"type":31,"tag":238,"props":454,"children":455},{},[456],{"type":36,"value":457},"19,034",{"type":31,"tag":238,"props":459,"children":460},{},[461],{"type":36,"value":462},"~21,000 s",{"type":31,"tag":213,"props":464,"children":465},{},[466,471,476],{"type":31,"tag":238,"props":467,"children":468},{},[469],{"type":36,"value":470},"Path-only pages",{"type":31,"tag":238,"props":472,"children":473},{},[474],{"type":36,"value":475},"3,516",{"type":31,"tag":238,"props":477,"children":478},{},[479],{"type":36,"value":480},"~10,100 s",{"type":31,"tag":213,"props":482,"children":483},{},[484,495,500],{"type":31,"tag":238,"props":485,"children":486},{},[487,489],{"type":36,"value":488},"└ ",{"type":31,"tag":39,"props":490,"children":492},{"className":491},[],[493],{"type":36,"value":494},"\u002Fcycles\u002Fdesign\u002F*",{"type":31,"tag":238,"props":496,"children":497},{},[498],{"type":36,"value":499},"1,099",{"type":31,"tag":238,"props":501,"children":502},{},[503],{"type":36,"value":504},"~7,800 s (doc pages avg 11 s, cycle pages avg 3.7 s)",{"type":31,"tag":213,"props":506,"children":507},{},[508,518,523],{"type":31,"tag":238,"props":509,"children":510},{},[511,512],{"type":36,"value":488},{"type":31,"tag":39,"props":513,"children":515},{"className":514},[],[516],{"type":36,"value":517},"\u002Fcomponents\u002F_demos\u002F*",{"type":31,"tag":238,"props":519,"children":520},{},[521],{"type":36,"value":522},"386",{"type":31,"tag":238,"props":524,"children":525},{},[526],{"type":36,"value":527},"~80 s",{"type":31,"tag":213,"props":529,"children":530},{},[531,554,559],{"type":31,"tag":238,"props":532,"children":533},{},[534,540,541,547,548],{"type":31,"tag":39,"props":535,"children":537},{"className":536},[],[538],{"type":36,"value":539},"\u002Fpages\u002Fdata-swarm-ideas",{"type":36,"value":155},{"type":31,"tag":39,"props":542,"children":544},{"className":543},[],[545],{"type":36,"value":546},"-2-",{"type":36,"value":155},{"type":31,"tag":39,"props":549,"children":551},{"className":550},[],[552],{"type":36,"value":553},"-3-",{"type":31,"tag":238,"props":555,"children":556},{},[557],{"type":36,"value":558},"3",{"type":31,"tag":238,"props":560,"children":561},{},[562],{"type":36,"value":563},"~284 s each",{"type":31,"tag":565,"props":566,"children":567},"br",{},[],{"type":36,"value":569},"Top query offenders before the fix: ",{"type":31,"tag":39,"props":571,"children":573},{"className":572},[],[574],{"type":36,"value":575},"findings",{"type":36,"value":577}," (2,160), ",{"type":31,"tag":39,"props":579,"children":581},{"className":580},[],[582],{"type":36,"value":583},"compliance\u002Fdetail",{"type":36,"value":585}," (1,787), ",{"type":31,"tag":39,"props":587,"children":589},{"className":588},[],[590],{"type":36,"value":591},"policy-config\u002Fconfig-file",{"type":36,"value":593}," (1,515).",{"type":31,"tag":65,"props":595,"children":596},{},[597,602,604,610,611,616,618,623,624,630,632,637,639,644,646,652],{"type":31,"tag":84,"props":598,"children":599},{},[600],{"type":36,"value":601},"2026-11-03 — first real deploy with the fix",{"type":36,"value":603}," (",{"type":31,"tag":39,"props":605,"children":607},{"className":606},[],[608],{"type":36,"value":609},"bd48264c3e",{"type":36,"value":139},{"type":31,"tag":39,"props":612,"children":614},{"className":613},[],[615],{"type":36,"value":111},{"type":36,"value":617},", from ",{"type":31,"tag":39,"props":619,"children":621},{"className":620},[],[622],{"type":36,"value":193},{"type":36,"value":90},{"type":31,"tag":39,"props":625,"children":627},{"className":626},[],[628],{"type":36,"value":629},"0a2cb25691",{"type":36,"value":631}," + 23 uncommitted). ",{"type":31,"tag":39,"props":633,"children":635},{"className":634},[],[636],{"type":36,"value":201},{"type":36,"value":638}," took about 4 min (client 29 s, server 34 s, prerender 176 s, 6,256 routes, 3,126 ",{"type":31,"tag":39,"props":640,"children":642},{"className":641},[],[643],{"type":36,"value":282},{"type":36,"value":645},"), but ",{"type":31,"tag":39,"props":647,"children":649},{"className":648},[],[650],{"type":36,"value":651},"deploy.sh",{"type":36,"value":653}," ran 931 s end to end. The other ~11 min came after the build: committing 17,863 files (820 MB) as a fresh tree and force-pushing it. The build is no longer the slow part of a deploy; the commit and push are.",{"key":655,"title":656,"empty":19,"ast":657},"outcome","Outcome",{"type":28,"children":658},[659],{"type":31,"tag":32,"props":660,"children":661},{},[662],{"type":31,"tag":663,"props":664,"children":665},"em",{},[666],{"type":36,"value":667},"(open — parked after the first fix)",{"key":669,"title":670,"empty":19,"ast":671},"extra","Options (ranked; none started)",{"type":28,"children":672},[673],{"type":31,"tag":674,"props":675,"children":676},"ol",{"start":20},[677,718,797,829,853,870],{"type":31,"tag":65,"props":678,"children":679},{},[680,685,687,692,694,700,702,708,710,716],{"type":31,"tag":84,"props":681,"children":682},{},[683],{"type":36,"value":684},"Time and trim the commit + push",{"type":36,"value":686}," (now the biggest cost: ~11 of 15.5 min). Add timestamps to ",{"type":31,"tag":39,"props":688,"children":690},{"className":689},[],[691],{"type":36,"value":651},{"type":36,"value":693}," steps 3–4 first to see whether ",{"type":31,"tag":39,"props":695,"children":697},{"className":696},[],[698],{"type":36,"value":699},"git add",{"type":36,"value":701}," of 17k files or the upload dominates. Then: content-stable asset names so unchanged blobs dedupe, drop what Cloudflare doesn't need (e.g. ",{"type":31,"tag":39,"props":703,"children":705},{"className":704},[],[706],{"type":36,"value":707},"_payload.json",{"type":36,"value":709}," if unused, source maps), or upload with ",{"type":31,"tag":39,"props":711,"children":713},{"className":712},[],[714],{"type":36,"value":715},"wrangler pages deploy",{"type":36,"value":717}," (hash-based, only changed files) instead of a git push.",{"type":31,"tag":65,"props":719,"children":720},{},[721,726,728,734,735,741,743,749,751,757,758,764,766,772,774,780,781,787,789,795],{"type":31,"tag":84,"props":722,"children":723},{},[724],{"type":36,"value":725},"Cache cycle data during prerender.",{"type":36,"value":727}," Every cycle doc page calls ",{"type":31,"tag":39,"props":729,"children":731},{"className":730},[],[732],{"type":36,"value":733},"listProjectCycles",{"type":36,"value":603},{"type":31,"tag":39,"props":736,"children":738},{"className":737},[],[739],{"type":36,"value":740},"server\u002Fdata\u002Fcycles\u002FbuildCycles.ts",{"type":36,"value":742},"), which rereads and parses all ~130 ",{"type":31,"tag":39,"props":744,"children":746},{"className":745},[],[747],{"type":36,"value":748},"CYCLE.md",{"type":36,"value":750}," files plus ",{"type":31,"tag":39,"props":752,"children":754},{"className":753},[],[755],{"type":36,"value":756},"statusIndex",{"type":36,"value":305},{"type":31,"tag":39,"props":759,"children":761},{"className":760},[],[762],{"type":36,"value":763},"imageIndex",{"type":36,"value":765},", on every request. The week pages also run ",{"type":31,"tag":39,"props":767,"children":769},{"className":768},[],[770],{"type":36,"value":771},"git log",{"type":36,"value":773}," per request (",{"type":31,"tag":39,"props":775,"children":777},{"className":776},[],[778],{"type":36,"value":779},"window.ts",{"type":36,"value":155},{"type":31,"tag":39,"props":782,"children":784},{"className":783},[],[785],{"type":36,"value":786},"timeline.ts",{"type":36,"value":788},"). Nothing changes mid-build, so memoise per process, gated on ",{"type":31,"tag":39,"props":790,"children":792},{"className":791},[],[793],{"type":36,"value":794},"import.meta.prerender",{"type":36,"value":796},". Biggest next lever, invisible on the site.",{"type":31,"tag":65,"props":798,"children":799},{},[800,805,807,813,814,820,822,828],{"type":31,"tag":84,"props":801,"children":802},{},[803],{"type":36,"value":804},"The three data-swarm pages (~284 s each).",{"type":36,"value":806}," They read ",{"type":31,"tag":39,"props":808,"children":810},{"className":809},[],[811],{"type":36,"value":812},"\u002Fapi\u002Fai-usage",{"type":36,"value":305},{"type":31,"tag":39,"props":815,"children":817},{"className":816},[],[818],{"type":36,"value":819},"\u002Fapi\u002Fcommits\u002Fdetail",{"type":36,"value":821}," (c62). Likely heavy git scans or a timeout; cache, fix, or ",{"type":31,"tag":39,"props":823,"children":825},{"className":824},[],[826],{"type":36,"value":827},"prerender: false",{"type":36,"value":407},{"type":31,"tag":65,"props":830,"children":831},{},[832,837,838,844,846,851],{"type":31,"tag":84,"props":833,"children":834},{},[835],{"type":36,"value":836},"Client-render the lab on deploy.",{"type":36,"value":90},{"type":31,"tag":39,"props":839,"children":841},{"className":840},[],[842],{"type":36,"value":843},"routeRules: { '\u002Fpages\u002F**': { ssr: false } }",{"type":36,"value":845}," under ",{"type":31,"tag":39,"props":847,"children":849},{"className":848},[],[850],{"type":36,"value":153},{"type":36,"value":852}," makes each lab mock a cheap shell. Big cut; the mocks stop shipping as static HTML. Mark's call.",{"type":31,"tag":65,"props":854,"children":855},{},[856,861,863,868],{"type":31,"tag":84,"props":857,"children":858},{},[859],{"type":36,"value":860},"Prune.",{"type":36,"value":862}," Retire old phase-0 mocks or old cycles' doc pages; stop the crawler following direct ",{"type":31,"tag":39,"props":864,"children":866},{"className":865},[],[867],{"type":36,"value":517},{"type":36,"value":869}," links (small).",{"type":31,"tag":65,"props":871,"children":872},{},[873,878],{"type":31,"tag":84,"props":874,"children":875},{},[876],{"type":36,"value":877},"Incremental deploys",{"type":36,"value":879}," (reuse unchanged output): most moving parts, last resort.",{"key":669,"title":881,"empty":19,"ast":882},"Remaining prerender errors (content, not crawl cost)",{"type":28,"children":883},[884,921,1050],{"type":31,"tag":32,"props":885,"children":886},{},[887,889,895,897,903,905,911,913,919],{"type":36,"value":888},"Folder links in cycle records resolve to routes that don't exist: on a week page to ",{"type":31,"tag":39,"props":890,"children":892},{"className":891},[],[893],{"type":36,"value":894},"\u002Fcycles\u002Fweeks\u002F\u003Cfolder>",{"type":36,"value":896}," (400 \"week must be a Monday\"), on a cycle page to ",{"type":31,"tag":39,"props":898,"children":900},{"className":899},[],[901],{"type":36,"value":902},"\u002Fcycles\u002Fdesign\u002F\u003Cfolder>",{"type":36,"value":904}," (404), and through ",{"type":31,"tag":39,"props":906,"children":908},{"className":907},[],[909],{"type":36,"value":910},"siteLinks",{"type":36,"value":912}," to ",{"type":31,"tag":39,"props":914,"children":916},{"className":915},[],[917],{"type":36,"value":918},"doc?path=\u003Cfolder>\u002F.md",{"type":36,"value":920}," (404). No site route serves a cycle folder.",{"type":31,"tag":61,"props":922,"children":923},{},[924,942,953,979,990,1008,1028,1039],{"type":31,"tag":65,"props":925,"children":926},{},[927,933,935,940],{"type":31,"tag":39,"props":928,"children":930},{"className":929},[],[931],{"type":36,"value":932},"(mcp-guide-u4\u002F)",{"type":36,"value":934}," — c125 CYCLE.md (on ",{"type":31,"tag":39,"props":936,"children":938},{"className":937},[],[939],{"type":36,"value":193},{"type":36,"value":941},")",{"type":31,"tag":65,"props":943,"children":944},{},[945,951],{"type":31,"tag":39,"props":946,"children":948},{"className":947},[],[949],{"type":36,"value":950},"(tours-walk\u002F)",{"type":36,"value":952}," — c123",{"type":31,"tag":65,"props":954,"children":955},{},[956,962,963,969,971,977],{"type":31,"tag":39,"props":957,"children":959},{"className":958},[],[960],{"type":36,"value":961},"(todos-2026-09-23\u002F)",{"type":36,"value":155},{"type":31,"tag":39,"props":964,"children":966},{"className":965},[],[967],{"type":36,"value":968},"(todos-2026-09-24\u002F)",{"type":36,"value":970}," — c92; ",{"type":31,"tag":39,"props":972,"children":974},{"className":973},[],[975],{"type":36,"value":976},"(todos-2026-09-30\u002F)",{"type":36,"value":978}," — c103",{"type":31,"tag":65,"props":980,"children":981},{},[982,988],{"type":31,"tag":39,"props":983,"children":985},{"className":984},[],[986],{"type":36,"value":987},"(sources\u002F)",{"type":36,"value":989}," — c121",{"type":31,"tag":65,"props":991,"children":992},{},[993,999,1000,1006],{"type":31,"tag":39,"props":994,"children":996},{"className":995},[],[997],{"type":36,"value":998},"claude-code-opus-5.5\u002Fphase2\u002Fstudies\u002F",{"type":36,"value":155},{"type":31,"tag":39,"props":1001,"children":1003},{"className":1002},[],[1004],{"type":36,"value":1005},"phase3\u002Fbom\u002F",{"type":36,"value":1007}," — c99",{"type":31,"tag":65,"props":1009,"children":1010},{},[1011,1013,1019,1020,1026],{"type":36,"value":1012},"c107: ",{"type":31,"tag":39,"props":1014,"children":1016},{"className":1015},[],[1017],{"type":36,"value":1018},"crates\u002Fqdash\u002Fui\u002Fdocs\u002Fdata-interface.md",{"type":36,"value":155},{"type":31,"tag":39,"props":1021,"children":1023},{"className":1022},[],[1024],{"type":36,"value":1025},"EXECUTIVE-OVERVIEW.md",{"type":36,"value":1027}," (not in the cycle dir)",{"type":31,"tag":65,"props":1029,"children":1030},{},[1031,1037],{"type":31,"tag":39,"props":1032,"children":1034},{"className":1033},[],[1035],{"type":36,"value":1036},"\u002Fapi\u002Fcycles\u002Fdesign\u002Fc105",{"type":36,"value":1038}," — 404 in that build",{"type":31,"tag":65,"props":1040,"children":1041},{},[1042,1048],{"type":31,"tag":39,"props":1043,"children":1045},{"className":1044},[],[1046],{"type":36,"value":1047},"\u002Fcycles\u002Fweeks\u002F1999-12-27",{"type":36,"value":1049}," — something links a week far in the past",{"type":31,"tag":32,"props":1051,"children":1052},{},[1053,1055,1060],{"type":36,"value":1054},"Fix per record (point at a file inside the folder), or teach ",{"type":31,"tag":39,"props":1056,"children":1058},{"className":1057},[],[1059],{"type":36,"value":910},{"type":36,"value":1061}," to send folder links somewhere real.",[],[1064,1065],"PICKUP.md","initial-prompt.md",[1067,1069],{"file":1064,"title":1068},"Pickup Note",{"file":1065,"title":1070},"initial prompt",[],[],[],1794599466339]