Skip to content

docs(skills): define cinematic landing capture#1768

Open
zeval wants to merge 8 commits into
mainfrom
docs/cinematic-landing-media
Open

docs(skills): define cinematic landing capture#1768
zeval wants to merge 8 commits into
mainfrom
docs/cinematic-landing-media

Conversation

@zeval

@zeval zeval commented Jul 17, 2026

Copy link
Copy Markdown
Member

Defines a measurable editorial camera profile and capture gate so landing films preserve the product action at their real embed size instead of showing unreadable full-workspace chrome.

Summary

  • document the 1920x1200 landing delivery profile, 2x editorial camera, matched focused loop frames, and theater-width readability gate
  • require full pointer journeys and frame-by-frame cursor containment instead of click-only tracking
  • add explicit rejection criteria for browser automation banners and visible host paths
  • require capture-only mock executors to use logical labels rather than temporary executable paths

Validation

  • python3 .github/scripts/lint-harness-files.py .agents/skills/product-demo-seeding .agents/skills/product-video-capture
  • python3 /home/zeval/.agents/skills/skill-creator/scripts/quick_validate.py .agents/skills/product-video-capture
  • python3 /home/zeval/.agents/skills/skill-creator/scripts/quick_validate.py .agents/skills/product-demo-seeding
  • commit hooks: harness lint and Conventional Commits passed

Companion

Checklist

  • I have performed a self-review of my code.
  • I have manually tested my changes and they work as expected.
  • My changes have tests or deterministic validation covering the new contract.
  • UI E2E is not applicable; this PR changes agent skills only.
  • Public docs are unaffected; this is internal capture workflow guidance.

Preview Environment

URL https://kandev-pr-1768-bwo7.sprites.app
Commit 347f35a
Agent Mock agent

Updates automatically on each push. Destroyed when the PR is closed.

@claude

claude Bot commented Jul 17, 2026

Copy link
Copy Markdown

Claude finished @zeval's task in 2m 41s —— View job


Review

  • Load tools
  • Read code-review skill
  • Read diff and changed files
  • Post inline findings
  • Post summary

Findings

Suggestion (recommended, doesn't block)

  1. "higher text-preserving encode quality" is undefinedreferences/camera-encoding.md:22

    • Issue: The "Current contract" section is tied to encoder tests as the source of truth (Treat tests as source of truth if these values evolve), but this new bullet adds a quality requirement with no measurable definition — no CRF, bitrate, or encoder preset reference.
    • Why: An agent consuming this doc cannot verify compliance with a vague quality descriptor. It also reads inconsistently against the other bullets (fps, dimensions, zoom factors — all concrete numbers).
    • Fix: Once the companion encoder PR lands, replace with the actual parameter (e.g. VP9 CRF N / --cq N). Until then, rephrase as using the landing encoder profile's quality settings to make clear the companion PR's tests are authoritative here.
  2. Forward references to formFactor: "landing" without companion PRreferences/camera-encoding.md:51, 76

    • Issue: loopFrame: "focused" is now unlocked for the "landing" form factor, and the landing config shape references formFactor: "landing" — but the companion PR (adding the 1920x1200 / 2x encoder profile) has not merged. If someone runs this skill before the companion PR merges, the encoder will silently fail or misinterpret the form factor.
    • Why: Low risk since this is a skill doc not executed code, but it creates a window where the doc and the scripts are out of sync.
    • Fix: Add a brief note like requires companion landing encoder PR at the top of the landing delivery bullet or camera section, so it's clear this is staged.

Summary

Severity Count
Blocker 0
Suggestion 2

Verdict: Ready with suggestions

The three-file change is internally consistent — SKILL.md, camera-encoding.md, and qa-checklist.md all align on the new landing form factor, 760–950 px theater-width gate, and 2x / 1920x1200 delivery spec. The editorial narrative guidance (establish / follow / reveal / compare / settle) is a good addition that belongs in the Avoid Awkward Motion section. No blockers.

@coderabbitai

coderabbitai Bot commented Jul 17, 2026

Copy link
Copy Markdown

Review Change Stack

📝 Walkthrough

Walkthrough

Updates product-video capture contracts and QA guidance for editorial landing films, including focused loops, delivery sizing, theater-width readability, motion review, browser-artifact rejection, and deterministic crop matching. It also adds a truthfulness constraint for capture-only mock executor labels.

Changes

Product video capture

Layer / File(s) Summary
Camera loop contract
.agents/skills/product-video-capture/SKILL.md, .agents/skills/product-video-capture/references/camera-encoding.md
Defines centered 1x defaults, focused landing/docs loop exceptions, matched frames, and landing composition rules.
Landing encoding and motion guidance
.agents/skills/product-video-capture/references/camera-encoding.md
Adds landing-specific source and delivery sizing, encode settings, keyframe guidance, camera reach, and motion rejection criteria.
Capture and QA acceptance
.agents/skills/product-video-capture/references/capture-pipeline.md, .agents/skills/product-video-capture/references/qa-checklist.md
Adds automation-banner rejection, theater-width readability audits, loop-reset checks, landing integration checks, and focused-crop provenance requirements.

Product demo seeding

Layer / File(s) Summary
Mock executor labeling
.agents/skills/product-demo-seeding/SKILL.md
Requires logical labels for capture-only mock executors and prohibits exposing temporary executable paths.

Estimated code review effort: 2 (Simple) | ~10 minutes

Possibly related PRs

  • kdlbs/kandev#1714: Updated the same product-demo-seeding truthfulness and product-video capture guidance.
  • kdlbs/kandev#1760: Refined related focused-loop and landing/docs acceptance guidance.

Poem

I hop through frames, both wide and tight,
With matching loops that end just right.
At theater widths, the words stay clear,
Each camera move has purpose near.
Squeak! Landing films now shine bright.

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
Title check ✅ Passed The title is concise and matches the main change: defining a cinematic landing capture contract.
Description check ✅ Passed The description includes the required summary, validation, and checklist sections, with only non-critical template differences.
✨ Finishing Touches
📝 Generate docstrings
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch docs/cinematic-landing-media

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

Comment thread .agents/skills/product-video-capture/references/camera-encoding.md Outdated
@greptile-apps

greptile-apps Bot commented Jul 17, 2026

Copy link
Copy Markdown

Greptile Summary

This PR defines the cinematic landing capture profile across five agent skill docs, introducing the 1920x1200 editorial delivery at 2x zoom from a 3840x2400 source, a theater-width readability gate, stricter loop-frame matching, and banner-inspection requirements.

  • Adds the formFactor: "landing" encoder profile (VP9 CRF 26 / H.264 CRF 18) with a mandatory preflight check that the landing tests recognise this form factor before any agent encodes against it.
  • Extends loopFrame: "focused" eligibility to landing and tightens the loop-frame contract from a 2-frame match to a 3-frame match (first, settled penultimate, final) for both docs and landing clips.
  • Requires full-perimeter, frame-indexed contact-sheet inspection for Chrome's automation banner, adds --test-type alongside --disable-infobars, and expands rejection criteria and QA checklist accordingly.

Confidence Score: 5/5

Documentation-only changes with no executable code; all new guidance is internally consistent and correctly guarded behind the landing-test preflight check.

Every modified file is a Markdown skill doc. The editorial landing profile is properly gated behind a test-recognition check so agents cannot encode against an older checkout that lacks the profile. The three-frame loop-match tightening, theater-width audit, and banner-inspection rules are applied consistently across SKILL.md, camera-encoding.md, capture-pipeline.md, and qa-checklist.md. No logic, migrations, or APIs are changed.

No files require special attention.

Important Files Changed

Filename Overview
.agents/skills/product-demo-seeding/SKILL.md Adds one rule requiring logical labels (e.g. mock-agent) for capture-only executors rather than exposing temporary host paths; straightforward and consistent with existing guidelines.
.agents/skills/product-video-capture/SKILL.md Step 10 gains the theater-width review requirement for landing films; loop-frame bullet tightened to require three-frame match (first, settled penultimate, final) for both editorial landing and docs clips — consistent with updated reference docs.
.agents/skills/product-video-capture/references/camera-encoding.md Core of the PR: adds conditional editorial landing profile, minimal JSONC config example, landing composition guidelines, narrative camera reject criteria, and extends loopFrame focused eligibility to landing — all internally consistent with the companion guard that requires test recognition before use.
.agents/skills/product-video-capture/references/capture-pipeline.md Adds --test-type Chrome flag and a frame-complete perimeter inspection requirement for the automation banner; rejection conditions and raw-rejection list updated consistently.
.agents/skills/product-video-capture/references/qa-checklist.md Timeline audit, content audit, and promotion checklist all updated to match the new three-frame loop requirement, theater-width gate, and banner inspection rules; formFactor: landing preflight added at the correct preflight gate.

Flowchart

%%{init: {'theme': 'neutral'}}%%
flowchart TD
    A[Start: landing film requested] --> B{Check out landing repo}
    B --> C{Run focused encoder tests\nformFactor landing recognised?}
    C -- No --> D[STOP: older checkout\nlacks landing profile]
    C -- Yes --> E[Capture: 3840x2400 raw\n--test-type --disable-infobars]
    E --> F[Decode every raw frame\nFrame-indexed contact sheets]
    F --> G{Any automation banner\nin perimeter?}
    G -- Yes --> H[Reject take & recapture]
    G -- No --> I[Design camera at 2x\nmatched 3-frame loop]
    I --> J{First = settled penultimate\n= final keyframe?}
    J -- No --> K[Revise camera keyframes]
    J -- Yes --> L[Encode: 1920x1200\nVP9 CRF 26 / H.264 CRF 18]
    L --> M[Theater-width audit\n760px, 850px, 950px]
    M --> N{Text & controls readable\nat all three widths?}
    N -- No --> O[Reject delivery]
    N -- Yes --> P[Promote to production\nWebM, MP4, WebP]
Loading
%%{init: {'theme': 'base', 'themeVariables': {"darkMode": true, "background": "#0d1117", "primaryColor": "#21262d", "primaryTextColor": "#e6edf3", "primaryBorderColor": "#8b949e", "lineColor": "#8b949e", "textColor": "#e6edf3", "edgeLabelBackground": "#161b22", "actorBkg": "#21262d", "actorBorder": "#8b949e", "actorTextColor": "#e6edf3", "actorLineColor": "#8b949e", "signalColor": "#8b949e", "signalTextColor": "#e6edf3", "noteBkgColor": "#373320", "noteBorderColor": "#d4a72c", "noteTextColor": "#f0e6c0", "labelBoxBkgColor": "#21262d", "labelBoxBorderColor": "#8b949e", "labelTextColor": "#e6edf3", "loopTextColor": "#e6edf3", "activationBkgColor": "#30363d", "activationBorderColor": "#8b949e"}}}%%
flowchart TD
    A[Start: landing film requested] --> B{Check out landing repo}
    B --> C{Run focused encoder tests\nformFactor landing recognised?}
    C -- No --> D[STOP: older checkout\nlacks landing profile]
    C -- Yes --> E[Capture: 3840x2400 raw\n--test-type --disable-infobars]
    E --> F[Decode every raw frame\nFrame-indexed contact sheets]
    F --> G{Any automation banner\nin perimeter?}
    G -- Yes --> H[Reject take & recapture]
    G -- No --> I[Design camera at 2x\nmatched 3-frame loop]
    I --> J{First = settled penultimate\n= final keyframe?}
    J -- No --> K[Revise camera keyframes]
    J -- Yes --> L[Encode: 1920x1200\nVP9 CRF 26 / H.264 CRF 18]
    L --> M[Theater-width audit\n760px, 850px, 950px]
    M --> N{Text & controls readable\nat all three widths?}
    N -- No --> O[Reject delivery]
    N -- Yes --> P[Promote to production\nWebM, MP4, WebP]
Loading

Reviews (7): Last reviewed commit: "docs(skills): require frame-complete art..." | Re-trigger Greptile

Comment thread .agents/skills/product-video-capture/references/camera-encoding.md

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 2

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In @.agents/skills/product-video-capture/references/camera-encoding.md:
- Line 38: Update the focused-start eligibility guidance in the camera-encoding
reference to match the shared acceptance contract: allow focused framing when it
improves readability or removes irrelevant chrome or fixture-only detail, while
preserving identifying context. Align the corresponding condition across
SKILL.md and the QA checklist so all three references use the same eligibility
rule.

In @.agents/skills/product-video-capture/references/qa-checklist.md:
- Around line 49-51: Update the focused-loop checklist item for camera bounds
and loop frames to explicitly verify that the first, settled penultimate, and
final camera frames match exactly, consistent with the camera contract in
camera-encoding.md. Preserve the existing centered 1x requirement for default
clips and the calm reset behavior.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

Run ID: 8093a98a-7e6f-4a62-b491-0657f53e9e8b

📥 Commits

Reviewing files that changed from the base of the PR and between 165bdc5 and bc8a5ba.

📒 Files selected for processing (3)
  • .agents/skills/product-video-capture/SKILL.md
  • .agents/skills/product-video-capture/references/camera-encoding.md
  • .agents/skills/product-video-capture/references/qa-checklist.md

Comment thread .agents/skills/product-video-capture/references/camera-encoding.md Outdated
Comment thread .agents/skills/product-video-capture/references/qa-checklist.md Outdated
@claude

claude Bot commented Jul 17, 2026

Copy link
Copy Markdown

Claude finished @zeval's task in 2m 43s —— View job


Review

  • Load tools
  • Read code-review skill
  • Read diff and changed files
  • Post inline findings
  • Post summary

Prior findings addressed in this commit (bc8a5ba)

Finding Status
"higher text-preserving encode quality" undefined (Claude) ✅ Resolved — now specifies VP9 CRF 26, H.264 CRF 18
Focused-loop eligibility inconsistency (CodeRabbit) ✅ Resolved — all three files now use identical wording
QA checklist missing settled-penultimate check (CodeRabbit) ✅ Resolved — qa-checklist.md §3 and §6 now include the penultimate frame
formFactor: "landing" without companion PR (Greptile/Claude) ✅ Mitigated — guard rail added requiring tests to recognize the profile before encoding

Findings

Suggestion (recommended, doesn't block)

  1. SKILL.md acceptance gate says "start/end crop" but the contract requires three matching framesSKILL.md:66

    • camera-encoding.md and qa-checklist.md both now correctly say "first, settled penultimate, and final frames must match." SKILL.md still says "one identical focused start/end crop", which omits the penultimate requirement and creates a loophole where a loop passes this gate but fails the encoder's own check.
    • Fix: Replace "start/end crop" with "exactly matching first, settled penultimate, and final focused frames" — suggestion posted inline.
  2. Example config heading is ambiguous after the landing prosereferences/camera-encoding.md:80

    • The editorial landing guidance ends at line 78, and the next heading says "Example config shape" — but the example that follows is the desktop form factor (2560×1600, formFactor: "desktop"). An agent reading sequentially could use that as the landing template and produce a wrongly-sized delivery.
    • Fix: Rename the heading to "Desktop example config shape", or add a minimal landing stub (formFactor: "landing", outputWidth: 1920, outputHeight: 1200, loopFrame: "focused") alongside it — suggestion posted inline.

Summary

Severity Count
Blocker 0
Suggestion 2

Verdict: Ready with suggestions

The three-file set is now internally consistent on the VP9/H.264 quality parameters, focused-loop eligibility, and the penultimate-frame requirement in QA and provenance. The two remaining suggestions are small precision gaps rather than blockers: a three-word consistency fix in SKILL.md and a heading clarification in camera-encoding.md.

Comment thread .agents/skills/product-video-capture/SKILL.md Outdated
Comment thread .agents/skills/product-video-capture/references/camera-encoding.md Outdated
@claude

claude Bot commented Jul 17, 2026

Copy link
Copy Markdown

Claude finished @zeval's task in 2m 37s —— View job


Claude finished @zeval's task ——


Review

  • Load tools
  • Read code-review skill
  • Read diff and changed files
  • Post inline findings
  • Post summary

Prior findings addressed (all three commits)

Finding Status
"higher text-preserving encode quality" undefined (Claude round 1) ✅ Now specifies VP9 CRF 26, H.264 CRF 18
Focused-loop eligibility inconsistency across files (CodeRabbit) ✅ All three files aligned
QA checklist missing settled-penultimate check (CodeRabbit) qa-checklist.md §3 and §6 include the penultimate frame
formFactor: "landing" without companion PR (Greptile/Claude round 1) ✅ Guard rail added before encoding
SKILL.md acceptance gate said "start/end crop" — omitting penultimate (Claude round 2) ✅ Addressed in a63c4f0
Example config heading ambiguous after landing prose (Claude round 2) ✅ Now labeled "Example general-desktop config shape"

Findings

Suggestion (recommended, doesn't block)

  1. Missing landing JSON config examplereferences/camera-encoding.md:78
    • Issue: The prose introduces the landing config shape in plain text ("same matched-loop rule with formFactor: "landing", 3840x2400 source, 1920x1200 delivery"), but no JSON stub exists. An agent authoring a landing config must mentally combine the docs clip camera section example with the desktop outer config example, then apply three prose deltas (outputWidth: 1920, outputHeight: 1200, formFactor: "landing", loopFrame: "focused" in the camera section).
    • Why: The information is all present, but scattered. The desktop example is the closest full-shape reference, and an agent copying it as a landing starting point would produce a 2560×1600 file with the wrong form factor if it misses the prose overrides.
    • Fix: Add a minimal landing stub below the landing paragraph showing the key outer config overrides and camera section header — detail posted inline.

Summary

Severity Count
Blocker 0
Suggestion 1

Verdict: Ready with suggestion

The three-file set is now internally consistent across all three review rounds: VP9/H.264 quality parameters are concrete, focused-loop eligibility matches in SKILL.md / camera-encoding.md / qa-checklist.md, the penultimate-frame requirement is in both the contract and the QA/provenance checklist, and the example heading is unambiguous. The one remaining suggestion is a missing landing JSON stub — all the information is in the doc, but a single template would remove the synthesis step for agents.

Comment thread .agents/skills/product-video-capture/references/camera-encoding.md
@claude

claude Bot commented Jul 17, 2026

Copy link
Copy Markdown

Claude finished @zeval's task in 2m 32s —— View job


Review

  • Load tools
  • Read code-review skill
  • Read diff and changed files
  • Post inline findings
  • Post summary

Prior findings — all addressed

Finding Status
"higher text-preserving encode quality" undefined (Claude round 1) ✅ Now VP9 CRF 26, H.264 CRF 18
formFactor: "landing" without companion PR (Claude/Greptile round 1) ✅ Guard rail added in both camera-encoding.md and qa-checklist.md §5
Focused-loop eligibility inconsistency (CodeRabbit) ✅ All three files aligned
QA checklist missing settled-penultimate check (CodeRabbit) ✅ §3 and §6 both now require first, settled penultimate, and final
SKILL.md acceptance gate said "start/end crop" (Claude round 2) ✅ Now "exactly matching first, settled penultimate, and final focused frames"
Example config heading ambiguous after landing prose (Claude round 2) ✅ Now "Example general-desktop config shape"

Findings

Suggestion (recommended, doesn't block)

  1. No concrete landing JSON stub — agent must synthesize from two separate examplesreferences/camera-encoding.md:78
    • Issue: The landing paragraph names four deltas from the desktop template (outputWidth: 1920, outputHeight: 1200, formFactor: "landing", loopFrame: "focused") but no JSON stub exists. An agent has to hold the docs clip camera example and the desktop outer example in mind simultaneously and apply all four changes.
    • Why: The carry-over risk is that an agent copies the desktop template verbatim and gets a 2560×1600 delivery with the wrong form factor. The information is present but synthetic — a stub removes the error surface.
    • Fix: Add a minimal landing stub below the prose paragraph. Inline suggestion posted.

Summary

Severity Count
Blocker 0
Suggestion 1 (carry-over from round 3)

Verdict: Ready with suggestion

The three-file change is fully internally consistent at this head: VP9/H.264 quality parameters are concrete, focused-loop eligibility is identical across SKILL.md / camera-encoding.md / qa-checklist.md, the settled penultimate frame requirement appears in both the encoder contract and the QA/provenance checklist, the example heading is unambiguous, and both guard notes (camera-encoding.md and qa-checklist.md §5) warn against encoding before the companion landing encoder PR lands. The one remaining suggestion — a minimal landing JSON stub — has now been raised across three rounds; the information exists but requires cross-template synthesis that a stub would eliminate.

Comment thread .agents/skills/product-video-capture/references/camera-encoding.md
@claude

claude Bot commented Jul 17, 2026

Copy link
Copy Markdown

Claude finished @zeval's task in 2m 19s —— View job


Review

  • Load tools
  • Read code-review skill
  • Read current diff and changed files
  • Check prior findings are resolved
  • Post inline findings (none — no remaining issues)
  • Post summary

Prior findings — all resolved at head 1a68e47

Finding Round Status
"higher text-preserving encode quality" undefined 1 ✅ Now VP9 CRF 26, H.264 CRF 18
formFactor: "landing" without companion PR 1 ✅ Guard rail in camera-encoding.md + qa-checklist.md §5
Focused-loop eligibility inconsistency across files 1–2 ✅ All three files aligned
QA checklist missing settled-penultimate check 2 §3 and §6 both require first, settled penultimate, and final
SKILL.md acceptance gate said "start/end crop" 2 ✅ Now "exactly matching first, settled penultimate, and final focused frames"
Example config heading ambiguous after landing prose 2 ✅ Now "Example general-desktop config shape"
No landing JSON stub 3–4 ✅ Minimal editorial-landing config added with correct outputWidth: 1920, outputHeight: 1200, formFactor: "landing", loopFrame: "focused", and matched keyframes

Findings

No blockers. No remaining suggestions.

Cross-file consistency check passes on every invariant:

  • "first, settled penultimate, and final" appears identically in SKILL.md:66, camera-encoding.md:26, camera-encoding.md:53, qa-checklist.md:49, and qa-checklist.md:106
  • loopFrame: "focused" is restricted to docs or landing in prose and in both JSON examples
  • Guard requiring companion PR test confirmation present in both camera-encoding.md and qa-checklist.md §5
  • Landing stub dimensions (3840x2400 → 1920x1200, zoom 2) are consistent with the encoder contract

Summary

Severity Count
Blocker 0
Suggestion 0

Verdict: Ready to merge

The three-file change is complete and internally consistent after five commits. All substantive findings from four review rounds have been addressed. The landing editorial profile is fully specified with concrete encoder parameters, a matched-loop contract, a complete JSON stub, theater-width readability requirements, and guard notes preventing premature use before the companion encoder PR lands.

@claude

claude Bot commented Jul 18, 2026

Copy link
Copy Markdown

Claude finished @zeval's task in 1m 34s —— View job


Review

  • Load tools
  • Read code-review skill
  • Read diff and changed files (new commit 8ee361a since last review)
  • Post inline findings (none)
  • Post summary

New commit since last review — 8ee361a docs(skills): reject capture environment leaks

Three files changed, all doc-only, all consistent:

File Change
product-demo-seeding/SKILL.md +1 bullet: mock executor command labels must not expose absolute host paths
capture-pipeline.md Added --test-type Chrome flag; added automation-banner inspection note; added "automation banner" to raw rejection criteria
qa-checklist.md Added "browser automation banner" to content audit list

Technical correctness: --test-type is the right flag to suppress Chrome's automation infobar when --disable-infobars alone isn't sufficient on all Chrome for Testing builds. The inspection note at capture-pipeline.md:40 explains why both flags are listed together.

Cross-file consistency: "automation banner" now appears consistently in the capture-pipeline rejection criteria, the QA checklist content audit, and the browser shape inspection step — all aligned.

Scope: The new mock executor label rule in product-demo-seeding/SKILL.md fits the "keep host identity out of visible frames" pattern already present in that file's Truthfulness Contract section.

Prior findings — all resolved at 1a68e47 (confirmed unchanged)

Finding Status
"higher text-preserving encode quality" undefined ✅ VP9 CRF 26, H.264 CRF 18
formFactor: "landing" forward ref without companion PR ✅ Guard note in camera-encoding.md + qa-checklist.md §5
Focused-loop eligibility inconsistency ✅ All three files aligned
QA checklist missing settled-penultimate check ✅ §3 and §6 both require first, settled penultimate, and final
SKILL.md acceptance gate said "start/end crop" ✅ Now "exactly matching first, settled penultimate, and final focused frames"
Example config heading ambiguous ✅ Now "Example general-desktop config shape"
No landing JSON stub ✅ Minimal editorial-landing config added

Findings

No blockers. No new suggestions.

Summary

Severity Count
Blocker 0
Suggestion 0

Verdict: Ready to merge

The three-file set is fully internally consistent after six commits. The new commit adds focused capture-hygiene rules (automation banner detection, mock executor path suppression) that fit cleanly within the existing guidance structure.

@claude

claude Bot commented Jul 18, 2026

Copy link
Copy Markdown

Claude finished @zeval's task in 1m 34s —— View job


Review

  • Load tools
  • Read code-review skill
  • Read diff and changed files (new commit 0697945 since last review)
  • Post inline findings (none)
  • Post summary

New commit since last review — 0697945 docs(skills): clarify landing profile availability

Single-line change to camera-encoding.md:

Before After
Contract bullet editorial landing delivery 1920x1200... (unconditional) when the checked-out landing tests recognize \formFactor: "landing"`, editorial delivery 1920x1200...` (conditional)

This converts the landing contract bullet from an unconditional present-tense claim to a test-gated conditional. It is the last precision fix requested across the review thread and directly resolves the greptile observation that the bullet "reads as a present fact while the implementing companion PR is not yet merged."

Cross-file consistency at 0697945:

Invariant Status
formFactor: "landing" guard in contract bullet ✅ Now conditional on test recognition
formFactor: "landing" preflight note in camera-encoding.md ✅ Unchanged — already present
formFactor: "landing" guard in qa-checklist.md §5 ✅ Unchanged — already present
"first, settled penultimate, and final" consistent across all five references
VP9 CRF 26 / H.264 CRF 18 concrete in contract
Landing config stub with correct 3840x2400 → 1920x1200 / zoom 2
Theater-width audit at 760/850/950 CSS px in SKILL.md and QA
Automation banner rejection in both capture-pipeline and QA content audit
Mock executor label rule in product-demo-seeding

Prior findings — all resolved

Finding Round Status
"higher text-preserving encode quality" undefined 1 ✅ VP9 CRF 26, H.264 CRF 18
formFactor: "landing" stated as present fact before companion PR 1 / Greptile ✅ Now conditional on test recognition
Focused-loop eligibility inconsistency across files 1–2 / CodeRabbit ✅ All files aligned
QA checklist missing settled-penultimate check 2 / CodeRabbit ✅ §3 and §6 both require first, settled penultimate, and final
SKILL.md acceptance gate said "start/end crop" 2 ✅ Now "exactly matching first, settled penultimate, and final focused frames"
Example config heading ambiguous after landing prose 2 ✅ Now "Example general-desktop config shape"
No landing JSON stub 3–4 ✅ Minimal editorial-landing config added

Findings

No blockers. No new suggestions.

Summary

Severity Count
Blocker 0
Suggestion 0

Verdict: Ready to merge

Seven commits have fully resolved every finding from the review thread. The three-file set (plus capture-pipeline.md and product-demo-seeding/SKILL.md) is internally consistent on the landing encoder contract, focused-loop eligibility, theater-width readability gates, automation banner detection, and mock executor label hygiene.

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 2

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In @.agents/skills/product-video-capture/references/camera-encoding.md:
- Line 40: Update the focused-frame wording in the guidance sentence to use “a
single focused frame matched across the loop,” while preserving the surrounding
conditions and meaning.

In @.agents/skills/product-video-capture/references/capture-pipeline.md:
- Line 40: The browser-artifact validation must guarantee frame-complete
coverage rather than relying on first, middle, and final samples. Update
.agents/skills/product-video-capture/references/capture-pipeline.md at line 40
and .agents/skills/product-video-capture/references/qa-checklist.md at line 65
to require scanning every frame, or document a sampling cadence that guarantees
coverage, and reject any take containing a browser-managed banner.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

Run ID: 9b600db8-eb7b-4aa1-bbab-220f12cd9cc0

📥 Commits

Reviewing files that changed from the base of the PR and between bc8a5ba and 0697945.

📒 Files selected for processing (5)
  • .agents/skills/product-demo-seeding/SKILL.md
  • .agents/skills/product-video-capture/SKILL.md
  • .agents/skills/product-video-capture/references/camera-encoding.md
  • .agents/skills/product-video-capture/references/capture-pipeline.md
  • .agents/skills/product-video-capture/references/qa-checklist.md
🚧 Files skipped from review as they are similar to previous changes (1)
  • .agents/skills/product-video-capture/SKILL.md

Comment thread .agents/skills/product-video-capture/references/camera-encoding.md Outdated
Comment thread .agents/skills/product-video-capture/references/capture-pipeline.md Outdated
@claude

claude Bot commented Jul 18, 2026

Copy link
Copy Markdown

Claude finished @zeval's task in 2m 1s —— View job


Claude finished @josé Almeida's task


Review

  • Load tools
  • Read code-review skill
  • Read diff and changed files (new commit 347f35a since last review)
  • Post inline findings (none)
  • Post summary

New commit since last review — 347f35a docs(skills): require frame-complete artifact checks

Three files changed:

File Change
camera-encoding.md:40 "one matched focused frame" → "a single focused frame matched across the loop" (LanguageTool grammar fix from CodeRabbit)
capture-pipeline.md:38-40 Requires decoding every raw frame into frame-indexed contact sheets; explicitly warns that first/middle/final samples cannot exclude a transient automation banner
qa-checklist.md:66 Adds frame-complete inspection rule: "Fixed-fraction samples and normal-speed playback are supplementary, not frame-complete evidence"

Technical correctness: The frame-complete requirement is now consistent across both capture and QA. The wording fix matches CodeRabbit's suggestion exactly.


Prior findings — all resolved

Finding Round Status
"higher text-preserving encode quality" undefined 1 ✅ VP9 CRF 26, H.264 CRF 18
formFactor: "landing" stated as present fact before companion PR 1 / Greptile ✅ Contract bullet conditional; guard notes in camera-encoding.md and qa-checklist.md §5
Focused-loop eligibility inconsistency across files 1–2 / CodeRabbit ✅ All five files aligned
QA checklist missing settled-penultimate check 2 / CodeRabbit ✅ §3 and §6 both require first, settled penultimate, and final
SKILL.md acceptance gate said "start/end crop" 2 ✅ Now "exactly matching first, settled penultimate, and final focused frames"
Example config heading ambiguous after landing prose 2 ✅ Now "Example general-desktop config shape"
No landing JSON stub 3–4 ✅ Minimal editorial-landing config with correct 3840x2400 → 1920x1200 / zoom 2
"matched focused frame" grammar 5 / CodeRabbit ✅ Now "a single focused frame matched across the loop"
Frame-complete browser-artifact validation missing 5 / CodeRabbit ✅ Both capture-pipeline.md and qa-checklist.md now require all-frame inspection

Findings

No blockers. No new suggestions.

Cross-file consistency check passes on all invariants at 347f35a:

  • "first, settled penultimate, and final" appears identically in SKILL.md:65, camera-encoding.md:26, camera-encoding.md:53, qa-checklist.md:49, and qa-checklist.md:106
  • loopFrame: "focused" restricted to docs or landing in prose and in both JSON examples
  • Landing delivery bullet is conditional on formFactor: "landing" test recognition; guard notes appear in both camera-encoding.md and qa-checklist.md §5
  • Landing stub dimensions (3840x2400 → 1920x1200, zoom 2) match the encoder contract
  • Theater-width audit at 760/850/950 CSS px referenced consistently in SKILL.md, camera-encoding.md, and qa-checklist.md
  • Automation banner rejection is now consistent across capture-pipeline.md rejection criteria, the QA content audit, and the new frame-complete inspection requirement

Summary

Severity Count
Blocker 0
Suggestion 0

Verdict: Ready to merge

Eight commits have fully resolved every finding from five review rounds. The two final CodeRabbit findings (grammar and frame-complete validation) are cleanly addressed. The five-file change is internally consistent on every invariant.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant