← Back to Changelog

v3.0.0

Release

[email protected] — 2026-08-17

Security pins, ecto 5 template escaping, dependency upgrades, and CI/release hardening.

⚠ BREAKING CHANGES

  • upgrade ecto to 5.0.0 — Handlebars now HTML-escapes {{ }} by default (96f791a, #462) Migration: In custom templates, replace {{generatedHtml}} with {{{generatedHtml}}} so document HTML is not double-escaped. The bundled classic template already includes this change.

Bug Fixes

  • pin liquidjs to 10.27.1 for memoryLimit DoS advisories (f0e4548, #480)
  • pin undici to patched releases for SOCKS5 TLS bypass (eb4ddbf, #463)

Documentation

  • scaffold security docs (29d7a34, #464)

Internal

  • add standalone binary validation harness (ac4808c, #479)
  • bootstrap Aikido Safe Chain in cloud agents (c0fe7c7, #478)
  • reconcile checklist after lockdown tweaks (f139ce3, #477)
  • wrap CI installs with Socket Firewall (b5e916f, #476)
  • disable setup-node cache poisoning (913a9ea, #475)
  • record repository lockdown (fb953c3, #474)
  • add CODEOWNERS for high-risk paths (55e7b9d, #473)
  • add Aikido release gate (4a2fa0f, #471)
  • stage npm publishes via OIDC (8d4ab34, #470)
  • lint workflows with zizmor (ca3d677, #469)
  • add Socket Firewall to every job (4f05fb7, #468)
  • disable checkout credential persistence (6059b10, #467)
  • set contents: read workflow permissions (8a9fc23, #466)
  • install with a frozen lockfile (a3a4d68, #465)
  • upgrade undici (94c05d8, #461)
  • use caret range for ipaddr.js (41a973c, #460)
  • upgrade ipaddr.js (2508e4b, #459)
  • upgrade AI SDK dependencies to ai@7 and @ai-sdk/*@4 (14c75ee, #458)
  • upgrade GitHub Actions (c87fd16, #457)
  • upgrade pnpm to 11.20.0 (f8e7e83, #456)
  • upgrade TypeScript and build tooling (933fafb, #455)
  • upgrade code quality dependencies (06325ff, #454)
  • dependency maintenance (2026-07-19) (1aaa59c, #453)

Contributors

  • @jaredwray (22)

Full List of Changes

  • chore: dependency maintenance (2026-07-19) by @jaredwray in #453
  • root - chore: upgrade code quality dependencies by @jaredwray in #454
  • root - chore: upgrade TypeScript and build tooling by @jaredwray in #455
  • root - chore: upgrade pnpm by @jaredwray in #456
  • root - chore: upgrade GitHub Actions (breaking) by @jaredwray in #457
  • root - chore: upgrade AI SDK dependencies (breaking) by @jaredwray in #458
  • root - chore: upgrade ipaddr.js by @jaredwray in #459
  • root - chore: use caret range for ipaddr.js by @jaredwray in #460
  • root - chore: upgrade undici by @jaredwray in #461
  • root - chore: upgrade ecto (breaking) by @jaredwray in #462
  • fix: pin undici to patched releases for SOCKS5 TLS bypass by @jaredwray in #463
  • root - chore: defense - scaffold security docs by @jaredwray in #464
  • root - chore: defense - install with a frozen lockfile by @jaredwray in #465
  • root - chore: defense - set contents: read workflow permissions by @jaredwray in #466
  • root - chore: defense - disable checkout credential persistence by @jaredwray in #467
  • root - chore: defense - add Socket Firewall to every job by @jaredwray in #468
  • root - chore: defense - lint workflows with zizmor by @jaredwray in #469
  • root - chore: defense - stage npm publishes via OIDC by @jaredwray in #470
  • root - chore: defense - add Aikido release gate by @jaredwray in #471
  • root - chore: defense - add CODEOWNERS for high-risk paths by @jaredwray in #473
  • root - chore: defense - disable setup-node cache poisoning by @jaredwray in #475
  • root - chore: defense - record repository lockdown by @jaredwray in #474
  • root - chore: defense - wrap CI installs with Socket Firewall by @jaredwray in #476
  • root - chore: defense - reconcile checklist after lockdown tweaks by @jaredwray in #477
  • root - chore: defense - bootstrap Aikido Safe Chain in cloud agents by @jaredwray in #478
  • Add standalone binary validation harness by @jaredwray in #479
  • fix: pin liquidjs to 10.27.1 for memoryLimit DoS advisories by @jaredwray in #480

Full diff: https://github.com/jaredwray/docula/compare/v2.2.0...v3.0.0