Repository navigation
Conversation
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
|
Important
This repository does not receive automatic reviews because it has fewer than 10 stars. ⚙️ Run configuration
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. Comment |
✅ E2E Test Results: ALL TESTS PASSED
Test Output |
Surface retry, honest empty Events, skip/unknown stack checks, and review_action cards after the IDE restyle. Keep Events labeling. Co-authored-by: KK <kk-agent@users.noreply.github.com>
6d481b6 to
732b8fb
Compare
✅ E2E Test Results: ALL TESTS PASSED
Test Output |
✅ E2E Test Results: ALL TESTS PASSED
Test Output |
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: c7a09a1757
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
| <button | ||
| type="button" | ||
| data-testid="studio-act-button" | ||
| onClick={() => void act()} | ||
| disabled={actBusy || !canAct} |
There was a problem hiding this comment.
Keep Act behind the workflow feature flag
When agent-workflow-ui is false (the default in src/flags.ts), this button still renders and invokes startVideoToActions; the new Intent CTA and returned tool results likewise ignore showAgentWorkflowUi. This exposes the durable agent workflow to cohorts for which it is explicitly disabled, so gate the triggers and results with the existing flag.
AGENTS.md reference: AGENTS.md:L64-L68
Useful? React with 👍 / 👎.
| const canAttemptBuildLive = Boolean( | ||
| getYouTubeId(url || selected?.url || '') && (selected || url.trim()), | ||
| ); | ||
| const canAct = Boolean(getYouTubeId(url || selected?.url || '')); |
There was a problem hiding this comment.
Bind Act to the URL that the button validates
When a stored pack is selected and the user types a different valid URL without first clicking Run, canAct validates the typed URL via url || selected?.url, but act() processes selected?.url || url. The enabled CTA therefore starts the workflow for the old selected video while the input and player show the new one; resolve the source once or disable Act until the typed URL is associated with the selection.
Useful? React with 👍 / 👎.
| onAct={() => void act()} | ||
| actBusy={actBusy} | ||
| canAct={canAct} |
There was a problem hiding this comment.
Scope Act results to the selected pack
After Act completes for one video, selecting another stored pack does not clear or associate the component-level workflowActions state, so the second pack's Intent tab displays the first video's review cards and exporting the second pack can include those stale actions. Clear Act state on selectedVideoId changes or store the originating selection ID and render/export results only when it matches.
Useful? React with 👍 / 👎.
| data-testid="studio-act-button" | ||
| onClick={() => void act()} |
There was a problem hiding this comment.
Reuse the completed workflow instead of starting it again
In the normal flow, Run already calls startVideoToActions through processVideo and waits for it to complete, but this new CTA calls act(), which posts to the same workflow again. videoToActionsWorkflow unconditionally repeats transcript acquisition and Gemini analysis before using the supplied transcript, so every Act click—and every click from a review card—duplicates the costly analysis and may produce a different second result; persist and expose the first run's actions or use a preview endpoint that skips acquisition and analysis.
Useful? React with 👍 / 👎.
| <PackWorkbench | ||
| architecture={packFormation.architecture} | ||
| artifacts={packFormation.artifacts} | ||
| onExport={() => void exportPkg()} |
There was a problem hiding this comment.
Pass stack tools into the promoted pack workbench
For a pack with no events and only stack.tools, studioPromotePackWorkbench returns true and the empty-state message says the stack is shown below, but this JSX passes only architecture and artifacts to PackWorkbench, which renders neither the tools nor any other pack detail in that case. The Events tab therefore shows an effectively empty card despite claiming the stack is present; pass the tools through or direct the message to the Tools tab.
AGENTS.md reference: AGENTS.md:L34-L39
Useful? React with 👍 / 👎.
| {card.kind === 'review' && onAct ? ( | ||
| <button | ||
| type="button" | ||
| data-testid="studio-review-act-button" | ||
| onClick={onAct} | ||
| disabled={actBusy || !canAct} |
There was a problem hiding this comment.
Match the review CTA to the actions the workflow produces
Real Act previews return registered tool names such as create_workflow_task with status pending because videoToActionsWorkflow calls runActionAgent with executeTools: false; no production producer emits a tool named review_action. Since this button is restricted to card.kind === 'review', normal proposed actions render as ordinary cards labelled pending with no review CTA, making the newly wired confirmation path unreachable. Render the CTA based on the preview status or return explicit review metadata from the workflow.
Useful? React with 👍 / 👎.
Canonical issue
Fixes #2440.
Hayden / AXIOM dogfood URL: https://uvai.io/studio?video=https://www.youtube.com/watch?v=pBsT6v-ciO8
Related leftover after #2437 merged: honest empty Events + pack workbench also land here.
Outcome
Rebased onto
mainafter #2437 (Ship this). Then pointed the required closer at the still-open leftover issue.After Run on a pack like
pBsT6v-ciO8(transcript + architecture + artifacts + stack.tools, noeventsfield):review_actionsay Review this result / Needs review and show Act on this run. The same CTA is in the toolbar and is not gated byagent-workflow-ui.Scope
Risk
Verification
Head SHA:
c7a09a175762cfd6981c65c812b22e24c38b7519cd apps/web && npx vitest run src/lib/__tests__/studio-pipeline-status.test.ts src/lib/__tests__/official-templates.test.ts src/lib/__tests__/uvai-surface-unification.test.ts src/lib/__tests__/home-sell-surface.test.ts src/components/__tests__/OneLoopStudio.three-panel.test.tsx src/components/studio/__tests__/StudioIdeOutput.playflow.test.tsx→ 6 files, 62 passedProduction evidence
Live GET
https://uvai.io/api/video/pack?url=https://www.youtube.com/watch?v=pBsT6v-ciO8returned 200: transcript present; architecture present; artifacts 2;stack.tools= SeaDance 2.5, Claude Fable 5, Character.ai, Cluely Desktop; noeventsfield. UI Events tab must match that (empty Events, not INSIGHTs).UI-only. Preview on Vercel
v0-uvaiafter CI. Do not treat the live GET as a production Studio E2E.Agent handoff
Fixes #2440)QA on pBsT6v-ciO8
/studio?video=https://www.youtube.com/watch?v=pBsT6v-ciO8.agent-workflow-uiis off./pricingCore lists workflow run history and proposed work from a Video Pack.