| name | layer-1-constraints |
| description | Converts design guidance into enforceable style constraints for the active case. Use when the work needs `style-constraints.md/json`, when the user asks to turn guidelines into implementation-facing rules, or when storyboard / beatboard work needs a strict visual baseline.
|
Layer 1 Constraints
Turn design guidance into enforceable style constraints that later layers can actually check.
Core Pipeline: Verify constraint sources -> Load design intent -> Translate into rule families -> Write constraints -> Validate enforceability
Mandatory Rules
Serial Execution & Gate Discipline
- Do not write
style-constraints.* until the design guideline and a meaning source are both verified.
- Every rule written here must be enforceable later by storyboard review, beat review, or implementation QA.
- Explicit user-provided guideline rules always override inferred optimizations.
- Constraints may sharpen the baseline, but must not rewrite the brand, tone, or visual family.
- Do not mix operational product claims into this layer. This layer governs look, motion, hierarchy, and fidelity.
Source Precedence
${PROJECT_DIR}/output/<case-slug>/00-input/design-guideline.md
${PROJECT_DIR}/rules/design/*.md and brand tokens already stored in the repo
- Lane-specific meaning source:
- Heavy lane:
${PROJECT_DIR}/output/<case-slug>/01-translation/core-brief.json
- Script-first short asset case:
${PROJECT_DIR}/output/<case-slug>/00-input/product-context.md plus the approved 01-script/script-outline.json when available
Artifact-First Output Rules
- Source of truth:
${PROJECT_DIR}/output/<case-slug>/02-constraints/style-constraints.json
- Human-readable companion:
${PROJECT_DIR}/output/<case-slug>/02-constraints/style-constraints.md
- Do not say constraints are complete until both files exist and the JSON contains every required family.
Resource Manifest
References
| Resource | Path | Purpose |
|---|
| intake contract | ${PROJECT_DIR}/skills/shared/intake-contract.md | Frozen input expectations |
| Lucius brand guideline | ${PROJECT_DIR}/rules/design/lucius-brand-guideline.md | Brand-level baseline |
| Lucius application rules | ${PROJECT_DIR}/rules/design/lucius-brand-application-rules.md | Repo-specific application guidance |
| Lucius brand tokens | ${PROJECT_DIR}/rules/design/lucius-brand-tokens.json | Machine-readable color / type tokens |
Workflow
Step 1: Verify Constraint Sources
GATE: ${PROJECT_DIR}/output/<case-slug>/00-input/design-guideline.md exists, and at least one meaning source exists for the case.
EXECUTION:
- Read the frozen
design-guideline.md.
- Check for the best available meaning source in priority order:
01-translation/core-brief.json
- approved short asset
01-script/script-outline.json
- frozen
00-input/product-context.md as a fallback baseline only
- Record which source will anchor the constraints.
CHECKPOINT:
## Step 1 Complete
- [x] `design-guideline.md` verified
- [x] Meaning source selected for this case
- [x] Constraint output paths identified
- [ ] Next: auto-proceed to Step 2
Step 2: Translate Guideline Into Rule Families
GATE: Step 1 complete; design guideline and meaning source are loaded.
EXECUTION:
- Convert the guideline into enforceable rule families:
hardConstraints
allowedOptimizations
prohibitedDeviations
layoutRules
motionRules
typeRules
colorRules
- Pull in repo-level brand rules only where they clarify or harden the user's intent.
- Reject optimizations that would visibly change the brand family instead of refining it.
CHECKPOINT:
## Step 2 Complete
- [x] Constraint families drafted
- [x] Brand-level rules reconciled with case guideline
- [ ] Next: auto-proceed to Step 3
Step 3: Write Constraint Outputs
GATE: Step 2 complete; all required rule families are drafted.
EXECUTION:
- Write
${PROJECT_DIR}/output/<case-slug>/02-constraints/style-constraints.md.
- Write
${PROJECT_DIR}/output/<case-slug>/02-constraints/style-constraints.json.
- Ensure the JSON includes every required family and uses concrete, reviewable language.
CHECKPOINT:
## Step 3 Complete
- [x] `style-constraints.md` written
- [x] `style-constraints.json` written
- [x] Required JSON families present
- [ ] Next: auto-proceed to Step 4
Step 4: Validate Enforceability
GATE: Step 3 complete; both constraint files exist.
EXECUTION:
- Re-read the JSON and ask whether each rule can be checked later by storyboard review, beat review, or QA.
- Remove vague aesthetic language that cannot be enforced.
- Confirm the rule set preserves the brand baseline while leaving only minimal, explicit room for optimization.
CHECKPOINT:
## Step 4 Complete - Constraints ready
- [x] Constraint rules are enforceable downstream
- [x] Brand family preserved
- [x] `style-constraints.*` ready for heavy and short lane use