Commit Graph
5091 Commits
Author SHA1 Message Date
Rudy Mizrahi Celekli 49a7700372 fix(cli): read and patch byte-marked project configs (#5725) 2026-10-24 07:18:44 +00:00
Akshar Patel 3596a7f22b fix(cli): report failed tag installations to scripts and agents (#6086)
* fix(cli): report failed tag installations to scripts and agents

* fix(cli): restore status markers in tag install summaries
2026-10-24 07:18:42 +00:00
Dante 8b1bf6b914 fix(player): include visible playback rate in accessible name (#6032) 2026-10-24 07:18:36 +00:00
Akshar Patel c9ab2796af fix(engine): repeat looped audio through its export slot (#6184) 2026-10-24 07:18:32 +00:00
Akshar Patel 629dd8fb76 fix(lint): ignore inactive mask declarations (#6186) 2026-10-24 07:18:27 +00:00
Miguel Ángel c618c71ad5 fix(cli): snapshot --output clears only the frames it wrote (#6176)
* fix(cli): snapshot --output clears only the frames it wrote

* fix(cli): drop the comment the snapshot name pattern does not need
2026-10-24 06:28:42 +00:00
Miguel Ángel 53e1dfce9e fix(engine): h265 renders no longer fail on hosts with more than 16 cores (#6193)
* fix(engine): h265 renders no longer fail on hosts with more than 16 cores

libx265 rejects more than 16 frame threads, so the thread count taken from the
CPU quota is now capped at 16 for x265. x264 is unchanged.

* fix(engine): pass the encoder to the thread cap in the CFR re-encode
2026-10-24 05:33:56 +00:00
Miguel Ángel ebb057fb62 fix(cli): a check that hits its deadline keeps the findings it already made (#6190) 2026-10-24 05:08:49 +00:00
Abdullah M. Nazif 0b8f5ec8f5 fix(cli): normalize muted targets before applying tolerance (#5291) 2026-10-24 05:01:46 +00:00
Miguel Ángel 3ef28e26c6 test(engine): the GPU probe tests do not start a Chrome from the host cache (#6187) 2026-10-24 04:33:57 +00:00
Miguel Ángel 09d7f1c646 fix(core): release decoded preview audio once no clip uses its source (#6178)
* fix(core): release decoded preview audio once no clip uses its source

The preview transport cached every decoded audio buffer by source until the player was destroyed. Each scheduling pass now drops cached buffers whose source no clip in the document still uses (scene edits, swapped sources), and keeps the rest so playback never re-decodes a clip still in the film.

* fix(core): drop the comment the comment-share ratchet rejects
2026-10-24 04:29:31 +00:00
Miguel Ángel acb47de7d2 perf(producer): the audio task finds sound with a probe and reads URL clips in parallel (#6174)
* perf(producer): the audio task probes each video for sound instead of extracting its frames

* test(producer): the audio task finds a video's sound from a probe, with no frames extracted

* perf(engine): the audio mix reads clips held at a URL many at a time

* style(engine): format the remote clip slot choice

* fix(producer): the audio task places a video's sound in the window extraction would give it

* style(producer): format the slot cases of the script-src audio test
2026-10-24 04:23:15 +00:00
Miguel Ángel 5ebbc8ef6d fix(studio-server): project history no longer copies video, audio or huge files (#6171)
* fix(studio-server): project history no longer copies video, audio or huge files

* fix(studio-server): clean drops old video and audio copies in every history

* fix(studio-server): TypeScript source is not media, so its history is kept

* fix(studio-server): split the media reclaim and point the slow-copy route test at a non-media file

* fix(studio-server): no unused expression when collecting a history's hashes
2026-10-24 04:12:48 +00:00
Abdullah M. Nazif 2a9b9f4e7c fix(cli): audit clipped text beneath transparent composition hosts (#5400) 2026-10-24 04:11:34 +00:00
Abdullah M. Nazif 9ab4de4599 fix(cli): refuse undo when a target or backup is missing (#5365) 2026-10-24 04:11:31 +00:00
Abdullah M. Nazif 191caf943a fix(lint): check timeline registration before explicit font loads (#5363) 2026-10-24 04:11:29 +00:00
Abdullah M. Nazif 14c9eb4487 test(core): isolate local font fallback from system discovery (#5360) 2026-10-24 04:11:27 +00:00
Abdullah M. Nazif 0aa728b1aa fix(studio-server): decode authored audio attributes for loudness (#5289) 2026-10-24 04:11:25 +00:00
Abdullah M. Nazif bd0be1bdae fix(cli): stage temporary HTML comparisons without recursive copies (#5286) 2026-10-24 04:11:21 +00:00
Abdullah M. Nazif ecf5db7070 fix(core): preserve blocked addresses in mounted import maps (#5277) 2026-10-24 04:11:18 +00:00
Abdullah M. Nazif a1b23f1e4d fix(lint): read actual font CSS declarations (#5221) 2026-10-24 04:11:15 +00:00
Abdullah M. Nazif 9e533f0887 fix(cli): fail benchmarks with no completed renders (#5303) 2026-10-24 04:11:12 +00:00
Abdullah M. Nazif 8a84bedd38 fix(cli): read info metadata from the root composition (#5299) 2026-10-24 04:11:08 +00:00
Abdullah M. Nazif 1001a79419 fix(cli): capture images declared only through srcset (#5298)
* fix(cli): capture images declared only through srcset

* chore: prepare conflict resolution against current main

* fix(capture): retain srcset coverage with validated GIF redirects
2026-10-24 04:11:06 +00:00
Abdullah M. Nazif 0a37f9b9bb fix(parsers): recognize spaced slideshow type attributes (#5326) 2026-10-24 04:11:04 +00:00
Abdullah M. Nazif 410030a733 fix(cli): close asset streams when clients disconnect (#5321)
* fix(cli): close asset streams when clients disconnect

* chore: prepare conflict resolution against current main

* fix(cli): retain asset disconnect cleanup with current main
2026-10-24 04:11:02 +00:00
Abdullah M. Nazif 58752b5cf3 fix(cli): preserve portrait orientation during background removal (#5313) 2026-10-24 04:10:58 +00:00
Abdullah M. Nazif 1e6a2f0ff9 fix(cli): tolerate invalid optional package cache manifests (#5349) 2026-10-24 04:10:53 +00:00
Abdullah M. Nazif c00a1bc1d4 fix(cli): honor HTML attribute casing in frame-rate defaults (#5348)
* fix(cli): honor HTML attribute casing in frame-rate defaults

* chore: prepare conflict resolution against current main

* fix(cli): preserve HTML fps casing with shared cloud defaults
2026-10-24 04:10:49 +00:00
Abdullah M. Nazif 234b87a4bb fix(core): preserve literal percent in beat source paths (#5327)
* fix(core): preserve literal percent in beat source paths

* chore: prepare conflict resolution against current main

* fix(core): retain beat path handling with current main
2026-10-24 04:10:43 +00:00
Abdullah M. Nazif ad06c60c74 fix(cli): preserve stylesheet order during website capture (#5311)
* fix(cli): preserve stylesheet order during website capture

* chore: prepare conflict resolution against current main

* fix(cli): retain captured stylesheet order with current main

* chore: prepare conflict resolution against current main

* fix(capture): retain cascade coverage with validated redirects
2026-10-24 04:10:41 +00:00
Abdullah M. Nazif e10155ce35 fix(cli): detect beats from child media sources (#5310)
* fix(cli): detect beats from child media sources

* chore: prepare conflict resolution against current main

* fix(cli): integrate child beat sources with native decoding
2026-10-24 04:10:38 +00:00
Abdullah M. Nazif 58578fc229 fix(cli): retain metadata when Lottie previews exceed the size limit (#5307) 2026-10-24 04:10:36 +00:00
Abdullah M. Nazif ac6c682a0d fix(cli): show complete history diffs for large text changes (#5305)
* fix(cli): show complete history diffs for large text changes

* fix(cli): read history diff through its original descriptor
2026-10-24 04:10:31 +00:00
Abdullah M. Nazif ba5dde78de fix(engine): preserve Windows RSS samples after a query failure (#5357) 2026-10-24 04:10:28 +00:00
Abdullah M. Nazif cad57bf2aa fix(engine): recognize spaced closing template tags (#5353) 2026-10-24 04:10:26 +00:00
Abdullah M. Nazif bd4d8c6cb5 test: use supported FFmpeg flags for VFR fixtures (#5352) 2026-10-24 04:10:24 +00:00
Abdullah M. Nazif 6fccefe976 fix(engine): retain fresh frames when replacing an empty cache (#5351) 2026-10-24 04:10:21 +00:00
Abdullah M. Nazif e7f6c12b91 fix(cli): tolerate removed files during desktop catch-up (#5350) 2026-10-24 04:10:18 +00:00
Abdullah M. Nazif e0317a23c0 fix(cli): respect image orientation in capture contact sheets (#5295) 2026-10-24 04:10:16 +00:00
Abdullah M. Nazif d94a9d7aab fix(cli): protect batch input from generated manifest (#5294) 2026-10-24 04:10:14 +00:00
Miguel Ángel 0d104e6fca fix(cli): init never touches installed skills and no command removes one (#6168)
* fix(cli): init and skills update only touch HyperFrames skills; --skip-skills works

* fix(cli): init never touches installed skills and no command removes one

* fix(cli): shorten the init skills comment

* fix(cli): shorten the init skills comment

* fix(cli): the stale-skills notice reaches agents that run without a terminal

* test(cli): a run without a terminal now checks skills in the background

* fix(cli): the stale-skills notice also prints on --json runs
2026-10-24 04:08:29 +00:00
Akshar Patel 886e8696df fix(studio): preserve caption text when parsing transcripts (#3896) 2026-10-24 03:00:52 +00:00
Miguel Ángel da3e9b6385 perf(engine): a site's remote files are probed once per render, not once per clip (#6172)
* perf(engine): remote sources of a site keep their probe results for the whole render

* test(engine): probe a content-addressed URL once per render

* style(engine): format the audio probe split
2026-10-24 02:51:47 +00:00
Miguel Ángel cf7266d815 chore: release v0.8.191 (#6170) 2026-10-24 01:40:50 +00:00
Miguel Ángel 8a102f6f9c fix(sdk): a delete is kept hidden when any script lookup could reach it, not only an id (#6165)
* fix(sdk): a delete is kept hidden when any script lookup could reach it, not only an id

* fix(sdk): a lookup argument that is not one closed literal keeps the delete hidden
2026-10-24 01:32:55 +00:00
Vance IngallsandClaude Sonnet 5.5 1c463a2fec fix(core): refuse nested vfx capture canvases and scope host lookups (#4804)
A `<canvas layoutsubtree class="hf-vfx-src">` nested inside another capture
canvas blocks the renderer main thread in drawElementImage, so `check` and
`snapshot` time out with no output. Refuse either direction of the nest with a
reportVfxError and leave the chain unregistered.

Also scope the two host lookups to immediate children (`:scope >`) so a nested
host's src/out canvas is never bound to the outer host, and read the
`data-vfx-ref-visible` flag in resolveCaptureSource so a canvas reached as both
a host's own source and as a ref gets one consistent `visible`/keepBitmap.

Refs #4405

Co-authored-by: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-24 01:30:58 +00:00
Dante 7dd83b8513 test: preserve browser cleanup and regression failure evidence (#5773) 2026-10-24 01:30:54 +00:00
Abdullah M. Nazif 5b8e539f96 fix(cli): recognize painted ancestor text backgrounds (#5342)
* fix(cli): recognize painted gradient children on older Chrome

* fix(cli): recognize ancestor image text masks

* fix(cli): report clipped ancestor text on older Chrome
2026-10-24 00:43:33 +00:00
yi111andYi-111-a 0648f1ed8d fix(lint): recognise .avif and .m4a in the media src kind rule (#4779)
The media_src_kind_mismatch rule classified .mp3 and .jpeg but not .m4a or
.avif, so an <img> pointed at an audio file or a <video> at a still slipped
through for those two formats. Add .avif to IMAGE_SRC_EXT and .m4a to
AUDIO_SRC_EXT.

.ogg stays out: its container can carry Theora video as well as Vorbis or
Opus, so the extension does not name the kind. .m4a is the opposite case --
it is audio-only, and video in the same MP4 container is .m4v, which
VIDEO_SRC_EXT already lists. The .ogg case keeps its existing coverage and
gains an explicit unknown-extension case alongside it.

Refs #4382

Co-authored-by: Yi-111-a <Yi-111-a@users.noreply.github.com>
2026-10-24 00:43:28 +00:00