Repository navigation
fix(lint): the podcast-lanes.html page Desktop writes is not a second root composition - #6809
Merged
Merged
Conversation
Contributor
Edit accuracy: accurate 271 (base branch 271), smooth 104 of thoseThe gate passes. Quarantined, measured but not gated (0) |
Contributor
There was a problem hiding this comment.
Verdict: APPROVE · 0 blocker · 0 important · 0 nits
The exemption matches what Desktop writes (LANES_FILE = "podcast-lanes.html", a root page with data-composition-id and data-no-timeline), and caption-skin.html was the only other special case. The branch now conflicts with main: #6844 added lintLinkedStylesheetAssets at the same spot. To resolve, keep both: main's function, then PAGES_OPENED_BESIDE_INDEX above lintMultipleRootCompositions. CI needs to pass again after the rebase.
— Genesis reviewer
… root composition HyperFrames Desktop's podcast edit writes its camera lanes page, podcast-lanes.html, at the project root beside index.html: Studio reads no composition inside a dot folder, and Desktop opens the page directly as its own view. index.html never mounts it and no render plays it, but multiple_root_compositions fails lint and check on every podcast project, and its fix hint tells an agent to remove the file. Exempt it the way caption-skin.html already is. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…mmenting them Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
vanceingalls
force-pushed
the
fix/lint-podcast-lanes
branch
from
October 31, 2026 00:28
2a9c633 to
b2978b4
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Problem
hyperframes checkfails on every HyperFrames Desktop podcast project:Live repro: a Desktop podcast session on 2026-10-29 (teammate's trace). The agent ran
hyperframes check --json, gotok: falsefrom this one finding, and had to reason that it was "a pre-existing app file I shouldn't touch". The fix hint points the other way: it tells an agent to delete the file.podcast-lanes.htmlis Desktop's camera lanes page: the recorder and every camera at its synced time, with no animation (data-no-timeline). It sits at the root because Studio reads no composition inside a dot folder, and Desktop opens it directly as its own view.index.htmlnever mounts it, and no render or preview plays both, so the duplicate-audio risk the rule guards against does not apply.Fix
Skip it the same way
caption-skin.htmlis already skipped: a companion page an app opens on its own besideindex.html. One condition, plus a test copied from thecaption-skin.htmlcase.#2332 (
rail.html) was closed in a backlog sweep with "Reopen only if a current reproducible case makes it a priority again". This one has a current repro on every podcast project Desktop makes.Tests
packages/cli/src/utils/lintProject.test.ts: new case, a rootpodcast-lanes.htmlbesideindex.htmlraises nomultiple_root_compositions. It fails against the old@hyperframes/lintbuild and passes with this change.@hyperframes/lint(1232) andlintProject.test.ts(78): green.🤖 Generated with Claude Code