Repository navigation
v18.0.0
·
300 commits
to stable-publication
since this release
18.0.0 (2026-10-07)
- fix(safe-bash)!: make default runtime portable without Node shims (3ef0574)
Bug Fixes
- agent-code-review: type injected prompt filesystem callbacks (6041ce6)
- agent-harness-tools: use portable plan and log filesystems (9bed06b)
- agent-harness: resolve relative snapshots consistently (8da2a8d)
- agent-hook-config-rust: align sync Node SDK entry and path resolution (258a7fb)
- agent-mcp-config: remove Node runtime dependencies (ac7706b)
- agent-skill-config-rust: honor injected path operations (26f68ec)
- agent-skill-config: serialize portable Git exclude mutations (3954132)
- agent-spawn-rust: deduplicate shared binding export after integration (8eb6fed)
- agent-spawn-rust: diagnose sandbox disk exhaustion (3d91c47)
- agent-spawn-rust: embed shared design bindings in the native addon (9498b3a)
- agent-spawn-rust: include native design bindings in embedded host (13ec2a7)
- agent-spawn-rust: preserve esbuild failure diagnostics (d36e499)
- agent-spawn-rust: remove duplicate design export (0bfa95a)
- agent-spawn: avoid assuming host disk exhaustion on mount ENOSPC (b1fa5d1)
- agent-spawn: diagnose sandbox marker directory ENOSPC (7ef08ee)
- agent-spawn: explain Linux Bun service socket denials (16a957e)
- agent-spawn: explain sandbox mount staging disk exhaustion (cfbe428)
- agent-spawn: expose embedded design native bindings (3991d11)
- agent-spawn: surface esbuild child-service diagnostics (ad73b54)
- align filesystem consumers with portable runtime exports (447d5c4)
- align poe-code-config-rust runtime, safe-fs proxy capabilities, and safe-bash llm tests (22c6133)
- apply-patch: spool success summaries through caller storage (4d5cd85)
- apply-patch: tolerate whitespace and punctuation in context (e01d169)
- archive: preserve input budgets and RPC fallback (24c11ad)
- ast-grep: align capture metadata with native differential coverage (42b45c0)
- audio-ast: accept streamed WAV length markers (d2af639)
- audio-ast: make MP4 atom depth limit opt-in (9b6c609)
- audio-ast: reject undersized ID3 headers and cover parser stress cases (1a02718)
- auth-store-rust: capture transaction cancellation before awaits (4684028)
- auth-store-rust: ensure wasm32-unknown-unknown rustup target is installed (c694a1d)
- awk: flush buffered stdout before asynchronous input (cb5de14)
- awk: observe print argument formatting side effects (62432e9)
- awk: release cancelled contexts and verify tenant isolation (e7af93a)
- awk: release main input before asynchronous END transitions (2246972)
- awk: stop retaining dynamic scalar strings across runs (3de10c3)
- bc: enforce cumulative UTF-8 output limits (7853cef)
- bc: evaluate array mutation indices once (0a117d2)
- bc: make output base limits configurable and preserve precision (49ab9f6)
- bc: parse hexadecimal digits with POSIX base rules (38283c2)
- bc: preserve decimal precision in math library (5aea7d2)
- bc: preserve output before execution errors (def9d24)
- bc: print parenthesized assignment expressions (73b0a7f)
- bc: propagate cancellation through evaluation and I/O (9405472)
- bc: scope automatic arrays to function calls (50c818b)
- bc: support array parameters with local value copies (fb6fe88)
- bc: use budgeted BigInt math and configurable number wrapping (1cfd1f4)
- build: admit bounded XML parser module closure (fe99afd)
- build: admit current workspace build commands to cache (a14fc9d)
- build: admit extracted spreadsheet and diagram cache stages (fd137a8)
- build: admit ImageMagick filesystem dependency (5337b43)
- build: admit pdftoppm filesystem dependency (4591529)
- build: admit sips safe-fs cache signature (3305658)
- build: admit syntax-minified image cache command (b490709)
- build: align pdfinfo private workspace dependencies (b2b48ed)
- build: align pdfseparate private dependency profile (b028f4e)
- build: cache current portable and native workspace recipes (bad2410)
- build: cache guarded local bundler commands (835e797)
- build: cache maintained portable workspace commands (5a39130)
- build: cache the csvkit Python worker build (2ca9718)
- build: cache the shared PDF runtime build (d17fc39)
- build: declare cp and zstd root test dependencies (22fce24)
- build: declare missing tested workspace prerequisites (a7792d5)
- build: declare OpenSSL runtime dependencies in root package (126130f)
- build: declare spreadsheet line breaking runtime (bc6c9a0)
- build: declare terminal text workspace at the root (6f2441b)
- build: declare tr46 runtime dependency (6de924a)
- build: derive private facade exports from production inputs (c7e2c5e)
- build: fall back to default source target when conditional source file is absent (dab6e9d)
- build: honor runtime conditions in workspace bundles (94ad878)
- build: preserve root node export fallback during private workspace packaging (a080c25)
- build: publish canonical streaming XML runtime (ca0eae3)
- build: restore portable private command condition selection and root node alias fallback (a249983)
- build: retain optional aliases for core shell extensions (85b37b8)
- build: retain root SQLite workspace lock declaration (e09e61a)
- build: route filesystem runtime helpers through the public core (5ced800)
- build: route storage imports through public filesystem core (24e0b23)
- build: select conditional private workspace declarations and runtimes (06851ff)
- build: support prepared exports per runtime profile (0462638)
- build: synchronize pdfinfo workspace lock metadata (64d3e63)
- cache: admit CSV Python worker builds (9e7c429)
- cached-resource: support portable filesystem caches (101bb5a)
- cal: validate calendar spans and day operands (b75dbbd)
- chmod: support explicit virtual root preservation controls (f468bf4)
- ci: avoid competing fresh test stages (004767c)
- ci: fall back to a verified GNU Bash mirror (61a4e47)
- ci: install Rust WebAssembly target before workspace builds (398756d)
- ci: Pin the LLM reference HTTPX dependency (d5f08a2)
- ci: replace safe-bash-pptx-engine with safe-bash-presentation-engine in unit cache (af4e696)
- ci: reuse verified builds for Bash tests (d94b42e)
- ci: supply web globals to the package verification realm (d5b5ae4)
- cksum: allow at most one space before tagged manifest filenames (139bd79)
- cksum: verify base64 digests and declared hash lengths (02c1d47)
- column: charge field parsing only through consumed input (481c372)
- column: preserve zero-width UTF-8 format characters (e0e2c91)
- commands: capture plugin replacement policies at creation (d600ba4)
- compression: stop suspended byte codecs after close (2e7072f)
- compression: suppress reads completed after reader close (0ec9a26)
- config-extends-rust: decode portable filesystem reads (e80eb17)
- config-extends-rust: decode SafeFS configuration reads (25f7404)
- config-extends-rust: support byte-oriented safe filesystems (aaead09)
- config-extends: support portable filesystem prompt resolution (cd7fce8)
- config-mutations-rust: match portable byte and path contracts (40f7066)
- config-mutations-rust: match portable path and byte contracts (ce691ae)
- config-mutations-rust: match TOML table header consumption (3ebac55)
- config-mutations-rust: preserve public JSONC field semantics (62abc4f)
- config-mutations-rust: preserve unsupported YAML diagnostics (8110047)
- config-mutations: support runtimes without Node built-ins (229e124)
- csv-engine: charge cell parsing and serialization linearly (5c625db)
- csv-engine: decode codepage and multibyte tables without global atob (bba77b9)
- csv-engine: preserve incremental UTF8 signature state (e6b80df)
- csv-engine: resolve Python codec aliases consistently (a48b586)
- csvcut: charge encoding work for every output row (9d1367d)
- csvgrep: import whitespace helper for synchronous matching (da56340)
- csvgrep: preserve emitted batches and rows before input errors (9c5e766)
- csvkit: admit plain rows after the first character (627e445)
- csvkit: bundle public codec exports with their SDK (3d8ed62)
- csvkit: complete portable number formatting defaults (c602322)
- csvkit: create worker output directory on clean builds (6704dc0)
- csvkit: normalize optional resource budgets across APIs (ab64353)
- csvkit: provide bounded in-memory SQLite by default (4a44ad7)
- csvkit: remove implicit integer argument digit limit (2b3a15d)
- csvkit: support portable grouped decimal patterns (9055b41)
- csv: reject unregistered UTF-8 signature alias (951c794)
- csv: support string and nonnull quoting modes (2b6bcc9)
- curl: spool stdin replay through retained caller storage (4261963)
- dd: reject duplicate command registration (c8b63dd)
- declare portable agent dependencies in the published bundle (d27181f)
- deps: deduplicate concurrently registered workspace entries (43f582f)
- deps: include safe-bash e2e workspace in lockfile (7ec7913)
- deps: register native shell workspace in lockfile (3dbfc06)
- design: clear previous spinner timer on restart (46838c2)
- diff3: bracket overlap conflicts and succeed for ed scripts (7d5a38d)
- diff3: continue alignment beyond costly-search threshold (7e92ba8)
- diff3: spool documents and alignment through caller storage (d86f499)
- diff: batch matrix storage and charge cells once (8bb7de7)
- diff: filter blank changes through bounded document storage (c49ab80)
- diff: release completed input inspection receipts (a141a0d)
- diff: replay regex captures through caller-backed storage (fdbe400)
- diff: route shell execution through stored documents (245a6aa)
- diff: store directory matching and ordering metadata (fbb993e)
- diff: store exclusion sources and compiled glob programs (76635e7)
- diff: stream exact brief comparisons through retained blocks (f7e49b9)
- diff: stream regex filters and function heading scans (084c8cc)
- diff: throttle later turns without starving stalled clocks (424f7df)
- docx: compile deep carrier test workers from source (3f5551f)
- docx: preserve immutability of lazy operation schemas (5a8cfd8)
- docx: remove finite XML output limit fallbacks (55db926)
- docx: resolve relocated native comment test fixture (5405479)
- docx: stream XML packing fixture payloads (6b2194b)
- dos2unix: remove unreachable synchronous conversion branches (b9c754b)
- dos2unix: remove unreachable synchronous Mac conversion branches (6eaae0e)
- du: deduplicate visited directory identities (b3e684e)
- eliminate remaining implicit Buffer dependencies in portable byte paths (87f8a2a)
- exiftool: add effect-free CLI discovery help (2612f05)
- exiftool: compact JPEG metadata and support standard tags (d8086b1)
- exiftool: keep test fixtures out of production builds (38153cf)
- exiftool: preserve text metadata and support standard JPEG tags (7cfea79)
- exiftool: remove Node dependencies from PNG fixtures (9892307)
- explorer: normalize literal Space selection and preserve pasted text (cd1ac8b)
- explorer: prevent detail cache hash collisions (e5f765b)
- expr: preserve canonical byte-valued operands (02f3b4c)
- expr: support string operations in UTF-8 locales (87c55fe)
- fd: apply base directory to child commands (d313e1d)
- fd: correct full-path matching and selection filters (9767d2c)
- fd: reject zero result limits (098f242)
- fd: tolerate directories and malformed bytes in ignore files (0cba2e7)
- ffmpeg: apply negative stream maps by input and selection order (19a4f02)
- ffmpeg: cut HLS segments at keyframes without repeated prefixes (0c5e98b)
- ffmpeg: default sine audio sources to mono (69d44f4)
- ffmpeg: enforce cumulative input limits and stream contracts (82da2e0)
- ffmpeg: inspect the declared input path for stdin (ce245f5)
- ffmpeg: preserve generated video duration metadata (046ea4a)
- ffmpeg: render static SMPTE bars with distinct bands (fefefa1)
- ffmpeg: require explicit permission to overwrite outputs (449487e)
- ffmpeg: resolve streaming manifests and emit DASH media (1dca970)
- ffprobe: align native metadata and qualify audio commands (199cb97)
- ffprobe: detect bounded media probes automatically (c9c16b0)
- ffprobe: escape metadata for text output writers (30d4c9d)
- ffprobe: preserve numeric types in flat output (e354885)
- ffprobe: probe FLAC with bounded header reads (6489d9c)
- ffprobe: probe WAV metadata through retained header reads (4a0cd91)
- ffprobe: retain automatic WAV metadata reads (62e31a3)
- ffprobe: retain FLAC tag indexes and stream metadata (669405e)
- ffprobe: retain strict MP3 metadata and tag values (31308c3)
- ffprobe: retain tags in csv compact and flat output (aee53d5)
- ffprobe: retain WAV tag indexes and stream metadata output (edbda26)
- ffprobe: stage automatic WAV streams in caller backing (18729cb)
- ffprobe: stream automatic WAV media requests (0dd0b06)
- ffprobe: stream packet rows across all output writers (98f1dd7)
- ffprobe: stream WAV metadata from sequential inputs (26cb363)
- ffprobe: stream WAV packet and frame output (0f07734)
- find: preserve byte and operation accounting in count-only output (8932c41)
- fmt: preserve fast-read checkpoints without double charging (3f2418f)
- fmt: validate input resumed at optimization checkpoints (a15b0bf)
- fold: account for owned input during output delivery (1c870a1)
- fold: default agent command to UTF-8 (d6d3647)
- frontmatter-rust: match option error wrapping (4f2ab53)
- frontmatter-rust: preserve line counter object descriptors (3614227)
- getconf: normalize system aliases and validate pathname arity (50a1253)
- gh: retain backend state across scoped filesystem views (71c53e2)
- git-rust: include native object headers in diff output (2e2357b)
- git-rust: resolve CLI ranges and protect branch deletion (6282008)
- git: attribute blame through aligned parent lines (c7745a4)
- git: defer synchronous invocations that request inherited stdin (730b04b)
- git: honor configured identities and current invocation timestamps (2a9f76a)
- git: keep binary conversion independent of ambient Buffer (81eede9)
- git: let the parsed invocation request stdin lazily (396bdb4)
- git: persist rebase replay and restore branches after recovery (52028eb)
- git: preserve literal backslashes in repository paths (d5c037e)
- git: preserve tracked snapshot paths and scope diff reads (1925a68)
- git: revert initial commits against an empty parent tree (43530e4)
- git: support diff --check whitespace validation (8e6c8a9)
- git: support history date filters (eb359b7)
- git: support log --decorate and scope repo snapshots to reduce VFS ops and memory (04c45bf)
- gpg: reject unknown options before command effects (5308e15)
- graphviz: qualify rendering parity and bound spring geometry (574a8d4)
- grep: reuse admitted input during asynchronous fallback (12af304)
- html-to-markdown: account for entity fast-path scanning (6efb4d4)
- html-to-markdown: assemble mapped hostnames in caller storage (ac2eaf1)
- html-to-markdown: bound Unicode hostname processing (b5cfa27)
- html-to-markdown: bundle immutable IDNA resources (9b3f450)
- html-to-markdown: persist rendering continuations in caller storage (027b185)
- html-to-markdown: preserve embedded BOMs in stored text (7e49997)
- html-to-markdown: spill parser tokens and ancestry to caller storage (1354ccb)
- html-to-markdown: stream destination validation and escaping (9d3ec69)
- html-to-markdown: validate destinations and bound text scanning (11f4405)
- htmlq: accept a positional input file (ab6d1e1)
- htmlq: accept dash-prefixed option values (2a4f356)
- htmlq: accept native flags and multiple selector operands (6beedc5)
- htmlq: bound repeated stored-text allocation overhead (ed6afd1)
- htmlq: combine positional selectors as a union (5d47681)
- htmlq: default partial engine limits consistently (b9b20d0)
- htmlq: keep document and selector state in caller storage (3f52ab6)
- htmlq: match native selector operand joining (61cdd93)
- htmlq: preserve caller cancellation reasons (6ecff44)
- htmlq: reject invalid node values with ownership errors (1edcdad)
- htmlq: remove every matching node and preserve output batches (9806b62)
- htmlq: resolve URL components through caller storage (1e62601)
- htmlq: store lexical tokens and large names in caller storage (058f7d1)
- htmlq: stream atomic output through retained staging (b8a9c92)
- iconv: preserve failure status after discarded input (0a9eb9a)
- image-ast: accept explicit unlimited pixel budgets (ca9e31e)
- image-ast: avoid filesystem adapters in portable bundles (a25e0eb)
- image-ast: declare generated runtime for workspace bundles (4dc66e6)
- image-ast: expose sharp through the portable entry point (61e1b14)
- image-ast: isolate decodes from mutable input and output buffers (87dfc47)
- image-ast: preserve grayscale promotion in backed CLAHE files (215604e)
- image-ast: remove obsolete Buffer compatibility remnants (d622560)
- image-ast: render unfilled SVG primitive outlines (bea167c)
- image: await stream pulls and asynchronous disposal (a4df98d)
- image: bound JPEG Huffman decoding tables (dc229bc)
- imagemagick: account cumulative input without wrapping the filesystem (72162c8)
- imagemagick: bound generated image pixel storage (d7c82d7)
- imagemagick: evaluate expressions through caller-backed pixels (ba2ad67)
- imagemagick: expand image properties in a single pass (1569cb5)
- imagemagick: honor GIF delay and montage thumbnails (4df7e80)
- imagemagick: preserve acquired input failures (3c88f0c)
- imagemagick: preserve frames in bounded tile expansion (0f67059)
- imagemagick: rasterize annotations in bounded pixel chunks (0c7be6f)
- imagemagick: rasterize SVG text elements and bound annotate overlay buffers (554e299)
- imagemagick: reject unknown images with bounded memory (f9c8c22)
- imagemagick: render montage through caller storage (69a79fd)
- imagemagick: require existing output directories (b2a7cf0)
- imagemagick: retain alpha and color matrix operations (10d225d)
- imagemagick: retain composite SDK and command execution (5482730)
- imagemagick: retain coordinate transforms in bounded spans (a7352fd)
- imagemagick: retain deferred intermediate image snapshots (b63bb24)
- imagemagick: retain drawing shapes and SVG overlays (9d9e517)
- imagemagick: retain floodfill traversal in caller backing (01adcfe)
- imagemagick: retain generated comparison label pixels (81aedb0)
- imagemagick: retain image stacks and pending scene metadata (fccda94)
- imagemagick: retain neighborhood morphology with bounded histograms (f055614)
- imagemagick: retain palette remapping and dithering state (37985ab)
- imagemagick: retain remaining conversion option paths (18866b3)
- imagemagick: retain sequence operators with bounded kernels (e044099)
- imagemagick: retain shadow and vignette processing (562acec)
- imagemagick: route mogrify through retained conversion (6746106)
- imagemagick: share bounded convolution execution (5c941e7)
- imagemagick: share bounded geometric sampling (e176d40)
- imagemagick: spool streaming inputs through caller storage (e9b0811)
- imagemagick: stream animated and numbered scene output (674b85a)
- imagemagick: stream retained text and histogram output (317988b)
- imagemagick: support -list option across magick, convert, and identify (46c62d1)
- image: preserve staging-only PDF metadata backing (c1371f8)
- image: reject unknown file resources without buffering (849eed0)
- image: retain complete HEIF format admission (c34980c)
- image: retain inline PDF font tables in supplied backing (3da7aa2)
- image: stream output through guarded symlink targets (27d2d02)
- isolate Cargo build targets by checkout (fb8affd)
- isolate query byte caches and release retained file buffers (052a4c1)
- jq: evaluate strict boolean predicates without truthiness shortcut (be4b3e7)
- jq: preserve output ownership and publication accounting (0f28a8e)
- jq: preserve strict boolean equality in file filters (9bf0b67)
- jq: preserve sync output ownership and budget precedence (d1e340d)
- jq: preserve value ownership across asynchronous fallback (bd26542)
- jq: restart declined select projection with a fresh budget (5e73b00)
- jq: stream remaining input through inputs builtin (e017209)
- jq: support --version, -V, --help, and -h flags (6c16bb9)
- jq: support recursive scoped filters and date builtins (ee2c449)
- jq: support unary filters, paths, and command environment (f40d950)
- keep source-linked Safe Bash on immutable build snapshots (a62233f)
- less: bound cumulative pager input and file reads (7e798c2)
- less: preserve binary output and support regex searches (f75ef25)
- lint: preserve guarded snapshots and enforce cached input limits (d592a07)
- llm: admit key stdin before buffering (6cabf84)
- llm: bound attachment reads by remaining shell input (ae83d93)
- llm: count raw JSON rows before embedding conversion (39fe81d)
- llm: defer chat template parameter validation (4ba3706)
- llm: discover models with tool support (694d048)
- llm: discover source-only embedding providers (5a84f97)
- llm: honor eager root option ordering (b7e97f3)
- llm: initialize history within caller transactions (066c191)
- llm: keep conversation history in the host (6de2b40)
- llm: match native chat model diagnostics (d4a2c67)
- llm: match native collection command parsing (effac86)
- llm: match native configuration parsing and key prompts (a56b417)
- llm: match native live chat conversation replay (deaf929)
- llm: match prompt argument arity and short option clusters (62ecea7)
- llm: omit empty text from attachment-only messages (40d57c3)
- llm: preserve and dispose historical attachment sources (94e786c)
- llm: preserve arbitrary integer chain limits (b22dc5e)
- llm: preserve chat fragment input ordering (41aa2dd)
- llm: preserve declared dictionary option ordering (e1968ce)
- llm: preserve JSONL line encodings and blank lines (674f202)
- llm: preserve native chat option lifecycle (7544871)
- llm: preserve native fragment plugin output (30314cf)
- llm: preserve native SQLite assets in public bundles (76c6910)
- llm: preserve raw JSON code point identity (e3d4c7e)
- llm: preserve root and prompt option separator routing (40dcefb)
- llm: preserve shell input budget accounting (7ebddab)
- llm: preserve stored JSON schema display semantics (582fe56)
- llm: preserve Unicode ID failure timing in batch imports (fcd9344)
- llm: preserve unlimited configuration reads with input admission (d747d16)
- llm: remove SQLite retention from JSON diagnostics (bdd3526)
- llm: reserve native descriptor capacity before opening files (5605361)
- llm: restore output types in model discovery (997ebc9)
- llm: retain root and provider option export parity (cbf132a)
- llm: retain spool ownership across sequential replays (256d439)
- llm: reuse checksum engine for streamed identities (43d68db)
- llm: separate streamed JSON payload and index limits (9b117a5)
- llm: share native leaf option parsing (9ddb7a3)
- llm: stream embedding migration record rebuilds (59b02c8)
- llm: suggest native chat option matches (1da5cdb)
- llm: validate chat options after eager help (26380ea)
- llm: yield during empty chain responses (0617086)
- llm: yield for cancellation on empty tokenizer chunks (a80675a)
- markdown-reader: support portable Unicode document reading (7ddb177)
- markdown: bound source-position and tab-expansion scratch (fdc1495)
- mcp-oauth-rust: align unlimited callback and transaction waits (21fd50f)
- mcp-oauth-rust: allow confidential consent preparation without secrets (5730198)
- mcp-oauth-rust: build native contract test dependencies (4917711)
- mcp-oauth-rust: match Web authorization state decoding (fefa5b9)
- mcp-oauth-rust: preserve refresh credentials and authorization policy (e1222ec)
- mcp-oauth-rust: reject manual redirect responses (e29a5a3)
- mcp-oauth-rust: retain refresh tokens when replacements are omitted (ca72e2f)
- mcp-oauth-rust: support durable resumable authorization (cac7572)
- mcp-oauth: make shared authorization crypto portable (ffda562)
- mcp-oauth: persist explicitly empty token scopes (425d524)
- mcp-oauth: prepare consent without reading exchange secrets (163b31b)
- mcp-oauth: reject manual redirect responses immediately (300e268)
- mcp-oauth: retain refresh tokens when providers omit rotation (705ccd8)
- mcp-oauth: support hosted callbacks and empty scope grants (8c06217)
- mcp-protocol-rust: rebuild unverified native artifacts (badd0e3)
- mcp-protocol-rust: ship public error declarations (ea5a0bf)
- mcp-rust: share protocol errors across HTTP and stdio (a7625be)
- mcp: complete standalone OAuth server imports (4e9d29e)
- mcp: default authentication request timeout to unlimited (13558de)
- mcp: honor pinned OAuth issuers in discovery (2a8cec5)
- mcp: make command factories portable without Node compatibility (7dd84d0)
- mcp: preserve OAuth discovery failure semantics (6c36163)
- mcp: preserve per-RPC timeouts with lifecycle observers (82e2d29)
- mcp: preserve typed OAuth metadata discovery failures (e47cee0)
- mcp: resolve legacy package entries in neutral build (394b818)
- mcp: retire discovery requests before legacy initialization (32192d3)
- mcp: select portable exports from the workspace root (1e95be9)
- mcp: support unlimited request and credential deadlines (a6bfd46)
- mdq: exclude section titles from descendant selection (90222bb)
- mdq: reject duplicate footnote definitions (c5754dc)
- mdq: report trailing code selector diagnostics precisely (f399fd9)
- media: bound MP3 metadata probes and record iteration (088aa11)
- media: bound remote input discovery with streaming reads (4b8b78a)
- media: build portable command entrypoints for workerd (039db60)
- media: decode H.264 and encode Ogg with portable codecs (1994e4f)
- media: default optional limits to infinity (e9d2b40)
- media: import portable filesystem stream reader (eb21099)
- media: make asset verification portable with safe-fs and byte arrays (ccabc75)
- media: preserve animated GIF frames and timing (52a9256)
- media: skip PCM channel decoding when probing WAV (09b6e39)
- media: slice and concatenate decoded audio waveforms (05ffe39)
- memory: preserve portable workspace output during publication (d34c745)
- mkdir: avoid partial multi-operand fast-path mutations (d7bfd83)
- mktemp: initialize default temporary directory and accept BSD prefixes (a385959)
- mmdc: accept PDF fit and standard input options (7fc24f1)
- mmdc: account for intermediate PDF image encoding (fc56aab)
- mmdc: apply link style colors to edge labels (256505a)
- mmdc: load the PDF engine only for PDF rendering (3ac9997)
- mmdc: paint participant boxes behind lifelines (50344ff)
- mmdc: parse spaced functional participant box colors (627ac5b)
- mmdc: render source titles and keep pie ratios finite (7e4a528)
- mmdc: retain every named sequence link (01776d2)
- mp4-ast: derive Matroska timing and support full EBML sizes (823708d)
- mp4-ast: encode playable lossless FLAC and Ogg audio (5551fe4)
- mp4-ast: preserve trim presentation and handle empty intervals (2d76886)
- mp4-ast: report PCM WAV codec and sample metadata accurately (ec5cee0)
- native: preserve schema compiler messages in server consumers (9fee198)
- native: replace cached bindings atomically (8e98e99)
- network: align portable defaults and curl header semantics (e2546e8)
- nl: admit section delimiter bytes before batching (fb621fd)
- node: admit immutable filesystem error brands without getters (1a1a7cd)
- node: serialize branded filesystem errors safely (1f81383)
- numfmt: account for every field in the fast path (76704bb)
- oauth: keep default authorization callback waits unlimited (c718398)
- oauth: pin advertised issuer before metadata probes (c4e128e)
- od: align mixed formats and printable trailers (c135fd5)
- od: retain buffered rows and continue unreadable operands (2b2b0df)
- od: round incompatible widths and remove output type cap (a45b8da)
- od: use format alignment for invalid widths (9f961fd)
- od: validate input files for zero byte counts (e593b77)
- office-package: accept stored compression hints by profile (650d1e4)
- op: honor configurable input and binding limits (20f95c6)
- op: omit unbounded filesystem read limits (b191cd8)
- op: release binding listeners and support frozen signals (57e5249)
- op: remove implicit binding request and deadline limits (cc230d7)
- package-lint: admit declared XML type modules (1636ce2)
- package-lint: admit portable SafeJS core exports (571733f)
- package-lint: enforce command workspace identity (708714e)
- package-lint: recognize destructured Buffer property keys (6ee5de4)
- package-lint: scan deeply nested bundles without recursion (7b09e6d)
- package-lint: traverse deep minified runtime expressions iteratively (1ab3dfc)
- packaging: await zstd inside publication verification (9bff8bb)
- packaging: bundle portable auth dependencies in Toolcraft and HTTP MCP (7ede221)
- packaging: bundle terminal text in toolcraft distributions (bccaef2)
- packaging: canonicalize extracted filesystem imports (660a456)
- packaging: declare bidi runtime dependency (c270d33)
- packaging: declare decimal runtime dependency (c1e05e3)
- packaging: distinguish relative asset URLs from dependencies (39a4dd9)
- packaging: expose portable S3 HTTP transport (4e8bfb9)
- packaging: include licenses for PDF page commands (292b623)
- packaging: include node command workspace license (b74e01a)
- packaging: include XML parser in filesystem consumer bundles (7f0af38)
- packaging: preserve blocked companion export conditions (9076d47)
- packaging: preserve concurrent portable runtime routes (6d40cd9)
- packaging: preserve extracted command portability and exports (daf7237)
- packaging: preserve retired Graphviz root routes (dcf2814)
- packaging: resolve image exports through the shipped PDF entry (01e84be)
- packaging: resolve portable runtime imports in their owning packages (0a7903f)
- packaging: select portable private dependency aliases (bed6196)
- packaging: share public companion engines across command bundles (836e287)
- packaging: share the browser shell runtime with bc (c4fba7d)
- packaging: verify archives in the bundled provider filesystem (0b2c8e1)
- packaging: verify the Node shell subclass contract (db9daba)
- pandoc: accept html5 as an input format (7e9a604)
- pandoc: accept Markdown compatibility format names (8ea2a12)
- pandoc: add Lua walk_inline/walk_block, YAML frontmatter parsing, and DOCX run coalescing (54e6cee)
- pandoc: admit filter writes before yielding (9f6e0e2)
- pandoc: advance past empty MediaWiki heading markers (b23cb59)
- pandoc: allow configurable YAML defaults aliases (a46c72a)
- pandoc: avoid repeated EPUB fallback traversal (de06414)
- pandoc: bound EPUB mimetype validation reads (9496d5e)
- pandoc: bound Lua source copies and yield during compilation (a33f536)
- pandoc: bound owned copies of producer chunks (d604c2e)
- pandoc: bound URL port and opaque host admission (52fd117)
- pandoc: close cancelled resource iterators directly (4b6d60c)
- pandoc: close filter iterators on reader factory cancellation (6e58313)
- pandoc: complete DOCX inline support and run coalescing (8b944d6)
- pandoc: default CLI conversions to lossy projection (db17237)
- pandoc: default EPUB publication metadata without yes (2f64779)
- pandoc: enroll JSON input cleanup before iterator creation (23959ee)
- pandoc: escape RST punctuation only where syntax requires it (3cc34c8)
- pandoc: expose imageResources: embed on pptx format descriptor and allow aligned tables in lossy CLI mode (cab4e35)
- pandoc: include office mocks in test typecheck (6b6c6e6)
- pandoc: infer GFM for md file extensions (5608feb)
- pandoc: interrupt pending chunk destination writes (d470196)
- pandoc: keep delimited font budgets on retained paths (32e78eb)
- pandoc: keep finite shared budgets on retained conversion paths (1fe8b5d)
- pandoc: own buffered Lua source before yielding (909065b)
- pandoc: own EPUB iterators before factory cancellation (4f50503)
- pandoc: own filesystem resource streams before cancellation (e962b2e)
- pandoc: preserve archive budgets in retained conversions (5690f0a)
- pandoc: preserve DOCX inline code and literal whitespace (923ff69)
- pandoc: preserve Fengari assertions in portable runtime (b9ac188)
- pandoc: preserve locality for retained Lua integer keys (60f464b)
- pandoc: preserve Lua enum and sequence semantics (580e304)
- pandoc: preserve Lua reader method compatibility (dca4fbb)
- pandoc: preserve resource budgets in retained conversions (102e8fa)
- pandoc: preserve retained EPUB budget diagnostics (286829e)
- pandoc: preserve retained resource semantics and identity (3ed821a)
- pandoc: preserve rich text and links in PPTX tables (37b3f22)
- pandoc: preserve streamed filter budget accounting (34bbef6)
- pandoc: preserve streamed filter byte quotas (9c96f00)
- pandoc: preserve task states across writers and infer uppercase suffixes (d841ecb)
- pandoc: preserve typed metadata validation order (a54c5b1)
- pandoc: propagate cancellation to citeproc resource readers (78b7bb8)
- pandoc: reject file credentials before IDNA collection (11a34f1)
- pandoc: reject host noncharacters during bounded decoding (1693704)
- pandoc: reject malformed Unicode hosts with bounded decoding (1369992)
- pandoc: reject non-enumerable AST properties before validation (5d87f22)
- pandoc: retain backed JSON error locations for later object keys (1e8bf36)
- pandoc: retain byte quotas through document transforms (44789fc)
- pandoc: retain byte quotas with writer options (2655f6e)
- pandoc: retain CommonMark image source origins (8b5d1f2)
- pandoc: retain CommonMark reference budgets (6a383f2)
- pandoc: retain CommonMark writer byte budgets (a4f5557)
- pandoc: retain conversions with finite font budgets (f5d1a3c)
- pandoc: retain conversions with inactive format budgets (f0392a8)
- pandoc: retain conversions with resource search paths (ecc7f5a)
- pandoc: retain delimited image and archive budgets (26529d3)
- pandoc: retain delimited reader byte budgets (0b5ddb7)
- pandoc: retain delimited reference budgets (282546a)
- pandoc: retain embedded HTML resource byte quotas (1cb46e8)
- pandoc: retain file-scope MediaWiki documents and origins (489ae32)
- pandoc: retain finite attribute budgets (d3c15b1)
- pandoc: retain finite depth budgets (eac9451)
- pandoc: retain finite node budgets (32fb8ad)
- pandoc: retain finite table cell budgets (0fb1f6e)
- pandoc: retain finite table reader budgets (28ccbb1)
- pandoc: retain finite text budgets (323c8fe)
- pandoc: retain GFM reference budgets (3b75478)
- pandoc: retain GFM table byte budgets (fc86b24)
- pandoc: retain HTML reference budgets (597ce0b)
- pandoc: retain HTML writer byte budgets (b69edfa)
- pandoc: retain image resource reference budgets (6a63fc1)
- pandoc: retain joined MediaWiki operands in caller storage (25e5681)
- pandoc: retain JSON byte-budget accounting (0e51c0d)
- pandoc: retain JSON conversions with image budgets (b45da07)
- pandoc: retain JSON filter reference budgets (9ddb355)
- pandoc: retain JSON line-ending reference budgets (cc3f828)
- pandoc: retain JSON reference budgets (2eb05af)
- pandoc: retain LaTeX reference budgets (6ead74a)
- pandoc: retain LaTeX writer byte budgets (dd6f439)
- pandoc: retain long Lua diagnostic source names (1d149a5)
- pandoc: retain metadata byte quotas in caller storage (0b27450)
- pandoc: retain metadata reference budgets (5b8f12b)
- pandoc: retain ODT reference budgets (dc8d2d3)
- pandoc: retain ODT writer byte budgets (38b814e)
- pandoc: retain plain writer byte budgets (a905601)
- pandoc: retain plain writer reference budgets (d6cc364)
- pandoc: retain reference-limited document transforms (71dae5a)
- pandoc: retain remaining writer option reference budgets (35f090d)
- pandoc: retain RST reference budgets (ba2a864)
- pandoc: retain RST writer byte budgets (96c42a5)
- pandoc: retain RTF conversion with finite resource budgets (780d30b)
- pandoc: retain RTF output reference budgets (9ac5111)
- pandoc: retain RTF reader byte budgets (421322e)
- pandoc: retain RTF reference budgets (131d5c6)
- pandoc: retain RTF resource search path conversions (d969e7c)
- pandoc: retain RTF writer and picture byte budgets (a29ad68)
- pandoc: retain streaming with table and output limits (8624fcf)
- pandoc: retain template and include byte quotas (9afc355)
- pandoc: retain template reference budgets (65806e3)
- pandoc: retain zero-input filter conversions in caller storage (83a1a67)
- pandoc: retire retained storage before output commit (0ba1582)
- pandoc: scan EPUB control tokens with bounded state (5845198)
- pandoc: scan opaque image origins without whole URI allocation (65d2032)
- pandoc: scan URL credentials and paths in bounded memory (77c2d95)
- pandoc: stabilize encoded host admission (0409756)
- pandoc: stop cancelled Lua filters before reader acquisition (6a0b797)
- pandoc: stop cancelled Lua readers before first pull (ade662d)
- pandoc: stream conversions with finite include budgets (3f63fdb)
- pandoc: stream files through retained filesystem reads (092edb1)
- pandoc: stream filter interpreter detection (0a6a9e9)
- pandoc: stream percent-encoded ASCII host admission (4004412)
- pandoc: support --bibliography, mediawiki format, markdown extensions, and multi-image DOCX/EPUB embedding (6b70303)
- pandoc: support markdown suffixes and text writer options (6df706b)
- pandoc: support PDF/PPTX image embedding, slide pagination, and pandoc.List Lua methods (4ef4545)
- pandoc: support standard Markdown in Office and PDF output (3388c4c)
- pandoc: use Markdown for stdin and extensionless inputs (fccca63)
- pandoc: validate ASCII image hosts with bounded state (9234dff)
- pandoc: yield Lua execution for caller cancellation (b48d7a1)
- patch: bound normal and context coordinate parsing (5265957)
- patch: omit unsupported staging flags and define receipt ownership (82a6983)
- patch: parse long body lines as stored byte spans (ed205d6)
- patch: process targets through bounded caller storage (a4be65d)
- patch: replay stored hunk descriptors and reversal views (b5e3d2a)
- patch: restore bounded trusted staging (1656d39)
- patch: restore trusted host publication (0da0e27)
- patch: retain inspected patch input paths (9bc45e1)
- patch: retain optional owned staging writers (3bcc1b8)
- patch: scan unified coordinates with bounded state (391f2cf)
- patch: share bounded document caches across targets (448166f)
- patch: spool format conversion and replay context sides (7ae8c11)
- patch: spool rejects and status through caller storage (453c587)
- patch: stage input and replay indexed parser lines (832bb11)
- patch: store hunk indexes and replay change ranges (276cef3)
- patch: store hunk outcomes and replay status decisions (962251a)
- patch: store parsed hunk bodies and replay records (2bac175)
- patch: stream hunk sections through parsing and rejects (f4a773f)
- patch: stream standard output destinations (250b356)
- patch: support conditional staging with atomic ancestry (5ff4007)
- pdf-ast: bound table coordinate aggregation (79d8c8d)
- pdf-ast: decode fax rows until end of stream by default (578bcc8)
- pdf-ast: keep font paths at Float32 precision (11f8e1b)
- pdf-ast: make depth budgets opt-in and enforce writer quotas (8984da1)
- pdf-ast: preserve inherited media box origins when copying pages (0b36d4f)
- pdf-ast: preserve shared empty decoder buffers (579f739)
- pdf: admit CFF outline work and bound cached paths (2be2641)
- pdf: admit CFF parser allocations before expansion (2932258)
- pdf: admit codec state to image owners before allocation (b0a0d09)
- pdf: admit expanded font mappings before allocation (ffd8b24)
- pdf: admit mesh geometry and shading surfaces before allocation (38e54e1)
- pdf: admit TrueType parser and outline allocations (6bab78b)
- pdf: admit Type1 parser and recursive conversion allocations (3930c82)
- pdf: allow timer cancellation during stored record processing (af88b27)
- pdf: apply rotations before materializing page inheritance (06db748)
- pdf: back annotation destination traversal cursors (394937b)
- pdf: back deep source parser frames (fab4418)
- pdf: back embedded glyph operands with caller storage (2eee829)
- pdf: back inline dash arrays by dictionary path (8a49d86)
- pdf: back JBIG2 dictionary indexes with bounded lookup state (5462580)
- pdf: back JBIG2 text canvases with packed caller storage (f867f97)
- pdf: back JPEG 2000 arithmetic bit models with caller storage (a097b8d)
- pdf: back JPEG 2000 codeblock segment metadata (f3477ad)
- pdf: back JPEG 2000 precinct trees with caller storage (c0d0b58)
- pdf: back JPEG 2000 resolution metadata with bounded caches (6f35e84)
- pdf: back JPEG 2000 wavelet and sample planes with caller storage (277ad4a)
- pdf: back named destination traversal state (4fdb1d4)
- pdf: back named replacement text in image file adapters (a3abc3e)
- pdf: back native JPEG coefficient planes with caller storage (3a25f5d)
- pdf: back optional-content layer membership indexes (0969597)
- pdf: back pending page traversal cursors (a3335f0)
- pdf: back persistent clips and text clip geometry with caller storage (9262ff1)
- pdf: back raster image pixels with caller storage (f2192cf)
- pdf: back rendering resource maps by dictionary path (10fa3d4)
- pdf: back XObject and marked-content resource maps (1a15ad1)
- pdf: bound device mask backdrop reads (34038ee)
- pdf: bound fill and clip raster scratch (d89dbfd)
- pdf: bound indirect filter reference traversal (922afdb)
- pdf: bound indirect stream length traversal (1bb1c9a)
- pdf: bound inherited reference membership (3d729db)
- pdf: bound retained numeric token spelling (ee54034)
- pdf: bound unknown keyword spelling (0ddc880)
- pdf: decode JBIG2 from bounded source ranges (209476f)
- pdf: decode JPEG 2000 tiles through caller-backed indexes (146214e)
- pdf: decode native JPEG input through bounded ranges (589a953)
- pdf: decode text strings with bounded scratch (0c9ddb0)
- pdf: defer unused resource definitions during parsing (39044e0)
- pdfdetach: recognize existing output directories (a33ffba)
- pdf: execute retained PostScript from caller-backed instructions (9ce5b51)
- pdfimages: clarify required extraction operands (bd4ba59)
- pdfimages: filter image dimensions and avoid help input reads (970b100)
- pdfinfo: avoid reading input for companion help flags (a6ffa83)
- pdfinfo: keep help independent of byte inspection (9a6cdef)
- pdfinfo: match Poppler field padding and box labels (48ab5a4)
- pdfinfo: preserve stdin when required operands are missing (2a86d9f)
- pdfinfo: provision retained command scratch directories (f6cdd33)
- pdfinfo: validate retained inspection before publishing output (2526b32)
- pdf: isolate standard font allocation owners (a02c44b)
- pdf: keep image readers within Worker budget (c91d9bd)
- pdf: parse CFF programs through caller-backed source views (797bf95)
- pdf: parse retained CMap sources incrementally (7211f73)
- pdf: parse Type1 fonts through caller-backed storage (3d54080)
- pdf: preserve arbitrary font allocation rejection values (926360e)
- pdf: preserve backing context across resource references (b3d687c)
- pdf: preserve backing during stream object resolution (293a789)
- pdf: preserve backing failures through bootstrap recovery (e09a75d)
- pdf: preserve backing for nested function values (96c514d)
- pdf: preserve caller-backed values in mutable writes (1bcdf77)
- pdf: preserve decrypted retained stream dictionaries (fb0ac8e)
- pdf: preserve explicit labels for retained Type1 glyphs (c55809a)
- pdf: preserve font resource names during dictionary backing (323f217)
- pdf: preserve linearized layout in retained saves (d7e6a24)
- pdf: preserve long CFF operand runs in streamed outlines (a57c416)
- pdf: preserve retained page box inheritance (9327d49)
- pdf: preserve source page state across retained copies (0efba83)
- pdf: preserve string syntax in mutable snapshots (7caff2c)
- pdf: process retained JBIG2 segments with bounded scratch (7d09844)
- pdf: read Form metadata from caller backing (b73b186)
- pdf: read graphics-state array prefixes from backing (d2d0c5d)
- pdf: read image metadata from caller backing (24308f5)
- pdf: read native JPEG 2000 input through bounded ranges (6cd3c3f)
- pdf: read selected font fields from caller backing (b261365)
- pdf: read selected soft-mask fields from backing (3fde8b7)
- pdf: recover invalid unencrypted catalog references (0706f3a)
- pdf: render TrueType fonts through caller-backed ranges (135b5d0)
- pdf: replay composite captures from caller storage (f4f80dc)
- pdf: resolve CID glyph maps through caller-backed ranges (9b7071e)
- pdf: resolve graphics-state fields from caller backing (2f31b44)
- pdf: retain arithmetic glyph pixels in caller storage (e7d1c1a)
- pdf: retain backing for transfer function metadata (91e3944)
- pdf: retain CMap tables in caller-backed range trees (8583f4d)
- pdf: retain content array elements in caller storage (9ae653e)
- pdf: retain custom and symbol-ID Huffman tables (8e2d323)
- pdf: retain dash patterns in caller backing (6615ba7)
- pdf: retain font dictionary entries in caller backing (92b3ee8)
- pdf: retain font encoding declarations in caller backing (8685afe)
- pdf: retain font width records in caller storage (9b5b285)
- pdf: retain halftone planes and shared pattern pixels (3022405)
- pdf: retain Huffman symbols as shared packed bitmap views (bbb5f08)
- pdf: retain image tint tables through row conversion (b86201d)
- pdf: retain inline replacement text through evaluation (c71e962)
- pdf: retain JBIG2 symbol tables in caller storage (ed7b3bd)
- pdf: retain JPEG 2000 codeblocks in caller storage (27fce71)
- pdf: retain JPEG 2000 coding parameters and overrides (f2a075d)
- pdf: retain JPEG 2000 component and iterator metadata (f845cd2)
- pdf: retain JPEG 2000 precinct metadata in caller storage (6139065)
- pdf: retain natural runs in short text sorts (ae7c04c)
- pdf: retain packed JBIG2 pages in caller storage (0d6cf82)
- pdf: retain parser and evaluated paths in caller storage (ca84b89)
- pdf: retain refined symbols with bounded coding rows (33a37d6)
- pdf: retain selected source strings in caller backing (458f9da)
- pdf: sample color functions through caller-backed ranges (aec55e9)
- pdf: scan cached token bytes without generator dispatch (c6c8e06)
- pdf: skip unused backed resource values during lookup (268b34a)
- pdf: spill nested evaluation frames to caller storage (403ff1d)
- pdf: spill stroke points and stream dash expansion (d418006)
- pdf: stream arithmetic regions with bounded row windows (603a2db)
- pdf: stream backed replacement text through raw formatting (1c7bebc)
- pdf: stream captured metadata without JSON expansion (d089524)
- pdf: stream compressed JPEG 2000 codeblocks (efff687)
- pdf: stream embedded font outlines into caller backing (33416ce)
- pdf: stream extended JBIG2 segment references (75dfec6)
- pdf: stream generated stroke outlines and raster edges (19bc1d3)
- pdf: stream immediate MMR regions into backed pages (48a6f2b)
- pdf: stream metadata during retained page copying (a6b97f7)
- pdf: stream packet membership and back JPEG 2000 queues (a5dffbc)
- pdf: stream page content and annotation lists (675319b)
- pdf: stream projected stroke subpaths (3699b8a)
- pdf: stream retained text tokens through caller backing (6f4e6c7)
- pdf: stream source font width arrays through caller backing (37602c6)
- pdf: stream text extraction metadata fields (b0fc214)
- pdf: support retained image adapters and scoped staging (81f1e3e)
- pdftk: bound integer update parsing (e75b6c0)
- pdftk: bound page label style parsing (b5c1799)
- pdftk: index streamed metadata keys in caller storage (2529be4)
- pdftk: parse single-letter handle rotations (45fe4f6)
- pdftk: read implicit stdin operation operands (bb6ed6a)
- pdftk: retain streamed metadata update values (affde41)
- pdftk: retain streamed page label prefixes (acc368d)
- pdftk: stream bookmark update lines and numeric entities (b77459c)
- pdftk: stream geometry update numbers (ca4ddd9)
- pdftocairo: avoid reading input for help and version (262ff34)
- pdftohtml: keep image outputs beside document files (6534c1f)
- pdftoppm: handle help and version before reading input (7b4505f)
- pdftotext: charge retained input limits only to source bytes (78f51ad)
- pdftotext: match Poppler text and bounding box output (1728718)
- pdftotext: preserve retained backend failure identity (3434a44)
- pdftotext: write selected Latin1 and UCS-2 output bytes (e096dc5)
- pdf: traverse page children through caller backing (618abe7)
- pdf: traverse xref ranges through caller backing (e9af2fb)
- pdf: validate JSON values before decoded-name replacement (4c8ef17)
- playground: include dependencies in manual browser chunks (5408186)
Release notes shortened to fit GitHub's limit. Full commit history.