Preserve approved mockups with controlled adjustments and recolorable assets (0.9.4)
This commit is contained in:
@@ -2,9 +2,11 @@
|
||||
|
||||
Use suitable template icons first. For new icons, prefer directly authored SVG/native shapes for simple forms, ImageGen for complex imagery, and external ready icons as a supplement. Choose a recognizable information meaning and keep stroke weight, corners, perspective, optical scale and detail consistent at the intended size. An icon should remain understandable without nearby explanatory prose, or deliberately reuse the same established icon as its counterpart.
|
||||
|
||||
For an approved mockup, preserve the accepted icon identity and styling rather than substituting a different icon from that priority list. If native components/SVG are impractical for faithful reproduction, [C28 requires ImageGen](visual-design.md#elements-that-need-imagegen) for the element. Deliver the project-local picture with a transparent background and one color or a few simple semantic colors, retaining alpha masks/layers, adjustable/fixed palette bindings and actual recoloring evidence. Keep its reference, generation provenance and usable asset in the project. It remains a disclosed picture with color adjustability, not editable internal geometry or an SVG paint-contract icon. The reusable SVG contract below still applies before publishing it as that template/library icon type or using the paint helper.
|
||||
|
||||
## One deliverable contract for all sources
|
||||
|
||||
All routes must support approved whole or partial palette recoloring. Deliver original source, normalized SVG, a paint contract, palette bindings, provenance and preview evidence together. Use stable IDs for semantic parts, explicit fill/stroke attributes and per-channel rules. `palette` permits a semantic token to bind an index; `fixed` preserves an exact literal; `structural` preserves `none`. Unlisted channels preserve their source paint. Shared tokens express shared roles; separate tokens permit independent colors.
|
||||
For reusable adjustable icons, all routes must support approved whole or partial palette recoloring. Deliver original source, normalized SVG, a paint contract, palette bindings, provenance and preview evidence together. Use stable IDs for semantic parts, explicit fill/stroke attributes and per-channel rules. `palette` permits a semantic token to bind an index; `fixed` preserves an exact literal; `structural` preserves `none`. Unlisted channels preserve their source paint. Shared tokens express shared roles; separate tokens permit independent colors.
|
||||
|
||||
Whole-icon coloring means binding every intended adjustable part to one palette index. It never means replacing every matching color in a bitmap. Keep fixed details, white details, opacity, holes, masks, geometry and paint order intact. Validate IDs, explicit source paint, duplicate/missing bindings and palette indices. See [the exact schema](template-interface.md#svg-paint-contract).
|
||||
|
||||
@@ -14,7 +16,7 @@ Keep an exact official mark or evidence image as its original asset when that is
|
||||
|
||||
## Project-local icons
|
||||
|
||||
Keep new materials under the caller's project, outside a locked template snapshot. A local material descriptor contains `schema_version: 1`, `id`, project-relative `path` and `paint_contract`, and a `bindings` array of `{selector, channel, palette_index}`. Paths resolve beside the descriptor. The bindings must cover exactly the contract's palette pairs, and at least one pair must be adjustable. This lets an author add an icon without publishing a new template or modifying vendor files.
|
||||
Keep new materials under the caller's project, outside a locked template snapshot. For an SVG icon consumed by the paint helper, a local material descriptor contains `schema_version: 1`, `id`, project-relative `path` and `paint_contract`, and a `bindings` array of `{selector, channel, palette_index}`. Paths resolve beside the descriptor. The bindings must cover exactly the contract's palette pairs, and at least one pair must be adjustable. This lets an author add an SVG icon without publishing a new template or modifying vendor files. C28 bitmap materials retain their alpha/semantic masks and verified recoloring inputs separately; this SVG descriptor and `--material` route do not automatically support PNG recoloring.
|
||||
|
||||
```sh
|
||||
python /path/to/skill/scripts/paint_asset.py \
|
||||
|
||||
Reference in New Issue
Block a user