feat(skills): add mass-operations skill - #2
Closed
didrikhegna wants to merge 1 commit into
Closed
Conversation
Documents Crystallize mass operation files - the JSON batch format executed by the mass-operations runner as a BulkTask. Covers the 59 intents and their required fields, _ref chaining and handlebars templating, the upload/run/monitor lifecycle, and an exhaustive limits reference (batch caps, string/number bounds, structural rules, and the large class of limits that fail silently rather than erroring). Corrects several points where the published docs differ from runner behaviour, including the task status lifecycle, the upsert return shape, where resourceIdentifier is actually honoured, and component config nesting. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Member
|
thx! merged manually |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Adds a
mass-operationsskill covering Crystallize mass operation files — the JSON batch format executed by the mass-operations runner as a BulkTask.Sits alongside the existing skills at
use-crystallize/skills/mass-operations/, following the sameSKILL.md+references/layout and frontmatter convention.Contents
SKILL.mdreferences/intents.md_refoutputs, idempotency, whereresourceIdentifieris honouredreferences/templating.md_refchaining, handlebars,defaults.*,upload, the tenfetch*helpersreferences/lifecycle.mdreferences/limits.mdWhy it's worth having
Mass operations fail in ways local validation cannot catch, and the published docs are wrong on several points. The skill documents what the runner actually does:
upsertwith neitheritemIdnorresourceIdentifieralways creates — every run.externalReferenceis not a lookup key. This is the most common source of duplicated catalogue data.item/unpublishvalidates but is not supported by the runner, and fails the whole task rather than one operation.nullcontent is coerced to empty and wipes the component;propertiesTableis rebuilt from the shape config;numericdecimalPlacesfloors the stored value; choice and selection values not in the config are filtered out.max: 0means "unset" on afilescomponent but rejects everything onimages/videos, andrequired: falsedisables the configuredminentirely — so omittingrequiredis stricter than setting it tofalse.It also fixes documentation discrepancies the skill previously inherited: the task lifecycle has no
runningstate, the upsert return-shape guard is legacy0.0.1behaviour,resourceIdentifieris unimplemented on several intents that accept it, and shape/piece component settings must be nested underconfig— the inline form validates and is then silently discarded.Notes for review
🤖 Generated with Claude Code