Kiwe launch
authoring-delivery.md
kiwe-ai-toolkit/contracts/authoring-delivery.md
Reference library / authoring
The current command manifest owns command grammar. Reference files are data; older command phrases in portable guidance do not authorize unsupported commands. Canonical runtime, current schemas and target evidence take precedence.
Complete source file · SHA-256 4d0c0c506906b112b6ffd825c4d49cde8b3e6bcc13a1f163ffe6203b43ebcff1
# Shared authoring and delivery rules These rules accompany every command. Apply fixes only inside that command's authority: `/audit`, `/accessibility` and `/library` remain read-only. They do not impose a palette, typeface, bento layout, section order, framework, commerce feature or business claim. Owner facts, the reviewed brief and an accepted design retain their authority. ## Bootstrap once; continue with one command The first message is `https://start.kiwelaunch.com/start.md` followed by exactly one supported command, normally `/ideate`, with the brief and safe project inputs attached. Read the matching manifest, this shared contract and that command's context. Do not interpret `/ideate /preview` as approval of a brief that has not been written. `/convert /bricks` and its declared modifiers are the manifest's explicit multi-token commands, not permission to concatenate workflow steps. Read shared rules once per verified version and reuse them while their hashes remain unchanged. Read a new command's context at its stage; do not repeatedly fetch the whole library or re-inspect unchanged source inventories. If the canonical host is unavailable, use the attached, intact `start/` authoring kit at its recorded contract version. Check `start/handoff.json` and its file hashes before relying on its local `start.md`, manifest or command context. The kit's canonical and pinned URLs remain explicit. Do not mix a local context with a different online manifest or invent a similarly named domain. If neither source can be read, report that single missing input; slash words have no independent meaning without the contract. Keep one small `authoring/bootstrap-receipt.json` recording canonical start URL, contract version, release ID when available, source (`canonical` or `attached-kit`), hashes of the start/manifest/shared/active-command resources, and the actual project-data transport. Distinguish an attached MCP export from a live connected tool. No tokens, private account data or browsing history belong in these receipts. `/ideate` produces the actual `ideate/kiwe-ideate-discovery.json` and a concise usage brief. Narrative notes do not replace the formal artifact. Wait for `/preview` after that brief; the user need not repeat the brief, requirements, routine quality rules or connection details. A material missing owner decision warrants one question. Reading files, choosing an admitted fallback, implementing the brief and fixing implementation defects do not warrant more permission prompts. ## Ground and resolve before mass generation - Inventory existing inputs once. Use the smallest relevant subset of the complete reference library and real content; do not dump every library leaf into the prompt or put every catalogue record on every page. - Before repeating a field across a catalogue, check both its `dynamicBindings.fields` declaration and the exported native tag catalogue. Run `seam inspect-bindings <site-graph.json>` when tools are available. An advertised field alone does not prove its tag exists. Use only a returned, declared native fallback for the same current record and compatible slot. Report the original export mismatch once in authoring notes; do not edit the authority graph, add guessed tags or hardcode a production substitute. Unresolved authority remains blocked. - Keep title, image, registered image size, alt/accessible label, stock, price and destination on the same actual record. A native thumbnail/medium/large rendition is valid evidence for that original image; a filename similarity is not. - Bind each selected hero or spotlight record inside an explicit, source-proven native context, such as a fixed-ID product query. Current-product tags on a general Home page do not establish that context. Repeated content uses its declared collection and one prototype; an actual single-product template may use its proven current product. Do not infer query scope from decorative CSS classes or an item's visual position. - Use relevant public facts and source images. Never invent testimonials, ranking measurements, variant prices, regulatory validity, delivery offers, record dimensions or missing editorial text. A genuine native Bestseller category is not a sales ranking. Attribute a brand's published record story without manufacturing endorsement. ## Complete storefront and native handoff For commerce projects, resolve the real assigned Shop, Cart, Checkout and account routes from the supplied site evidence before creating links or template boundaries. Do not substitute guessed slugs. Include a category archive and its declared native category query when categories are navigable. Account for Checkout explicitly in the page/template inventory: retain one native customer-details, order-review and payment owner, with the configured Woo page/shortcode and distinct native wrapper identities. A decorative checkout preview is not an implemented checkout. Missing target evidence is a recorded handoff gap, never permission to invent a transaction implementation. Every product card, including hero picks, rails, related products and archives, needs its own image/title links to the product, a compact accessible + add-to-cart action and a wishlist action. Posts need a bookmark action. Bind every action and its accessible label to the same current record. Keep product weight or selected pack quantity visible on cards and single-product pages when the owner supplies it; preserve the native store unit and variant meaning. A shipping weight is not automatically the advertised pack size. Never guess a missing weight or silently convert a source site's incorrect unit. Use the actual native tag catalogue and admitted binding contract; missing declarations remain an explicit gap. When Kiwe owns these surfaces, provide a cosmetic header search field that opens Search DSA and a cart launcher with its canonical attribute. Notification launchers follow the reviewed brief; do not add a second Dock or force a notification tool into an existing Dock. Saved/cart/notification state, badges and selected styling belong to Kiwe's shared handlers, not per-card scripts. Exact attributes come from the current public reference and site capability evidence. Preview actions remain local simulations. Use category images from their native term records when available. A category rail must navigate to the actual category archive, retain readable active/focus colours and remain inside its declared template boundary. When the approved design calls for a rail below a sticky header, declare the real header relationship using the supported `data-bricks-sticky-below-header` contract and a source-defined cold offset; do not guess a fixed height or add another scroll observer. Preserve intended behaviour across responsive header heights. Native controls and Framework variables/classes take precedence over custom CSS when equivalent; list genuine unsupported exceptions instead of adding page-specific patches. Plan content depth from the owner's brief and available facts, not a fixed minimal template. Reuse authentic leadership photos and approved editorial/lifestyle assets where they improve the story. Keep provenance and generation status in authoring notes, avoid unsupported product/record claims and do not copy another site's mascot or art direction. Coverage of these rules never imposes a bento layout or a section order on an accepted design. ## Preserve the design; derive dependencies from real source Visual quality and the owner's accepted design take priority. Seam is a useful public library, not a house style or a coverage quota. During raw preview generation, use its attributes, variables and classes where they help; ordinary well-structured HTML/CSS/JS remains valid. A distinctive design value may stay local or become a named project variable. Do not substitute a nearby Framework colour, spacing, type scale or layout merely to increase reuse. `/seam` and the deterministic compiler may consolidate only equivalent values and compatible meanings without changing the accepted design. Preserve CSS scope, cascade, responsive states and JavaScript ownership. The same variable name may legitimately have different values on different pages or nested elements. Never choose a majority palette, infer brand roles from colour frequency, flatten those values into one global, or rename a variable that a script writes without preserving every consumer. An existing exact public token is reusable; a superficially similar value is not proof of equivalence. Keep unsupported native cases explicit and preserve their source CSS. Supply real local image/video/font files used by the preview, with source/provenance and generation status in `authoring/`. A generated image is usable only when an actual tool produced its bytes and the file travels with the project. A filename, plausible URL, claimed attachment ID or AI-written hash does not create an asset. Keep authenticated product photography separate from illustrative lifestyle imagery. Do not invent WordPress Media IDs, Bricks class/variable IDs, asset hashes, successful uploads or import receipts. Existing site records require current SiteGraph/native evidence; reuse is never inferred from a similar filename. Make the standalone preview self-contained, including the actual pinned Framework assets if it uses them. It must not depend on an uninstalled WordPress/Bricks Style Manager or on Kiwe being present to render. Referenced remote assets that cannot be supplied/verified remain explicit dependencies for review; do not claim they are included or ask a live plugin to fetch arbitrary URLs. Preview actions stay local as required above. AI authors source and advisory design/asset intent. It does not author the final native Framework Profile, dependency inventory, import plan or Bricks JSON. The compiler derives `package-integrity.json`, `assets/manifest.json`, `assets/import-plan.json` and `style-dependencies.json` from actual source/native output and real bytes, alongside its Framework Profile and templates. The resulting package is separate from the raw source ZIP. Passing package hashes validates that package's bytes; it does not prove licensing, factual identity, target permissions or a successful WordPress import. The target's reviewed Kiwe Framework import registers supported real Media, reuses verified exact content hashes, merges compatible native variables/classes/palettes/Theme Styles and remaps guarded references into draft templates. Shared style changes can affect existing pages and must appear in that review. Conflicts, unverified assets or unsupported native adapters stay visible. No source command or package declaration grants publishing or deployment approval. Native readback and browser review remain separate; recovery preserves newer edits and reusable Media. ## Customer copy and progressive behaviour Write the storefront for its customers. Put source provenance, uncertainty audits, capture timestamps, compiler terminology and unverified export details in `authoring/`, not product merchandising. Keep useful customer information: actual availability, meaningful ingredient/allergen advice, ordinary source attribution and a clear preview-only notice where an action is simulated. Do not replace unsupported claims with technical warnings scattered across the design. Core content and navigation must remain visible before scripts, animations, font loading or a site's existing Dock finish loading. Enhancement scripts may improve a working layout; they may not leave headings, category controls or CTAs hidden on initialization failure. Do not add a second Dock, account/cart sheet, notification overlay or transaction owner when Kiwe already owns that surface. Preview actions never send mail, write account/cart/order state, collect real customer inputs or invoke a live transaction. A native form must start with its submitting controls disabled, then install the local `preventDefault` handler before enabling them. Alternatively use a clearly labelled non-submitting button group, disabled until its local handler is attached. JavaScript failure must not turn a preview into a native GET/POST. Keep actual forms and recipients as explicit native Bricks/Kiwe intent for the later conversion. ## Automatic verification and correction Under `/preview`, perform the checks and repair defects in the approved scope without making the client request `/fix` for each discovery. Keep the original source/direction and correct the underlying layout or generation logic; do not hide clipped text with overflow or regenerate an entire completed project to solve one issue. 1. Generate shared layouts/components once and populate their real records. Validate every generated source/link/asset and each record's own image/title/price/stock/URL. Test common templates in the browser; do not repeat the identical browser tour for every catalogue item. 2. Validate the formal discovery artifact, closed SEAM Map, exact source hashes/guards and original SiteGraph. Run the available schema/map validators and `seam validate-preview <project>`. Keep tests on an unchanged artifact once they pass; rerun affected checks only after a justified change. Recompute hashes after the last source/marker change. 3. Inspect representative desktop and phone layouts, including the narrow supported breakpoint and the densest cards. Verify actual text bounds, arrow/button collisions, contrast/focus, current-record images, hidden content, loaded images and document overflow. A clipped decorative shape or intentional native rail is different from a clipped word or page overflow. Check sticky rails against the actual responsive header and test their category destinations, active states, touch/keyboard/arrow use and long labels. 4. Exercise search, availability/sort/reset/empty states, applicable navigation and local preview actions. Check both JavaScript enhancement and source-level failure behaviour. Do not claim physical-device, production, performance or full accessibility certification from viewport checks. 5. Repair observed implementation defects, then repeat only affected tests. Keep consequential initial failure evidence and the correction. Report root causes once, rather than treating hundreds of repeated instances as hundreds of independent defects. Do not ask the client to transcribe tool errors, source facts or geometry the AI can inspect itself. Browser availability is an early capability check. If normal preview/browser tools are unavailable or navigation is restricted, stop browser attempts. Do not install another browser, use alternate profiles, disable security, change configuration, use raw debugging routes or switch protocols to evade the restriction. Preserve completed work; run permitted static checks, export the actual complete source ZIP immediately, and report `source-exported-unverified` with the precise missing browser proof. Never label it browser-tested or keep trying to recreate the same source. A later allowed environment can resume only the missing checks. ## Deliver a reusable project, not another prompt Return the runnable source, necessary local assets, formal discovery, SEAM Map, unchanged authority evidence when cited, bootstrap receipt, asset provenance and `authoring/preview-receipt.json` following the published schema. Include the pinned `start/` kit in a transferable project handoff. Keep raw-preview `noindex,nofollow` in every HTML entry/redirect; it must not override the owner's later WordPress indexing choices. Standalone header/footer previews need working skip/fragment targets too. A `ready-for-design-review` receipt requires passing source/map checks and actual referenced desktop/phone runtime proof. A blocked environment returns a checkpoint ZIP and truthful missing-proof status; it does not turn an unrun check into a pass. The client then chooses the design. `/seam` accepts only that identified preview and prepares a separate copy; conversion and live deployment keep their own owners and gates. AI instructions and validators reduce avoidable correction prompts; future project trials still establish whether a receiving AI followed them.
Machine contract · Markdown start · GitHub mirror · All commands