Skip to content
sarr-io edited this page Jun 15, 2026 · 16 revisions

Shapes

Zinc stores raw shape bytes and uses Circuitry to confirm shape facts.

A Circuitry file is YAML. Zinc does not require JSON, universal values, type labels, or package-specific output formats.

Shape bytes

When Zinc runs a shape, it stores:

  • the shape file bytes as request bytes
  • the package result bytes as result bytes
  • the fragment identity for that exact work

Confirmed shape facts

Circuitry can confirm:

  • the format field
  • required shape fields
  • visible values requested by the shape
  • visible values produced by the shape
  • local values used by each action-part
  • unresolved references
  • duplicate producers
  • cycles in the value flow

Zinc stores the raw bytes and uses those facts to build package requests.

Why this design exists

Shape syntax and variable visibility belong to Circuitry. Zinc should not reinterpret those facts as package behavior.

Keeping the bytes intact makes inspection straightforward: the same file that was confirmed is the same file Zinc stored.

Design reason

Circuitry confirms shaped YAML. Zinc stores exact bytes and package request facts.

Clone this wiki locally