Skip to content

docs(skills): tell agents to file reproducible render bugs, not paraphrases#2301

Merged
vanceingalls merged 1 commit into
mainfrom
07-12-feedback-skill-bug-repro-guidance
Jul 12, 2026
Merged

docs(skills): tell agents to file reproducible render bugs, not paraphrases#2301
vanceingalls merged 1 commit into
mainfrom
07-12-feedback-skill-bug-repro-guidance

Conversation

@vanceingalls

@vanceingalls vanceingalls commented Jul 12, 2026

Copy link
Copy Markdown
Collaborator

Stack

  1. fix(producer): fall back fast when the parallel DE streaming capture stalls #2298 — DE router stall watchdog
  2. fix(producer): stop clipping the bottom edge of software-GPU video renders #2300 — video bottom-edge clip
  3. docs(skills): tell agents to file reproducible render bugs, not paraphrases #2301 — feedback bug-report guidance ← you are here

Problem

The hyperframes feedback convention only prompted agents for a free-text --comment "with the failing composition pattern and what you tried". Agents dutifully filed vague reports (blank CJK text, DE mid-run exit, 4K timeout) with no error string, no failure-mode, and no published composition — so none could be reproduced or root-caused. Three of the six reports in the last batch were un-actionable for exactly this reason.

Fix

Two additions to the hyperframes-cli skill (SKILL.md + references/preview-render.md):

  • Lead bug reports with --file-issue (+ --dir), which publishes a minimal repro of the project to a public URL and opens a pre-filled GitHub issue. A comment alone almost never lets a maintainer reproduce; the published composition is what does.
  • Concrete --comment bug checklist: exact error string verbatim + whether output was produced / silently fell back / hard-exited; the isolated trigger; exact command + HF_*/PRODUCER_* env; frame/timestamp + visual defect. Dropped the "repeat env" ask (the CLI already attaches os/arch/mem/ffmpeg/version).

No behavior change — docs/skill only. skills-manifest.json hash bump is the registry tracking the skill edit.

vanceingalls commented Jul 12, 2026

Copy link
Copy Markdown
Collaborator Author

@vanceingalls vanceingalls changed the base branch from main to graphite-base/2301 July 12, 2026 18:08
@vanceingalls vanceingalls force-pushed the 07-12-feedback-skill-bug-repro-guidance branch from 1b4be0c to 5e4ad0e Compare July 12, 2026 18:08
@vanceingalls vanceingalls changed the base branch from graphite-base/2301 to 07-12-fix-software-video-beyond-viewport July 12, 2026 18:08

@miga-heygen miga-heygen left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Review — docs(skills): tell agents to file reproducible render bugs, not paraphrases

Docs/skill-only change. Good improvements to the feedback guidance:

  1. Lead with --file-issue — makes it the default for reproducible bugs instead of a footnote. The published composition is what lets a maintainer reproduce; a comment alone almost never does.
  2. Concrete bug checklist — exact error string verbatim, failure mode (output produced / fell back / hard-exited), isolated trigger, exact command + env, frame/timestamp + visual defect. Each item answers a specific question a maintainer would ask.
  3. Dropped "repeat env" — correct, the CLI already attaches os/arch/mem/ffmpeg/version via doctorSummary.

Consistent between SKILL.md and the reference file. No code change.

LGTM — no issues found.

— Miga

@james-russo-rames-d-jusso james-russo-rames-d-jusso 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.

Reviewed at 5e4ad0e2.

Verified against actual CLI (packages/cli/src/commands/feedback.ts): all flags in the guidance exist (--file-issue, --dir, --yes), the CLI auto-attaches doctorSummary (os/arch/mem/ffmpeg/CLI-version) so "don't repeat env" is accurate, and the error-string examples all appear in the codebase (re-rendering via screenshot at renderOrchestrator.ts:2611, falling back at captureStreamingStage.ts:699, Killed: 9 / Target closed are real Node/Puppeteer signals). The trigger examples (blank CJK, 4K, <video>) are all real reports the team hit this arc — grounded, not made up.

Content parity between SKILL.md (structured sub-bullets) and references/preview-render.md (compressed prose) is consistent — same information at two levels of detail, which matches the file-role split.

The --file-issue framing correctly emphasizes "the published composition is what lets a maintainer reproduce; a comment alone almost never does" — that IS the load-bearing message. Nice.

Nits

  • 🟡 One agent-safety subtlety worth noting: preview-render.md mentions --yes "for non-interactive shells" but doesn't call out that --yes bypasses the consent-gate (see confirmFileIssue at feedback.ts:56). The CLI still prints the consent message before publishing, but a non-interactive agent using --yes publishes without a review step — so if the composition contains proprietary customer content (voice-over scripts, unreleased brand assets), it goes public. Not a blocker on a docs PR, but a one-line "consider whether the composition contains sensitive content before adding --yes in agent flows" note would be defensive against future misuse. Alternatively, guide agents to prefer the interactive path when running against non---dir workspaces.

LGTM. Magi already approved; layering this on top per the peer-review protocol.

Review by Rames D Jusso

jrusso1020
jrusso1020 previously approved these changes Jul 12, 2026

@jrusso1020 jrusso1020 left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

Approving on Rames-D's go. Rames-D reviewed + Magi APPROVED at head 5e4ad0e, docs PR with CLI flags + error-strings verified real, no changes-requested. (--yes consent-gate note is non-blocking.)

miguel-heygen
miguel-heygen previously approved these changes Jul 12, 2026

@miguel-heygen miguel-heygen left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

Independent current-head review.

Strengths

  • skills/hyperframes-cli/SKILL.md:42-49 makes reproducible reports concrete while preserving the existing telemetry opt-out.
  • The guidance matches the actual CLI: --file-issue, --dir, and --yes exist; the command publishes only after consent and opens a non-submitted issue draft.
  • Skills lint passed, and the full skill suite passed 225/225 locally. The stack edge is exact/fresh; CI has no failures, with optional render-regression shards still running.

Important (non-blocking)

  • Rule-9 follow-up: this changes LLM-facing instruction text but adds no positive-pin test for the new reproducibility concepts. A future focused skill test should assert that bug guidance retains --file-issue, exact errors, the command/env, and frame/timestamp context.

No material blockers found.

Verdict: APPROVE
Reasoning: The instructions accurately describe the implemented consent-gated CLI flow and materially improve report reproducibility; the missing prompt pin is test-hardening, not a correctness blocker.

— deepwork

vanceingalls added a commit that referenced this pull request Jul 12, 2026
…stalls (#2298)

## Stack
1. **#2298 — DE router stall watchdog** ← you are here
2. #2300 — video bottom-edge clip
3. #2301 — feedback bug-report guidance

## Problem
The DE parallel router auto-enables the interleaved parallel-**streaming** capture for the ≥24 GB macOS trial cohort. If a worker wedges mid-capture (a hung seek/screenshot at an early frame), the render makes **zero frame progress** yet sits until the per-frame CDP `protocolTimeout` (~5 min) fires before the pinned self-verify fallback can run — a silent multi-minute hang shipped to real users.

Reported: stuck at frame 2/2031 for 6+ min, no fallback, until the user manually set `HF_DE_PARALLEL_ROUTER=false` (71 s clean).

## Fix
Add a no-frame-progress watchdog to the parallel branch of `runCaptureStreamingStage`:

- Ticks off `executeParallelCapture`'s progress callback. If no **new** frame lands within `HF_DE_PARALLEL_STALL_MS` (default **60 s** — well under the 5-min protocol timeout, ≫ the 15–32 ms/frame budget), it fires.
- On trip: aborts the **reorder buffer** (so peer workers parked in `waitForFrame` reject instead of deadlocking the `Promise.all` pool) and aborts the pool via a **separate** `AbortController` linked to the parent abort.
- The parent `abortSignal` stays un-aborted, so the orchestrator reads the failure as a generic `capture_error` (not a cancellation) and re-renders on the pinned screenshot path — the same fallback a verify failure already uses.

## Test
- Watchdog trips on no progress → rethrows a stall error (routes to fallback).
- A genuine parent-abort is **not** relabeled as a stall (stays a cancellation).
…hrases

The `hyperframes feedback` convention only prompted for a free-text
`--comment` "with the failing composition pattern and what you tried".
Agents dutifully filed vague reports (blank CJK text, mid-run exit, 4K
timeout) with no error string, no failure-mode, and — critically — no
published composition, so none could be reproduced or root-caused.

Two additions to the CLI skill:
- Lead bug reports with `--file-issue` (+ `--dir`), which publishes a
  minimal repro of the project to a public URL. A comment alone almost
  never lets a maintainer reproduce; the composition is what does.
- Give the `--comment` a concrete bug checklist: exact error string
  verbatim + whether output was produced / fell back / hard-exited; the
  isolated trigger; exact command + HF_*/PRODUCER_* env; frame/timestamp +
  visual defect. Drop the "repeat env" ask (the CLI already attaches it).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@vanceingalls vanceingalls force-pushed the 07-12-fix-software-video-beyond-viewport branch from 18a1d1f to de95daa Compare July 12, 2026 18:29
@vanceingalls vanceingalls force-pushed the 07-12-feedback-skill-bug-repro-guidance branch from 5e4ad0e to 6a3da1f Compare July 12, 2026 18:29
Base automatically changed from 07-12-fix-software-video-beyond-viewport to main July 12, 2026 18:50
@vanceingalls vanceingalls dismissed stale reviews from miguel-heygen and jrusso1020 July 12, 2026 18:50

The base branch was changed.

@vanceingalls vanceingalls merged commit 27eec5b into main Jul 12, 2026
22 of 28 checks passed
@vanceingalls vanceingalls deleted the 07-12-feedback-skill-bug-repro-guidance branch July 12, 2026 18:51
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.

5 participants