Skip to content

chore(cursor): enum-shared-type-migration automation and ai-agents alignment#994

Draft
georgewrmarshall wants to merge 10 commits intomainfrom
chore/cursor-enum-shared-type-migration-automation
Draft

chore(cursor): enum-shared-type-migration automation and ai-agents alignment#994
georgewrmarshall wants to merge 10 commits intomainfrom
chore/cursor-enum-shared-type-migration-automation

Conversation

@georgewrmarshall
Copy link
Contributor

@georgewrmarshall georgewrmarshall commented Mar 24, 2026

Description

Why

Cursor Automations are configured in the Cursor product UI and are not version-controlled in git. We need an in-repo canonical spec for the DSYS-468 / ADR-0003–0004 internal migration workflow (Jira pickup, which rules to follow, verification, PR expectations) so it can be reviewed in PRs and linked or copy-pasted into Private or Team Visible automations.

What changed

  • Added .cursor/automations/enum-shared-type-migration.md — JQL (interactive vs scheduled unassigned backlog), Jira pickup steps, Cursor Cloud Automation notes (billing/identity, tools), implementation pointers to CLAUDE.md and Layer 2 rules (component-enum-union-migration, etc.), verification (yarn build, yarn test, yarn lint), and a paste-ready cloud prompt.
  • Updated docs/ai-agents.mdCursor Cloud Automations subsection aligned with repo agent principles (reference over duplication, checklists, context efficiency, verification) and explicit note that .cursor/automations/ is the VCS source of truth because the Automations UI has no native version control.
  • Removed unrelated migration tracking artifacts from this branch: .cursor/rules/component-migration-tracking.md, .cursor/rules/enum-shared-type-migration.mdc, and docs component-migration-project.md, extension-migration-tracker.md, jira-ticket-creation.md, mobile-migration-tracker.md. Automation is invoked via @.cursor/automations/enum-shared-type-migration.md only (no companion .mdc rule).
  • Chore — Prettier on touched markdown where required by hooks.

Linking specs from Cursor Automations (for reviewers)

There is no official Cursor documentation that guarantees a cloud agent will fetch and follow an arbitrary GitHub blob URL. Recommended: configure the automation with a repository + branch that contains this file, and instruct the agent to read .cursor/automations/enum-shared-type-migration.md in the workspace. A GitHub link (especially raw.githubusercontent.com or a pinned commit) is still useful for humans, pinning a frozen spec, or external tooling—but treat it as supplementary to the checked-out file.

Related issues

Fixes: (none — contributor workflow / tooling only)

Manual testing steps

  1. On this branch, open .cursor/automations/enum-shared-type-migration.md and confirm structure, JQL blocks, and links render as expected.
  2. In Cursor Chat, @-mention .cursor/automations/enum-shared-type-migration.md and confirm the agent is directed to docs/ai-agents.md and the listed @.cursor/rules/*.md files for implementation (not component-migration.md for this epic).
  3. Confirm no remaining references to deleted paths (e.g. component-migration-tracking, removed tracker docs) via repo search.
  4. (Optional) Create or edit a Private test automation: paste the cloud prompt snippet from the automation doc and run against a branch that includes this file; confirm the agent can see .cursor/automations/enum-shared-type-migration.md on disk.

Screenshots/Recordings

N/A — documentation and Cursor config guidance only.

Before

N/A

After

N/A

Pre-merge author checklist

  • I've followed MetaMask Contributor Docs
  • I've completed the PR template to the best of my ability
  • I've included tests if applicable (N/A — docs only)
  • I've documented my code using JSDoc format if applicable (N/A)
  • I've applied the right labels on the PR (see labeling guidelines). Not required for external contributors.

Pre-merge reviewer checklist

  • I've manually tested the PR (e.g. pull and build branch, run the app, test code being changed).
  • I confirm that this PR addresses all acceptance criteria described in the ticket it closes and includes the necessary testing evidence such as recordings and or screenshots.

- Add component-migration-project.md with project overview and status
- Add extension-migration-tracker.md with Extension component status
- Add mobile-migration-tracker.md with Mobile component status
- Add jira-ticket-creation.md with ticket creation workflows
- Add component-migration-tracking.md cursor rule for tracking workflow
- Add canonical steps and PR/GitHub auth notes in automations doc
- Point rule at automations file for @-mention workflow

Made-with: Cursor
@github-actions
Copy link
Contributor

📖 Storybook Preview

@github-actions
Copy link
Contributor

📖 Storybook Preview

- Drop component-migration-tracking rule and standalone tracker docs
- Remove enum-shared-type-migration.mdc; invoke automation via .cursor/automations only
- Fix ai-agents and automation doc references

Made-with: Cursor
@github-actions
Copy link
Contributor

📖 Storybook Preview

Copy link
Contributor

@cursor cursor bot left a comment

Choose a reason for hiding this comment

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

Cursor Bugbot has reviewed your changes and found 1 potential issue.

Fix All in Cursor

Bugbot Autofix prepared a fix for the issue found in the latest run.

  • ✅ Fixed: Hardcoded user-specific assignee in shared board URL
    • Removed the hardcoded assignee parameter from the Jira board URL so it reflects the full epic scope.

Create PR

Or push these changes by commenting:

@cursor push b7ee51b32c
Preview (b7ee51b32c)
diff --git a/.cursor/automations/enum-shared-type-migration.md b/.cursor/automations/enum-shared-type-migration.md
--- a/.cursor/automations/enum-shared-type-migration.md
+++ b/.cursor/automations/enum-shared-type-migration.md
@@ -18,7 +18,7 @@
 | Setting           | Value                                                                                                                                                              |
 | ----------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
 | Epic              | **DSYS-468** — _Component ADR Migration: Align with ADR-0003 and ADR-0004_                                                                                         |
-| Board (reference) | [DSYS board — epic filter](https://consensyssoftware.atlassian.net/jira/software/c/projects/DSYS/boards/1888?assignee=6152e94cc7bea40069d6b9c3&issueParent=343549) |
+| Board (reference) | [DSYS board — epic filter](https://consensyssoftware.atlassian.net/jira/software/c/projects/DSYS/boards/1888?issueParent=343549) |
 
 ## 1. Find candidates

You can send follow-ups to this agent here.

| Setting | Value |
| ----------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| Epic | **DSYS-468** — _Component ADR Migration: Align with ADR-0003 and ADR-0004_ |
| Board (reference) | [DSYS board — epic filter](https://consensyssoftware.atlassian.net/jira/software/c/projects/DSYS/boards/1888?assignee=6152e94cc7bea40069d6b9c3&issueParent=343549) |
Copy link
Contributor

Choose a reason for hiding this comment

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

Hardcoded user-specific assignee in shared board URL

Low Severity

The Jira board URL labeled "DSYS board — epic filter" contains a hardcoded assignee=6152e94cc7bea40069d6b9c3 query parameter, which filters the board to a single specific Atlassian user. Other team members clicking this "reference" link will see only that user's assigned work rather than the full epic view, making the link misleading as a general-purpose epic filter. This looks like a personal browser URL that was copied verbatim.

Fix in Cursor Fix in Web

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