Skip to content

MWPW-198143: add mas-author skill for safe M@S authoring via Odin MCP#1024

Open
yesil wants to merge 10 commits into
mainfrom
MWPW-198143
Open

MWPW-198143: add mas-author skill for safe M@S authoring via Odin MCP#1024
yesil wants to merge 10 commits into
mainfrom
MWPW-198143

Conversation

@yesil

@yesil yesil commented Jul 1, 2026

Copy link
Copy Markdown
Contributor
  • SKILL.md: stop rule, allow/deny lists, and guardrail workflows (publish, placeholder+index, safe delete, en_US tags, one-variation-per-locale) for driving the Odin MCP.
  • references/content-model.md: M@S content-fragment model IDs, reference fields, path/locale grammar, and variation rules. No code references.

Type install http://mas.adobe.com/docs/mas-author skill in Claude or ChatGPT.

Conversation Thread
You: /mas-author open fragment 597d1655-ab30-4f5d-9ea8-d777edf93249 in studio
Claude: Card model, path is /content/dam/mas/sandbox/en_US/create11111121129, so surface = sandbox.
Here's the M@S Studio link for CC Plans Merch Card: CC Pro: Individuals: apac-cci-q3fy26-promo-ph-th:
https://mas.adobe.com/studio.html#page=fragment-editor&fragmentId=597d1655-ab30-4f5d-9ea8-d777edf93249&path=sandbox

You: create a locale variation for egyprt
Claude: Egypt has two existing M@S locale folders: ar_EG (Arabic) and en_EG (English). Which one should I create the variation for?
You: en_EG (English)
Claude: The parent's variations field is empty, so no en_EG variation exists yet — clear to create.
[Created the fragment, working through a couple of schema/format errors along the way — fields needed to be an array of {name, type, values} objects rather than a plain object, and originalId needed to match the parent's originalId value rather than its own id, to keep it consistent with the en_US source.]
Shell created at /content/dam/mas/sandbox/en_EG/create11111121129 (id c36b05e0-fd15-4f4b-844c-4e3a21d14ffc). Now linking it to the parent's variations field.
Done. The en_EG variation is created and linked:

New fragment: c36b05e0-fd15-4f4b-844c-4e3a21d14ffc at /content/dam/mas/sandbox/en_EG/create11111121129
Shell fields carried over: osi, variant, size, cardName, promoCode, and originalId (matching the en_US parent's original id) — non-translatable structural fields only
Linked to the parent's variations field

Translatable content (title, description, badge, prices, CTAs, etc.) is intentionally left empty — that's MAS Studio's job, not something I should fill in with raw fragment edits. Studio link to open the new variation:
https://mas.adobe.com/studio.html#page=fragment-editor&fragmentId=c36b05e0-fd15-4f4b-844c-4e3a21d14ffc&path=sandbox

You: update tags of en_EG one
Claude: That variation is at en_EG, not en_US — so I can't edit its tags directly.
Tags belong on the en_US default fragment and are inherited by its locale variations, so editing tags on the en_EG copy wouldn't do anything meaningful (and could create drift from the parent). Reading its tags is fine, but writes should happen on the en_US fragment instead.
Want me to update the tags on the en_US parent (597d1655-ab30-4f5d-9ea8-d777edf93249) instead? If so, let me know what changes you want (add/replace/remove which tags).

Resolves https://jira.corp.adobe.com/browse/MWPW-198143
QA Checklist: https://wiki.corp.adobe.com/display/adobedotcom/M@S+Engineering+QA+Use+Cases

Please do the steps below before submitting your PR for a code review or QA

  • C1. Cover code with Unit Tests
  • C2. Add a Nala test (double check with #fishbags if nala test is needed)
  • C3. Verify all Checks are green (unit tests, nala tests)
  • C4. PR description contains working Test Page link where the feature can be tested
  • C5: you are ready to do a demo from Test Page in PR (bonus: write a working demo script that you'll use on Thursday, you can eventually put in your PR)
  • C.6 read your Jira one more time to validate that you've addressed all AC's and nothing is missing

🧪 Nala E2E Tests

Nala tests run automatically when you open this PR.

To run Nala tests again:

  1. Add the run nala label to this PR (in the right sidebar)
  2. Tests will run automatically on the current commit
  3. Any future commits will also trigger tests as long as the label remains

To stop automatic Nala tests:

  • Remove the run nala label

Note: Tests only run on commits if the run nala label is present. Add the label whenever you need tests to run on new changes.

Test URLs:

yesil added 2 commits July 1, 2026 18:32
- SKILL.md: stop rule, allow/deny lists, and guardrail workflows (publish, placeholder+index, safe delete, en_US tags, one-variation-per-locale) for driving the Odin MCP.
- references/content-model.md: M@S content-fragment model IDs, reference fields, path/locale grammar, and variation rules. No code references.
@aem-code-sync

aem-code-sync Bot commented Jul 1, 2026

Copy link
Copy Markdown

Hello, I'm the AEM Code Sync Bot and I will run some actions to deploy your branch.
In case there are problems, just click the checkbox below to rerun the respective action.

  • Re-sync branch
Commits

@codecov

codecov Bot commented Jul 1, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 90.09%. Comparing base (690448a) to head (7912a06).
⚠️ Report is 1 commits behind head on main.

Additional details and impacted files

Impacted file tree graph

@@            Coverage Diff             @@
##             main    #1024      +/-   ##
==========================================
+ Coverage   90.06%   90.09%   +0.03%     
==========================================
  Files         285      285              
  Lines       91196    91196              
==========================================
+ Hits        82136    82167      +31     
+ Misses       9060     9029      -31     

see 13 files with indirect coverage changes


Continue to review full report in Codecov by Harness.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 690448a...7912a06. Read the comment docs.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

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