Skip to content

feat(canvas): package Pick & polish workflow - #44

Merged
lukasoppermann merged 2 commits into
lukasoppermann-pick-and-polish-experiencefrom
lukasoppermann-pick-and-polish-skill
Oct 20, 2026
Merged

lukasoppermann merged 2 commits into
lukasoppermann-pick-and-polish-experiencefrom
lukasoppermann-pick-and-polish-skill

Conversation

@lukasoppermann

Copy link
Copy Markdown
Contributor

Why

Pick & polish needs a reusable skill bundled with the plugin rather than a long procedure repeated in each Fix all request. Improvement warnings also touch the conversation edge, and the disabled request counter can stay white while the button label becomes gray.

What changes

Fix all invokes the model-discoverable /replica-pick-and-polish skill with verified checkout, branch, batch ID, and thread count. Missing or disabled skills and older runtimes use the same bundled instructions inline. Preparation errors leave notes retryable; immutable batches, paginated retrieval, and unknown-delivery recovery retain their existing boundaries.

Improvement alerts and status messages gain padding in the sidebar, conversation, deletion dialog, and composer. The Fix all counter now sits inside the actual Brand label, so it inherits the label's enabled and disabled foreground without changing its neutral fill. The plugin includes regenerated renderer assets and focused stories.

The identity warning remains a genuine failure when Hub does not return a verified account ID. No deployed Hub or account state was checked or changed. This follows #42 without changing the existing native stack.

lukasoppermann and others added 2 commits October 20, 2026 13:09
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Copilot-Session: 03c141fe-2f30-4317-81df-1051bac1d3ab
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Copilot-Session: 03c141fe-2f30-4317-81df-1051bac1d3ab
@lukasoppermann
lukasoppermann requested review from a team and nshki as code owners October 20, 2026 11:09
Copilot AI max review requested due to automatic review settings October 20, 2026 11:09
@lukasoppermann

Copy link
Copy Markdown
Contributor Author

Rendered Fix all with zero pending requests in light and dark themes, plus the padded Improvement error surfaces. These images use the packaged renderer in an isolated fixture, not the live trial or Hub state.

Disabled Fix all counter inherits the light-theme label color

Disabled Fix all counter inherits the dark-theme label color

Inset error messages in the Improvement sidebar conversation and deletion dialog

@lukasoppermann
lukasoppermann merged commit 6906253 into lukasoppermann-pick-and-polish-experience Oct 20, 2026
36 of 37 checks passed
@lukasoppermann
lukasoppermann deleted the lukasoppermann-pick-and-polish-skill branch October 20, 2026 11:18

Copilot AI 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.

🔵 Needs a closer look

Native-host skill invocation remains unverified, and regression coverage for preparation safety and identity warnings needs correction.

2 open issues
2 files not reviewed
  • .github/extensions/replica-prototype/assets/renderer-improvement-notes-prototype.js: Generated file
  • .github/extensions/replica-prototype/assets/renderer-prototype-canvas-improvement-threads.js: Generated file
What changed in this PR

Packages the Pick & polish workflow from #42 as a reusable plugin skill and refines canvas feedback.

Changes:

  • Adds skill discovery and bundled fallback instructions for Fix all.
  • Pads alerts and aligns the counter with the button label’s foreground.
  • Updates coverage, stories, documentation, and renderer assets.
File Description
hub/​script/​check-prototype-canvas-renderer.mjs Checks counter states and alert padding.
hub/​docs/​prototype-canvas.md Documents skill handoff and fallback behavior.
hub/​app/​javascript/​features/​prototype-canvas-improvement-threads/​styles.css Styles labels and padded alerts.
hub/​app/​javascript/​features/​prototype-canvas-improvement-threads/​stories.tsx Adds identity-warning and empty-state stories.
hub/​app/​javascript/​features/​prototype-canvas-improvement-threads/​index.tsx Moves the counter and styles conversation alerts.
hub/​app/​javascript/​features/​prototype-canvas-improvement-threads/​index.test.tsx Checks alert classes and counter placement.
hub/​app/​javascript/​features/​prototype-canvas-improvement-notes/​styles.css Adds padded notice styling.
hub/​app/​javascript/​features/​prototype-canvas-improvement-notes/​index.tsx Applies notice styling across notes surfaces.
hub/​app/​javascript/​application/​prototype-canvas/​tests/​improvement-notes.test.tsx Covers save failures and warning presentation.
hub/​app/​javascript/​application/​prototype-canvas/​tests/​counters.test.tsx Updates counter styling expectations.
.github/​extensions/​replica-prototype/​skills/​replica-pick-and-polish/​SKILL.md Defines the captured-batch workflow.
.github/​extensions/​replica-prototype/​README.md Describes the bundled skill.
.github/​extensions/​replica-prototype/​marketplace.test.mjs Checks skill packaging and discoverability.
.github/​extensions/​replica-prototype/​improvement-notes/​index.test.mjs Covers discovery, fallback, and preparation failures.
.github/​extensions/​replica-prototype/​improvement-notes/​index.mjs Prepares skill-based dispatch before persisting work.
.github/​extensions/​replica-prototype/​assets/​renderer-prototype-canvas-improvement-threads.js Regenerates thread presentation assets.
.github/​extensions/​replica-prototype/​assets/​renderer-improvement-notes-prototype.js Regenerates notes presentation assets.

Review effort: Max

Comment on lines +615 to +616
if ((await identity()).key !== input.identity)
fail("The prototype branch changed while preparing Pick & polish.", 409)
Comment on lines +261 to +264
[
"Upgrade Hub to confirm the connected author's account ID. Author attribution is unavailable.",
true,
],
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.

2 participants