Skip to content

Releases: Takazudo/zudo-front-builder

v2.1.0

Choose a tag to compare

@Takazudo Takazudo released this 03 Aug 09:34

Released: 2026-08-03

The basic-blog scaffold template is redesigned. zfb new now produces a starter that demonstrates
the markdown pipeline and idiomatic Tailwind — a zfb.config.ts with a collection schema and the
enabled markdown features, mdx-components.tsx wiring the five alert components, a
markdown-showcase.md post with one live example per enabled feature, and a README covering both
enabled and available-but-off features. The pagination and tag routes are gone; the README links
their docs instead. Existing projects are unaffected — this only changes what a new scaffold
contains.

Features

  • feat(templates): redesign the basic-blog starter (#2269) (fa0b4e1)

Bug Fixes

  • fix(templates): visual-pass fixes for the basic-blog starter (1db0ece)

Other Changes

  • docs: stop a JA link-validation.mdx paragraph from parsing as a heading (464c936)
  • docs: stop a JA islands.mdx paragraph from parsing as a heading (35160fd)
  • docs: correct Tailwind v4 enablement framing in concepts/styling.mdx (dbe0803)
  • chore: refresh stale basic-blog references in comments (#2271) (04bab02)
  • docs: update getting-started and concepts pages for the redesigned starter (#2271) (e64132f)
  • test: update basic-blog e2e for the redesigned template (#2270) (f15f613)
  • docs(templates): clarify the basic-blog README's not-enabled feature table (6a393b7)

v2.0.0

Choose a tag to compare

@Takazudo Takazudo released this 02 Aug 20:42

Released: 2026-08-03

The githubAutolinks markdown feature has been removed, and the config loader rejects unknown
keys — so any site config still carrying githubAutolinks will fail at config load after upgrading.
That is the whole of the breaking surface; everything else in this release is additive or a fix.

Alongside it, this release lands the JSX-nested content passes (links, images, anchors, footnotes
inside MDX JSX and container directives now behave like their plain-markdown counterparts), spread
attribute validation, shadow-session lifecycle management for the build's staging directory, and a
real SWC parse behind the MDX content-bridge gate.

Breaking Changes

  • Remove the GithubAutolinks markdown feature entirely (a0b1103) — the githubAutolinks config key
    is gone and is now an unknown-key error. Delete it from your config (and from any preset that
    emits it) before upgrading. Host-specific issue/PR/SHA autolinking into github.com/{repo} does
    not belong in a general SSG.

Features

  • feat(zfb-build,zfb): shadow session lock/teardown/reap/keep-flag (#2257) (a10012e)
  • feat(zfb-md-extras): implement JsxNestedImageDimensions (#2248) (86ccfb5)
  • feat(zfb-content): treat JSX-nested external links with target/rel (#2249) (facba95)
  • feat(zfb-md-ast,zfb-md-extras,zfb-content): shared mdast-phase wiring for JSX-nested mutation passes (#2247) (a61ba77)
  • feat(zfb-content): register JSX-nested anchors and footnote occurrence ids (#2246) (e51e6df)
  • feat(build): add opt-in strictContentBridge flag for MDX fallback (#2220) (80465a1)

Bug Fixes

  • fix(zfb-content): preserve nested-image alt text in heading extraction (codex review, #2248) (83375b9)
  • fix(zfb-content): keep heading text/anchor when a nested external link is treated (#2249 review) (2bcc591)
  • fix(zfb-content): exclude footnote-definition bodies from JSX anchor collection (58cf99c)
  • fix(zfb-content): make the spread trailing-token check comment/whitespace-aware (#2242) (1798edb)
  • fix(zfb-content): reject a trailing comma / extra tokens after a spread operand (64565f9)
  • fix(zfb-content): validate + drop-and-warn invalid spread attributes (#2241) (a1bf1ac)
  • fix(md-extras): reset in_jsx at FootnoteDefinition boundaries in the JSX-nested link collector (#2222 review) (89b2240)
  • fix(md-extras): skip FootnoteDefinition subtrees in the JSX-nested link collector (#2225 review) (5b38ac4)
  • fix(md-extras): validate links nested in MDX JSX and container directives (#2184) (d09ba58)
  • fix(bundler): replace the content-bridge byte-scanner gate with a real SWC parse (#2219) (1d43d43)
  • fix(zfb-server): emit non-empty {} sentinel on page/css SSE frames (bebf80a)
  • fix(zfb-test-utils): preserve verbatim SSE field values in next_sse_frame (92dd85b)
  • fix(docs): remove unused tailwindcss + @tailwindcss/vite from docs/package.json (f290537)

Other Changes

  • refactor(zfb-build): extract run_drain_loop and inject synthetic Change events in pre-tick-hook live-loop tests (f3d815a)
  • diag(bundler): instrument the content-bridge gate scanner (#2217) (6b305c7)
  • diag(bundler): keep the gate's production path allocation-free (#2217) (956fa44)
  • test(zfb-content): live repro of the four JSX-nested anchor classes (#2244) (983d9e5)
  • test(md-extras): characterize the link-validation MDX-JSX/directive blind spot (#2223) (4d518da)
  • test(md-extras): flip the 4 pending-feature descent tests green (#2184, #2225) (f4871df)
  • test(md-extras,zfb): Wave 4 confirm pass for JSX-nested link validation (#2226) (449a88e)
  • test(bundler): strengthen the #2186 reproducer confirm pass with positive content + real-call-site assertions (#2221) (8e6dd50)
  • test(zfb): confirm SSE frames carry data: after a content edit (#2239) (81371f3)
  • test(zfb-md-wasm): re-pin frozen parity corpus to 13 after autolinks fixture removal (dd7b668)
  • docs(zfb-build): document the Windows lock-liveness risk as untested, not unsupported (#2258) (24fbba2)
  • docs(zfb-build): record #2257 codex-review accepted-risk rationale in code (e33c45d)
  • docs(zfb-content): explain why run()/run_with_context() skip the JSX-nested stubs (codex-review) (638371f)
  • docs(styling): state the embedded-Tailwind contract (EN + JA) (01bebc1)
  • docs(styling): scope the virtual-import claim to the exact tailwindcss specifier (e67ad13)
  • docs(content): name the current gate fn in the LaTeX-escape test comment (d930c9e)
  • docs(changelog): de-link removed github-autolinks page in historical entry (14f6e07)
  • docs: re-derive the Node floor from html-validate after the vite removal (fffbfec)

v1.1.1

Choose a tag to compare

@Takazudo Takazudo released this 01 Aug 18:49

Released: 2026-08-02

A release-tooling and documentation patch. No crate or npm package source changed since v1.1.0
the published binaries and JS are functionally identical. The two fixes below repair the release
pipeline itself, which only a real release cycle exercises.

Bug Fixes

  • fix(release): macos-13 is retired — the mac-x64 fallback was dead (9514520)
  • fix(release): point the tap default at the canonical checkout (c554c62)

Other Changes

  • chore(deps): bump zudo-doc to 4.5.0 and graduate docs off the zfb next line (50697bf)
  • docs(skill): run the Homebrew tap push from /l-make-release automatically (da8c0e3)

v1.1.0

Choose a tag to compare

@Takazudo Takazudo released this 31 Jul 22:01

Released: 2026-08-01

Promotes the 1.1.0-next.1 prerelease to stable. The list below covers everything since v1.0.0
the full set of changes a latest user crosses when upgrading from 1.0.0.

Features

  • feat(zfb-content): surface directive diagnostics through the pipeline markdown-diagnostics channel (#2206) (654facc)
  • feat(content): highlight fenced code nested in MDX JSX bodies and directives (b86b582)
  • feat(build): extend stage-escape remediation text for repo-root loose files (5a1c5d9)

Bug Fixes

  • fix(zfb-content): stop the buried-opener sibling scan at buried sibling openers (fc15bad)
  • fix(zfb-content): warn on unclosed container opener buried behind a prose first line (5f713c5)
  • fix(zfb-content): emit unclosed diagnostic for openers leaked before a glued directive run (06824b8)
  • fix(zfb-content): preserve hard breaks and nested-newline phrasing in directive bodies (#2206 review) (9c6ec3c)
  • fix(zfb-content): container directives — multi-block bodies, backtick titles, bounded closer search (#2206) (235f56e)
  • fix(content): sync nested-code chain on manual feature registration + share the code-block hast constructor (52deb41)
  • fix(build): stage root-workspace loose files reached via the broad alias (5eb8702)
  • fix(build): state the root package.json name requirement in the remediation text (e53dc19)
  • fix(ci): point the drift net at the latest channel, not just next (9ea8d97)
  • fix(release): ensure homebrew tap checkout before formula write (0a3e00e)
  • fix(test): scope composition-test boundary checks to each Note's own span (ed0f1c9)
  • fix(test): make the homebrew tap test POSIX sh, not bash (308bcd2)

Other Changes

  • chore(release): bump to v1.1.0-next.1 (fcad49f)
  • test(zfb-content): cover the hard-break-separated buried opener pre-filter arm (4832878)
  • test(content): pin multi-block directive + JSX Note nested-fence composition (#2209) (a69b62b)
  • test(build): pin nested-fence class-mode highlight at the bundler layer (626f65c)
  • docs(content): de-link private NestedCodeChainSpec from pub getter doc (6080eb7)
  • docs(skill): make /l-make-release stable-by-default, ask only on a major (ca309f6)
  • docs(skill): update /l-make-release after first stable release (v1.0.0) (3a6ce75)
  • chore(ci): wire the root-workspace loose-file env-gate into health.yml (b9f0437)

v1.1.0-next.1

v1.1.0-next.1 Pre-release
Pre-release

Choose a tag to compare

@Takazudo Takazudo released this 31 Jul 19:54

Released: 2026-08-01

Features

  • feat(zfb-content): surface directive diagnostics through the pipeline markdown-diagnostics channel (#2206) (654facc)
  • feat(content): highlight fenced code nested in MDX JSX bodies and directives (b86b582)
  • feat(build): extend stage-escape remediation text for repo-root loose files (5a1c5d9)

Bug Fixes

  • fix(zfb-content): stop the buried-opener sibling scan at buried sibling openers (fc15bad)
  • fix(zfb-content): warn on unclosed container opener buried behind a prose first line (5f713c5)
  • fix(zfb-content): emit unclosed diagnostic for openers leaked before a glued directive run (06824b8)
  • fix(zfb-content): preserve hard breaks and nested-newline phrasing in directive bodies (#2206 review) (9c6ec3c)
  • fix(zfb-content): container directives — multi-block bodies, backtick titles, bounded closer search (#2206) (235f56e)
  • fix(content): sync nested-code chain on manual feature registration + share the code-block hast constructor (52deb41)
  • fix(build): stage root-workspace loose files reached via the broad alias (5eb8702)
  • fix(build): state the root package.json name requirement in the remediation text (e53dc19)
  • fix(ci): point the drift net at the latest channel, not just next (9ea8d97)
  • fix(release): ensure homebrew tap checkout before formula write (0a3e00e)
  • fix(test): scope composition-test boundary checks to each Note's own span (ed0f1c9)
  • fix(test): make the homebrew tap test POSIX sh, not bash (308bcd2)

Other Changes

  • test(zfb-content): cover the hard-break-separated buried opener pre-filter arm (4832878)
  • test(content): pin multi-block directive + JSX Note nested-fence composition (#2209) (a69b62b)
  • test(build): pin nested-fence class-mode highlight at the bundler layer (626f65c)
  • docs(content): de-link private NestedCodeChainSpec from pub getter doc (6080eb7)
  • docs(skill): update /l-make-release after first stable release (v1.0.0) (3a6ce75)
  • chore(ci): wire the root-workspace loose-file env-gate into health.yml (b9f0437)

v1.0.0

Choose a tag to compare

@Takazudo Takazudo released this 30 Jul 17:53

Released: 2026-07-31

First stable release. Everything developed across the 0.1.0-next.* prerelease line is included;
the list below covers only the changes since v0.1.0-next.99.

Other Changes

  • docs: migrate _category_.json to index.mdx frontmatter, delete the sidecars (c8ff485)
  • docs: correct three stale/false claims in shipped comments and agent docs (57bc1c0)
  • chore(deps): bump @takazudo/* deps in docs to latest (5d37e7b)

v0.1.0-next.99

v0.1.0-next.99 Pre-release
Pre-release

Choose a tag to compare

@Takazudo Takazudo released this 30 Jul 11:46

Released: 2026-07-30

Features

  • feat(zfb): plumb watchPollFallback/watchPollIntervalMs config to all watch sites (a13cc69)
  • feat(zfb-watcher): add opt-in PollWatcher backend behind WatchBackend option (4220176)
  • feat(dev): pre-tick plugin refresh hook in the orchestrator receive loop (#2169) (927592c)
  • feat(dev): add plugin virtual-module refresh state (issue #2168) (696642b)
  • feat(plugin-host): add watchFiles registration option + forced virtualLoad reload (c1d3df8)
  • feat(docs): flip docs build to --strict-broken (801820c)

Bug Fixes

  • fix(release): suppress empty slot-recovery header, emit runnable cp lines (d45c0b1)
  • fix(release): retain slot backup dir when restore fails (d379fad)
  • fix(release): clean up the binary slot backup dir after restore (b511ea5)
  • fix(test-utils): reject unrunnable staged esbuild instead of returning it (fab0411)
  • fix(build): widen fan_out_safe gate to exclude collection-root plugin watch files (2cf5e04)
  • fix(release): save/restore binary slots around the macOS x64 cross-build (95863f6)
  • fix(ci): un-gate dev_timing_enabled for no-v8 builds, appease while_let_loop lint (510137a)
  • fix(watcher): bypass native collateral-repair loops on the poll backend (770a4db)
  • fix(zfb): assert poll backend selection in the poll-backend e2e leg (5b3617a)
  • fix(zfb): scale liveness deadline for poll backend, fix stale remedy text (55f6e74)
  • fix(zfb-watcher): apply codex-review findings on the poll backend (4f52ac3)
  • fix(dev): apply plugin watch invalidation before external narrowing (69e69a8)
  • fix(dev): invalidate pages for plugin watch-file changes (#2181) (a097df6)
  • fix(dev): plugin watch-file changes conservatively rerun all virtual-module consumers (#2169) (ad44491)
  • fix(dev): carry forward discarded batch successes across refresh calls (df8a55e)
  • fix(plugin-host): serialize virtualLoad per loaderId, copy watchFiles array (f6dbd71)
  • fix(build): make copy-mode a sibling-closure disjunct, not a node_modules conjunct (01cc741)
  • fix(bundler): apply nested prune rules before granting the staging exemption (a18aa13)
  • fix(zfb-islands): normalize package_dir before first_party_root comparison (0d5ebe0)
  • fix(zfb-islands): filter workspace-package edges outside first_party_root (3500f26)
  • fix(zfb-build): fix symlink resolution and zudo-doc allowlist gaps in prune guard (a16c3be)
  • fix(zfb-build): make SSR virtual-module project-tier remap prune-aware (211c24e)
  • fix(deps): bump plist to 1.10.0 to lift 2 RUSTSEC advisory ignores (7501ed9)

Other Changes

  • docs(test-utils): tighten HarnessBug doc to say slots execute, not merely exist (e0997a7)
  • test(watcher): extract classify_final_verdict, delete FSEvents-racy chmod test (#2185) (df5fe16)
  • = start triage-fixes-260730 dev = [skip ci] (7fd479f)
  • test(zfb): add poll-backend dev-server e2e leg (d221ae4)
  • docs: qualify the watcher-liveness warning as a partial signal (#2176) (f58e90b)
  • docs: document watchPollFallback / watchPollIntervalMs (#2176) (cdc7171)
  • = start sweep-260729-2-watch-poll-fallback dev = [skip ci] (2c85dd3)
  • test(dev): confirm e2e for plugin watch-file content refresh (#2170) (683c14e)
  • docs(plugins): state the all-or-nothing refresh publish (EN/JA) (1785589)
  • docs(plugins): document addVirtualModule watchFiles + loader-memo refresh (EN/JA) (71978fe)
  • = start sweep-260729-2-plugin-watch-hook dev = [skip ci] (405ade9)
  • docs(architecture): document the command-layer staging copy-mode trigger (2244aaa)
  • test(e2e): remove copy-mode workaround from sibling-watch Scenario D (02a2c17)
  • = start sweep-260729-2-copy-mode-trigger dev = [skip ci] (32880f6)
  • = start sweep-260729-2-cleanups dev = [skip ci] (5d3e425)
  • = start sweep-260729-2 super-epic = [skip ci] (086873d)

v0.1.0-next.98

v0.1.0-next.98 Pre-release
Pre-release

Choose a tag to compare

@Takazudo Takazudo released this 29 Jul 09:52

Released: 2026-07-29

Features

  • feat(zfb-types,zfb-router,zfb-build): single _-prefix privacy predicate (fd74e97)
  • feat(zfb-build,zfb-types): share one roster+parse across SSR audit/enrolment; glob-aware workspace-walk pruning (#2142) (e7c6365)

Bug Fixes

  • fix(scripts): make check-exam-ignore-parity.sh run on bash 3.2 (#2147) (4f3b6ad)

Other Changes

  • docs: split root CLAUDE.md into scoped crates/CLAUDE.md (#2150) (7a7970e)
  • refactor(zfb): delegate the 4th has_node_modules_segment copy to zfb-types (#2146, #2128) (60faa1d)
  • refactor(zfb-build,zfb-islands): delegate has_node_modules_segment copies to zfb-types (#2146, #2128) (8c8cabe)
  • style(zfb-types): cargo fmt page_privacy.rs (1674824)
  • refactor(zfb-build): narrow accepted_enrolment_set* to pub(crate) (#2143) (e843633)
  • refactor(zfb-build): extract shared classify_metafile_input for audit + enrolment (#2141) (fd96d98)
  • test(zfb-build): add byte-exact goldens for stage-escape audit diagnostics (#2141) (6882f4f)

v0.1.0-next.97

v0.1.0-next.97 Pre-release
Pre-release

Choose a tag to compare

@Takazudo Takazudo released this 28 Jul 16:43

Released: 2026-07-29

Features

  • feat(zfb): wire strict-broken-links override into build command (#2117) (59beada)
  • feat(zfb): add strictBrokenLinks config field (b02e08c)
  • feat(zfb): add --strict-broken / --no-strict-broken CLI flags (sub #2114) (5b63dd4)
  • feat(zfb): add strictBrokenLinks TS config field (sub #2115) (2044d8b)
  • feat(zfb-islands): generalize orphan sweeper to all four .zfb-* temp classes (64b4fa1)
  • feat(zfb): scaffold .gitignore for islands/worker tsconfig + virtual-module temp classes (cfe38f1)
  • feat(zfb): audit remaining long-lived dev-server tasks, add loud plugin-reader EOF disposition (sub #2104) (b417242)
  • feat(zfb): supervise the _redirects watch task's outer JoinHandle (sub #2103) (5b823b1)
  • feat(zfb): fail-loud supervision link for the dev orchestrator task (sub #2102) (acb4e9c)
  • feat(zfb-build): add ORCH_PANIC_ON_TICK + ORCH_STOP_MS fault-injection knobs (sub #2100) (14e066a)
  • feat(zfb): loud-failure fallback for unenrolled first-party macro leaks (epic #2078 Sub 10c) (0fdb291)
  • feat(zfb-build): enforce acceptance⇒enrolment on the SSR leg (epic #2078 Sub 10b) (134f7f8)
  • feat(zfb-build): enrolment-selection contract for accepted first-party packages (epic #2078 Sub 10a) (fbcb06f)
  • feat(ci): classify pnpm audit registry failures as retryable infra, not findings (7e183b1)
  • feat(zfb): wire mermaid extract/restore into HTML minification (7565bee)
  • feat(zfb): add data-mermaid extract/restore helper for HTML minification (#2032) (e982eec)
  • feat(zfb-content): emit GFM footnotes through the JSX-emit path (#2027) (3aeda43)
  • feat(zfb-content): emit GFM footnotes through the HAST/HTML path (6901cad)
  • feat(zfb-content): document-level GFM footnote model (#2025) (e6d286c)
  • feat(zfb-content): emit GFM task-list checkboxes at all three ListItem sites (3b2c50c)
  • feat(zfb-render): adapt Web Crypto onto the OS CSPRNG and add a SHA digest op (#2018) (5d9b62c)
  • feat(zfb-render): OS entropy host primitive for the embedded V8 host (#2017) (bf99f5c)
  • feat(zfb-render): adapt JS fetch/Request/Response onto the request-time transport (#2016) (9dc7a71)
  • feat(zfb-render): async Rust fetch transport op for request-time SSR (#2015) (569a6e0)
  • feat(v8): thread a per-dispatch build-time/request-time mode into the embedded host (#2014) (a8135e6)
  • feat(server): enumerate and normalize _redirects 200-rewrite targets (#2003) (8c007c6)
  • feat(dev): rerun the Tailwind CSS scan for Content paths under a css_mirror_root (#1997) (b61d184)
  • feat(router,docs): confirm production route table + docs for widened page extensions (#1993) (79c8f95)
  • feat(router,build): centralize page-extension contract in zfb-types, widen router to .ts/.js/.jsx (f139c45)
  • feat(zfb-types): audit-eligibility predicate for the stage-escape audit (#1986) (4a543f1)
  • feat(docs): materialize the clean zudo-doc v4 base (#1961) (e9c4497)

Bug Fixes

  • fix(zfb-plugin-resolver): lock virtual-module temp files + export shared consts (#2108) (b26d9bd)
  • fix(zfb-islands): lock synthetic tsconfig allocations against the temp sweeper (8b2df82)
  • fix(zfb): satisfy clippy --all-targets on the dev-supervision test code (b26ee21)
  • fix(zfb): address codex review P2 findings on dev-supervision EOF/panic-hook (sub review-fix) (3659f2e)
  • fix(zfb): emit a page reload for all-dynamic-injected projects (sub #2097) (b8a3884)
  • fix(zfb): drop SSE liveness handshake for injected cell, use tick() delivery proof (sub #2094) (a1d376f)
  • fix(zfb): fix SSE-client timeout + warmup churn in matrix harness (sub #2094) (3e8ec63)
  • fix(zfb-build): stop the accepted-package macro scan from failing valid builds (e2ae169)
  • fix(zfb-build): gate the #2127 real-copy rule on locality and provenance (review) (50e0c69)
  • fix(zfb-build): metafile audit rejects real-copy-staged undeclared workspace siblings (#2127) (04b9941)
  • fix(zfb-types): declared-identity audit eligibility for staged real-copy packages (52a81ad)
  • fix(zfb-build): canonical-key exemption for consume-from-source siblings (4ae7c9b)
  • fix(zfb-build): provenance threading — transactional materialisation + transitive best-effort (0f2660b)
  • fix(zfb-types,zfb-build): pin the disarmed SSR stage-escape audit + docs honesty (58b0f6d)
  • fix(ci): close two gate-integrity holes in the pnpm audit wrapper (#2074) (8ca47a1)
  • fix(zfb-build): removed-path CSS fold covers every mirror-root class (195b0a7)
  • fix(zfb-server): classify protocol-relative _redirects targets as external (045603a)
  • fix(cloudflare-adapter): drop dead content-length conjunct from styled-404 detection (d316e35)
  • fix(zfb): apply epic #2030 review findings to the mermaid preserve helper (de4f453)
  • fix(zfb): pass malformed HTML through untouched instead of minifying it raw (6043c58)
  • fix(zfb): skip every HTML text-only context in the mermaid scanner (#2032) (8924a84)
  • fix(gfm): emit JSX style as an object prop, not a string (1b2d729)
  • fix(gfm): make the two GFM emit paths agree (epic #2021 review) (af40122)
  • fix(gfm-confirm): make footnote fixture discriminate reference vs source order (f8b0ecc)
  • fix(docs,gfm-parity): apply codex review findings (90496c8)
  • fix(zfb-content): keep the footnote label out of HeadingLinksPlugin's reach (aaf5d5b)
  • fix(zfb-content): order footnote references by rendered position, not source (9591299)
  • fix(dev): stop a zero-paths() route from collapsing content provenance (#2064) (6296428)
  • fix(zfb-render): drop cancelled fetch transports before the dispatch returns (977a0ae)
  • fix(zfb-render): enforce the request-time capability policy in Rust, not only in JS (epic #2012 review) (aa7603c)
  • fix(zfb): close a port-reuse race in the refused-port e2e case (7e99e1b)
  • fix(zfb-render): stop accepting whitespace-padded digest algorithm names (#2018) (baa2c77)
  • fix(zfb-render): make a zero-length entropy request a true no-op (#2017) (46693dd)
  • fix(zfb-render): close four request-parity gaps found by self-review (#2016) (f26d75c)
  • fix(zfb-render): give every dispatch its own subrequest budget (#2015) (797997c)
  • fix(v8): stop bundle code forging a request-time dispatch mode (#2014) (99a3906)
  • fix(dev): apply codex self-review findings on the rewrite pre-warm (#1999) (0bdf845)
  • fix(dev): apply epic-review findings on the rewrite pre-warm (#1999) (e1a9268)
  • fix(dev): apply self-review findings on the rewrite pre-warm (#2004) (7195e6d)
  • fix(dev): pre-warm _redirects 200-rewrite targets at Cold boot (#2004) (5962cc4)
  • fix(server): apply self-review findings to rewrite-target enumeration (#2003) (e160c01)
  • fix(dev): one shared ssr_routes_published signal for both recovery paths (#2002) (6afe2c4)
  • fix(dev): pin and harden the mirror-root CSS-rerun gate (#1995) (c2ac5e8)
  • fix(dev): include PathClass::Data in the mirror-root CSS rerun gate (0f9d021)
  • fix(build): apply the sidecar skip to the bundler and islands seed too (f9c3d6b)
  • fix(router,build,docs): apply epic-level review findings on page extensions (#1990) (e156f3a)
  • fix(metafile-deps): keep root-entry source packages authorising their siblings (1cc158d)
  • fix: apply epic-level review findings on the Staging Correctness epic (#1982) (3afdb6b)
  • fix(bundler): arm the SSR stage-escape audit at a root-claimed workspace (content) (ef00ee3)
  • fix(bundler): arm the SSR stage-escape audit at a root-claimed workspace (9e3ff73)
  • fix(islands): wire the eligibility predicate into the stage-escape audit (f3d5c5f)
  • fix(bundler): accept bare main/module entry declarations (codex P2) (3315034)
  • fix(bundler): accept declared first-party workspace siblings in case 2 (#2040) (038131a)
  • fix(bundler): keep the raw mirror copy when an unreachable sibling file cannot be preprocessed (#1985) (d1fd21a)
  • fix(bundler): expand a claimed sibling's own macros instead of raw-copying (#1985) (cfd5b6e)
  • fix(test): remove stale contradictory comment (codex P3) (5db4720)
  • fix(test): correct SSR RED test's staging claim per codex review (ec279d7)
  • fix(zfb-build): gate consume-from-source RED tests unix-only (#2039) (46a4f03)
  • fix(islands): write the esbuild entry before locking it (d77a25f)
  • fix(islands): hoist entry sweep to build boundary, cover the ownership lock (3d7120a)
  • fix(format): ignore generated src/wasm-highlight/ glue like its src/wasm/ sibling (ab096bd)
  • fix(b4push): exclude @takazudo/zfb-md-wasm to match health.yml (#2043) (ecd2c01)
  • fix(islands): prove entry ownership by lock, not age alone (#1976) (89fc338)
  • fix(islands): sweep esbuild entry temp files stranded by killed processes (#1976) (78722d4)
  • fix(zfb-content): preserve class/theme error precedence in build_pipeline (1026381)
  • fix(zfb-content): validate codeHighlight classPrefix/roleClasses for any mode (8298374)
  • fix(docs): repair 72 broken anchor links after hierarchical heading IDs (#1964) (c4a172d)
  • fix(docs-ci): drop dead .assetsignore fallbacks, fail-loud doc-history (#1965) (58cb845)

Other Changes

  • docs(zfb): consumer docs (EN/JA) for strictBrokenLinks / --strict-broken (sub #2121) (07cffaa)
  • test(zfb): red-first integration proof for --strict-broken/--no-strict-broken (#2118) (a9e23d5)
  • test(zfb): dev-isolation regression pin for strictBrokenLinks (#2119) (b114919)
  • test(zfb-md-extras): pin bare-fragment matching is exact-only for CJK too (#2116) (1b6a957)
  • test(zfb-islands): real-esbuild integration confirm for the temp-sweeper epic (sub #2111) (f01b6d6)
  • test(zfb): flip dev-supervision e2e green, add SIGINT exit-0 regression, reconcile counts (sub #2105) (24ddc17)
  • test(zfb): RED e2e proving zfb dev must exit when its orchestrator dies (sub #2101) (55ca9e7)
  • test(zfb): reclassify dev_content_reload_2063_e2e as untagged per zudo-test-wisdom (sub #2098) (1569218)
  • test(zfb): permanent registration + revert-proof for #2063 reload e2e (sub #2098) (a5e691c)
  • test(zfb): sharpen the #2063 injected fixture to a single dynamic route (sub #2097) (c073cd0)
  • te...
Read more

v0.1.0-next.96

v0.1.0-next.96 Pre-release
Pre-release

Choose a tag to compare

@Takazudo Takazudo released this 24 Jul 10:17

Released: 2026-07-24

Bug Fixes

  • fix(md-wasm): include final line endings in root position (bceabb2)
  • fix(md-wasm): include complete input in root position (0831de7)

Other Changes

  • Merge pull request #1933 from Takazudo/claude/wasm-docs-guide-kn2kg9 (c141b33)
  • docs: clarify wasm asset placeholder and lazy-init wording (review polish) (5338804)
  • merge: cross-link browser highlightCode (#1931) (a110aec)
  • merge: wire WASM-SSR docs to importing-wasm guide (#1930) (1f29e26)
  • docs: link the WASM-SSR docs to the adapter-agnostic Importing WebAssembly guide (8e722ac)
  • docs(guides): cross-link browser highlightCode from syntax highlighting (227972e)
  • merge: parseToAst/toMdastRoot in browser guide (#1929) (1e73eb9)
  • merge: api/md-wasm reference (#1928) (ce5b245)
  • merge: importing-wasm guide (#1927) (a2693d0)
  • docs(api): add zfb-md-wasm reference page (774f708)
  • docs(guides): add adapter-agnostic Importing WebAssembly guide (585a3c2)
  • docs(guides): document parseToAst/toMdastRoot and Vite in browser markdown preview (f95a3f8)
  • chore(release): bump to v0.1.0-next.95 (1f32b85)
  • test(md-wasm): cover lone CR root endings (e846bb1)
  • chore: start #1924 [skip ci] (3601a98)