Skip to content

v0.6.0

Latest

Choose a tag to compare

@github-actions github-actions released this 23 Aug 20:34
· 1 commit to main since this release
64dcfda

What's Changed

  • ci: isolate Docker image builders (#683) (64dcfda)
  • perf(ui): localize monitor slow-input edge alerts (#680) (a592a15)
  • fix(ui): disable microphone Opus DTX (#682) (6b39c77)
  • feat(moq)!: migrate MoQ stack to moq-native 0.19 / hang 0.20 / moq-net + @moq/* majors (#675) (717444b)
  • ci: poll Codecov check runs in merge gate (#678) (a8e8c32)
  • feat(nodes): support NV12 ↔ I420 in video::pixel_convert (#672) (3a2021d)
  • fix(examples/web-capture): derive mseReadyTimeout from --load-timeout-secs (#673) (535178b)
  • chore(deps): compatible dependency refresh for v0.6.0 (#674) (613c0e2)
  • fix(plugins): enable WebGL2 in servo so animated pages actually animate (#671) (946e711)
  • Update testing-web-capture skill: live-cast URL tuning and WebM frame extraction (#669) (b5f53ac)
  • chore(registry): publish marketplace registry update (#670) (e152206)
  • fix(plugins): servo host logging, bounded reply waits, first-frame instrumentation (#668) (e6c99d6)
  • fix(plugins): release servo first-frame gate shortly after first paint (#661) (aea6b69)
  • chore(registry): publish marketplace registry update (#660) (12aa7bb)
  • feat(ui): surface plugin version/description and token status in admin UI (#656) (0eab134)
  • Update web-capture testing skill for servo plugin ≥0.2.2 (#659) (44463c8)
  • fix(plugins): hold servo frame emission until initial page load (#658) (71cad8e)
  • chore(registry): publish marketplace registry update (#657) (c6661f9)
  • feat(examples): add web-capture gateway (#631) (39a2280)
  • chore(registry): publish marketplace registry update (#655) (2f9c049)
  • feat(plugins): bump servo to 0.4.0 and add auth config for private pages (#630) (3e8ec67)
  • chore(registry): publish marketplace registry update (#653) (eb6ad8c)
  • fix(ci): use existing sherpa-onnx CUDA GPU archive name (#652) (89f3673)
  • feat(marketplace): GPU (CUDA) plugin bundle variants + bundle-based demo image (#638) (8abd958)
  • fix(nodes): vp9 bindgen (#650) (40b5b2c)
  • chore(deps): fix cargo-deny advisory failures (#649) (ad22502)
  • feat(server): make telemetry max_text_chars configurable (#626) (5faed28)
  • feat(transport): add fMP4 support to http_mse for Safari/iOS playback (#637) (65293ce)
  • fix(nodes): isolate C libdav1d symbols to avoid rav1d link collision (#636) (2359239)
  • feat(auth): allow non-admin user role to use HTTP sink/IO nodes (#634) (589fc7b)
  • fix: resolve file-security paths against asset_root (#629) (2942c05)
  • feat(plugins): add configurable WASM per-call timeout (#625) (c783f68)
  • fix(engine): clean up orphaned pending edges and guard tunes on terminal nodes (#628) (3b47929)
  • fix(server): reject kid-less JWTs and cover reload-keys auth paths (#624) (af6845d)
  • fix(marketplace): atomic archive write and case-insensitive suffix match (#623) (1e4d194)
  • refactor(nodes): factor AV1 codec config into a single source of truth (#627) (5bf1afa)
  • chore(deps): update Rust and Bun dependencies (#620) (429d916)
  • ci(skit): drop debuginfo in Test job to fix disk exhaustion (#622) (e39a970)
  • fix #539: surface SVT-AV1 EOS-flush watchdog trip as node failure (#615) (7c399b9)
  • fix #604: load config before the first MoQ derive on cold load (#614) (cadb70e)
  • fix #611: emit valid AV1 RFC 6381 codec string for MP4 output (#616) (c49a064)
  • fix #607: reconcile dynamic-engine node lifecycle + terminal-state guarantees (#617) (f42049e)
  • fix: bump quinn-proto to 0.11.15 for RUSTSEC-2026-0185 (#618) (7f1ee6f)
  • fix(sessions): unify add-node batch path to confirmed-add semantics (#603) (c3642e3)
  • fix(marketplace): support .tar.zst in HF model uploader (#601) (71653fb)
  • fix(nodes): bound SVT-AV1 flush + codec loop against deadlock (#602) (264dbc3)
  • fix(nodes): emit valid AV1 RFC 6381 codec string for WebM output (#610) (9dab223)
  • fix(deps): bump wasmtime-wasi 44.0.2 -> 44.0.3 (RUSTSEC-2026-0182) (#608) (b965eb6)
  • fix(plugin-native): emit Failed when worker dies, not just on timeout (#600) (4636c17)
  • fix(ui): re-derive MoQ settings on direct Stream view YAML edits (#599) (a834650)
  • fix(skit): validate ensure_dir_under target before creating it (#598) (7e7bd26)
  • docs: regenerate config reference for [server.metrics] block (#597) (520e67d)
  • test(marketplace): raise installer coverage to >=80% (#594) (03ca42a)
  • test(moq): cover validate_moq_auth gate and plugin_paths helpers (#592) (4a7121b)
  • test(marketplace): cover SSRF/origin policy and registry cache paths (#591) (4b79eac)
  • test(mp4): cover packet classification, accumulation, and flush helpers (#590) (595f208)
  • fix(moq): start every video track's first group on a keyframe (#595) (9027423)
  • fix(ui): re-enable React Compiler in the real Vite build + CI guard (#589) (5e61edf)
  • fix(marketplace): correct nllb/parakeet model packaging (#565) (c4146e1)
  • fix(plugin-wasm): interrupt runaway guests with a per-call epoch deadline (#569) (f6e220f)
  • refactor(ui): remove manual memoization subsumed by React Compiler (#587) (b39cdcc)
  • fix(ui): resolve remaining react-doctor bug-class and a11y findings (#586) (7e39733)
  • fix(ui): correct double-escaped regexes in pipeline draft restoration (#585) (52869bc)
  • fix(ui): resolve React Compiler bailouts in pipeline hooks and panes (#582) (1b95ca2)
  • fix(ui): resolve React Compiler bailouts in shared components (#581) (65cf667)
  • ci(ui): add react-doctor as diff-gated check (#579) (b50b6be)
  • fix(ui): resolve React Compiler bailouts in views and plugins UI (#580) (f24533e)
  • fix(ui): resolve React Compiler bailouts in MonitorView and LogsView (#576) (c023238)
  • fix(ui): resolve React Compiler bailouts in DesignView and compositor hooks (#575) (d118551)
  • test(ui): run vitest with React Compiler to match production builds (#574) (0c2b59d)
  • ci(skit): fix "No space left on device" flakiness in Test and Coverage jobs (#573) (76f4cd6)
  • fix(docker): ship demo-image plugins as directory bundles (#567) (02dfa6f)
  • fix(moq): use catalog-advertised codecs for subscriber pins; terminal error on post-init codec mismatch (#566) (0a8cf69)
  • fix(engine): prune pending connections when removing a live node (#564) (20ccf83)
  • fix(plugin-native): unify worker join/detach policy across run_source and run_processor (#563) (569c765)
  • fix(api): close YAML compiler validation gaps for cycles and params (#562) (69b55af)
  • docs: surface hosted speech gateway demo for newcomers (#541) (f03a7e8)
  • docs: local observability stack sample, guide, and skill (#552) (4bff71f)
  • feat(observability): plugin/ML dashboard row + standalone speech-gateway dashboard (#547) (9c1009d)
  • test(nodes): cover moq peer async actor/loop methods (#560) (efd8469)
  • test(nodes): raise moq pull.rs coverage with in-process tests (#559) (2737a4c)
  • test(nodes): raise coverage for moq push/registration, constants, and http pull (#558) (b2505df)
  • test(nodes): cover RTMP packet-processing and connection-driving paths (#557) (9501b20)
  • fix(ci): build nightly skit in release to avoid slow SW AV1 timeout (#561) (5238ad2)
  • feat(metrics): source bounded metric labels from pipeline attributes (#545) (23ca7cf)
  • feat(speech-gateway): expose Prometheus metrics (#546) (d09fa61)
  • test(samples): guard dynamic samples with parse/compile + node-availability checks (#543) (6abe3ba)
  • test(pipelines): add CI validation for official oneshot samples (#542) (78f8332)
  • fix(ui): route unfragmented MP4 to blob playback in Convert View (#538) (ca6c476)
  • fix(nodes): bound SVT-AV1 EOS flush to prevent oneshot hang (#537) (5077178)
  • fix(nodes): stream File-mode container finalize in bounded chunks (#536) (a3b480b)
  • fix(ui): derive compositor output pixel_format from output_format param (#535) (086eed1)
  • fix(moq): drop 5s catalog settle wait + dynamic catalog watch for MoqPullNode (#534) (354e7ab)
  • fix(plugin-wasm): reorder namespaced_kind checks and disable relaxed-simd when simd off (#513) (4f0840f)
  • fix(nodes): preserve dot in event type filter prefix matching (#516) (2f77388)
  • refactor(rtmp): merge duplicate onStatus arms and deduplicate test helpers (#525) (20b24a9)
  • fix(api): drop stale publish-no-media rule and pinning test (#515) (322c305)
  • fix(rtmp): treat non-Start onStatus as rejection during PublishPending (#517) (f96788c)
  • refactor(assets): replace CWD-relative paths with configurable asset_root (#520) (a57e37c)
  • fix(plugin-native): join worker thread on all run_source exit paths (#519) (328a76f)
  • ci: extract shared setup prelude into composite action (#518) (ab4584d)
  • fix(api): reject non-object params for audio::mixer in compile_dag (#514) (5d4ae13)
  • fix(ui): check |* suffix before rendering wildcard in formatWithTemplate (#512) (6bebdbb)
  • test(nodes): add unit tests for text_chunker, telemetry_out, compositor config, and audio pacer (#506) (b2d01c2)
  • test(nodes): add tests for ogg, pixel_ops, colorbars, and moq push (#505) (5023f0c)
  • test(nodes): add unit tests for json_serialize, sink, bytes_input, bytes_output, and streaming_utils (#504) (fb752f2)
  • test(nodes): fill RTMP protocol test coverage gaps (#503) (719d22e)
  • ci: free more disk space for coverage job (#511) (a034bae)
  • refactor: clean up comments across codebase per AGENTS.md guidelines (#502) (b5c2eae)
  • test(engine): increase dynamic_actor.rs coverage with 14 new tests (#499) (e796ae5)
  • ci(codecov): wire Codecov statuses into the required merge gate (#497) (8eef873)
  • fix(server): reject mutating requests with non-UTF-8 Origin header (#500) (f4f1e0d)
  • fix(server): normalize_base_path("/") returns None instead of Some("/") (#498) (2674c7a)
  • fix(server): use qualified VP9 encoder kind in preview bookkeeping (#496) (1967c34)
  • fix(test): prevent dav1d_roundtrip timeout in CI debug builds (#501) (063748a)
  • ci(codecov): surface project + patch threshold violations as red statuses; exclude untestable boilerplate (#486) (cb2d7c3)
  • test(server): expand coverage of router, middleware, and validation (#484) (d23d15f)
  • fix(engine): flush parked best-effort packet once downstream has capacity (#489) (1503ca9)
  • docs: consolidate agent skills into .agents/skills/ per agentskills.io spec (#492) (da56d5f)
  • docs: add PR description guidelines and template (#495) (9730291)
  • test(plugin-host): cover native FFI error paths and wasm wrapper edges (#483) (245df6c)
  • test(skit): cover plugin manager, WS dispatch, samples handlers (#482) (1b7a224)
  • test(server): cover plugins handlers and preview subgraph injection (#479) (322a845)
  • test(engine): cover dynamic_actor, oneshot, pin_distributor branches (#477) (494372d)
  • test(assets): cover assets and plugin-assets pipeline (#476) (d0bd682)
  • test(plugin-wasm): add unit tests for conversions and wrapper (#467) (a61034a)
  • fix(test): wait for nodeadded event in plugin_integration_test (#475) (6ea9db3)
  • test(plugin-native,server): add unit tests for metrics, loader, auth handlers, and websocket dispatch (#474) (6725739)
  • test(ui): cover yamlAutocompletion, fragmentUtils, jsonStream, nodeIssues, samplePipelineOrdering, mse, deepEqual (#471) (9579679)
  • test(ui): cover services (auth/sessions/samples/assets/fragments/imageAssets/pluginAssets/logs/health/plugins/config) and stores (schema/permission/nodePosition/plugin) (#468) (a549e0a)
  • test(ui): cover compositor overlays/resize/atoms and pipeline auto-layout/builder hooks (#466) (0f7ae09)
  • ci: improve gate job diagnostics and document branch protection requirement (#465) (dc2118d)
  • test(api): cover yaml compiler, client_lint, and WS protocol round-trips (#464) (0d9d95e)
  • fix(ui): handle null wildcard_value in formatWithTemplate (#460) (45febdb)
  • fix(moq): fail connection on audio codec mismatch in pull node (#461) (fad6274)
  • test(engine): verify closed output removal in pin_distributor test (#462) (9b46ab9)
  • test(moq): add unit tests for vendored OrderedProducer and CatalogConsumer (#457) (bddff06)
  • feat(moq): update moq ecosystem deps, fix codec-based track selection (#433, #429) (#453) (86a405f)
  • docs(coverage): add testing & coverage guidelines for agents and contributors (#456) (7937b10)
  • test(ui/streamStoreHelpers): cover performConnect, watch/mic warnings, status sync (#446) (6f78127)
  • test(ui): cover injectFileReadNode YAML injection behaviors (#444) (ac369b1)
  • test(ui/telemetryStore): cover parser and store actions (#441) (8c715e1)
  • test(ui): cover packetTypes formatters, canConnect, and resolveOutputType (#440) (23ea27b)
  • test(ui): cover fontAssets service (API, hooks, FontFace loading) (#439) (bc2a891)
  • test(ui): cover sessionStatus and pipelineGraph utils (#438) (353cffd)
  • test(server): cover sessions.rs batch validation and apply helpers (#451) (0ce9721)
  • test(server): cover oneshot multipart boundary + http_input bindings (#452) (04dfc46)
  • test(server/preview): cover classify + tap-detect helpers (#450) (9720d6a)
  • test(samples): cover sample-listing helpers in apps/skit/src/samples.rs (#445) (b267a71)
  • test(session): cover pure helpers in apps/skit/src/session.rs (#448) (f2d7fdf)
  • test(file_security): add unit tests for path validation helpers (#442) (2ad4ddc)
  • test(config): add unit tests for apps/skit/src/config.rs pure helpers + load (#447) (3319df7)
  • ci: add code coverage via cargo-llvm-cov (backend) and Vitest v8 (UI) (#434) (90d476c)
  • refactor: split server/mod.rs into focused sub-modules (#431) (66a681b)
  • refactor: split yaml.rs into focused sub-modules (#426) (f6e707e)
  • refactor(nodes): add registration helper macros to reduce boilerplate (#430) (22c5b83)
  • fix: remove hardcoded Opus codec assumptions in MoQ pull node (#428) (e02852c)
  • test: expand UI test coverage for high-logic components (#425) (1bce3ac)
  • test(engine): add unit tests for graph_builder, oneshot, and pin_distributor (#427) (519ca68)
  • test: add unit tests for zero-coverage crates/core modules (#424) (4abba6d)
  • fix: skip panicking-plugin fixture build when source is absent (#423) (adc6bea)

Full Changelog: v0.5.0...v0.6.0