Skip to content

Audited and Improved Evo Migrate Marko Skill#629

Closed
ArtBlue wants to merge 1 commit intomainfrom
improve-evo-marko-migration-skill
Closed

Audited and Improved Evo Migrate Marko Skill#629
ArtBlue wants to merge 1 commit intomainfrom
improve-evo-marko-migration-skill

Conversation

@ArtBlue
Copy link
Copy Markdown
Contributor

@ArtBlue ArtBlue commented Apr 17, 2026

Description

I put the current evo-migrate-marko skill through an audit using the skill-creator skill and used the conservative set of changes it suggested to slightly improve the skill.

Notes

There was a broader set of suggested changes to the skill that did not dramatically improve the end result of the skill. However, it did reduce the token usage and took less time to run. The broader audit also included evals for baselines on performance and efficiency of the skill. I left that out of this PR, too. If desired, that can be done as a separate PR by running skill-creator audit on the skill at any time.

This is the benchmark dashboard comparing the efficiency of the current skill with the potential efficiency gains from the revised skill (with all possible improvements).

image

@ArtBlue ArtBlue self-assigned this Apr 17, 2026
Copilot AI review requested due to automatic review settings April 17, 2026 18:11
@changeset-bot
Copy link
Copy Markdown

changeset-bot Bot commented Apr 17, 2026

⚠️ No Changeset found

Latest commit: 5073457

Merging this PR will not cause a version bump for any packages. If these changes should not result in a new version, you're good to go. If these changes should result in a version bump, you need to add a changeset.

This PR includes no changesets

When changesets are added to this PR, you'll see the packages that this PR includes changesets for and the associated semver types

Click here to learn what changesets are, and how to add one.

Click here if you're a maintainer who wants to add a changeset to this PR

Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

Updates the evo-migrate-marko Claude skill guidance based on an audit, aiming to improve how the skill is selected and to provide more precise migration instructions for specific accessibility/focus-management patterns.

Changes:

  • Expands skill description to encourage using the skill when users discuss migrating/porting ebay-* Marko components.
  • Refines guidance around makeup-* library replacements (roving tabindex vs active-descendant patterns) and adds a note about makeup-focusables.
  • Adds a checklist of expected README.md contents for migrated components.

Comment thread .claude/skills/evo-migrate-marko/SKILL.md
Comment thread .claude/skills/evo-migrate-marko/SKILL.md
Comment thread .claude/skills/evo-migrate-marko/SKILL.md
@ArtBlue
Copy link
Copy Markdown
Contributor Author

ArtBlue commented Apr 20, 2026

Ignoring all Copilot suggestions from this PR as it doesn't have enough Claude context and is approaching things from a human readability angle rather than skill efficiency.

Copy link
Copy Markdown
Member

@LuLaValva LuLaValva left a comment

Choose a reason for hiding this comment

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

@ArtBlue I'm not sure I understand how this saved tokens? All of the changes are additions to the skill, not removals

Comment thread .claude/skills/evo-migrate-marko/SKILL.md
- `makeup-expander` + `@floating-ui/dom` -> `<evo-expander>` (in `src/tags/tags/`)
- `makeup-floating-label` -> `<evo-floating-label>` (in `src/tags/tags/`)
- `makeup-typeahead` -> `<evo-typeahead>` (in `src/tags/tags/`)
- `makeup-focusables` -> **no evo replacement**; use native `querySelectorAll` with a standard focusable selector instead
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

Not necessarily true, we may end up making a Marko equivalent of this

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

@LuLaValva , the future is not very relevant with respect to the skill. It's what is true right now. Since this is an ephemeral skill anyway, the future may be wholesale irrelevant. As the codebase exists now, is the statement true for the skill to get enough context to do a better job. This is the only question we should be asking.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

I understand that, but this isn't necessarily the solution we want to use for migrating makeup-focusables and I think it is a hallucination

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

I'm not sure whether it's a hallucination or not, but it is trying to make explicit what is currently implied. What's merely implied creates vagueness and leads to non-deterministic outcomes. That said, your concern is fair. What is the right solution? Maybe we can capture that explicitly.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

We don't know what the right solution is yet because we haven't migrated the combobox component yet. I will add the correct solution when I migrate a component that uses this pattern and have had time to figure out what we should be doing in tags API

- **Basic usage example** (copy-pasteable Marko snippet)
- **Props table** — name, type, default, description (derive from the `Input` interface)
- **Accessibility notes** — any keyboard interactions, ARIA roles/attributes, screen reader behavior
- **Breaking changes from ebayui-core** — renamed props, removed props, changed event signatures
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

We shouldn't include breaking changes from eBayUI in the README. We'll figure out a better migration path once I've moved all components over

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

This is not the README, it's the SKILL. If the statements are true, we should keep them in since their purpose is to help the skill do a better job of migrating components. If they need adjustment because of some nuance, we should adjust them. If they are wholesale inaccurate, then we should remove/exclude them.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

This is a part of the skill that is instructing AI how to migrate a README from ebayui-core to evo-marko. The statements are not true, as these changes should not be made to the README

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

Gotcha. Ok. Can you suggest alternative wording of what should go in the README?

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

I think we should either remove this section or tell it to copy the README directly and find & replace ebay-* to evo-*


- **One-line description** of what the component does
- **Basic usage example** (copy-pasteable Marko snippet)
- **Props table** — name, type, default, description (derive from the `Input` interface)
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

We should NOT have a props table in the README, it will drift out of sync very quickly. There is no reason to add another maintenance point

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

This is the SKILL, not the README. I think this is meant to provide a template/pattern. Excluding them will leave it up the model's understanding and will make this non-deterministic.

@ArtBlue
Copy link
Copy Markdown
Contributor Author

ArtBlue commented Apr 20, 2026

@ArtBlue I'm not sure I understand how this saved tokens? All of the changes are additions to the skill, not removals

The size of the skill is irrelevant. We're not measuring the tokens in the skill. The performance evals are based on the efficiency and effectiveness of the evo-marko-migration skill, not the length of the skill itself. The evals were done with the existing skill and the skill with the current modifications. The improvements are based on the comparison of those results.

@ArtBlue
Copy link
Copy Markdown
Contributor Author

ArtBlue commented Apr 22, 2026

Closing this so Luke can make the changes himself.

@ArtBlue ArtBlue closed this Apr 22, 2026
@ArtBlue ArtBlue deleted the improve-evo-marko-migration-skill branch April 22, 2026 13:35
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.

3 participants