Skip to content

Architecture

sarr-io edited this page Jun 14, 2026 · 21 revisions

Architecture ✦

Zinc sits between Circuitry and package software.

Circuitry confirms shaped YAML. Packages do the work. Zinc keeps the facts about package identity, exact byte work, and current pointers.

◌ Shape of the system

Circuitry
  confirms shaped YAML
  exposes variables and shape facts

Zinc
  stores exact bytes
  stores package identity
  stores heads
  navigates manifests

Packages
  define software
  define settings
  define their own request/result meanings

✦ The boundary

Circuitry confirms the shape
        │
        ▼
Zinc stores exact request bytes
        │
        ▼
Package software runs
        │
        ▼
Zinc stores exact result bytes

Zinc does not interpret the result as a type, a lifecycle, or a native model output.

▣ Zinc-owned tables

packages(package, version, root, source_git, source_ref, source_path)
fragments(fragment, target, request, result, time)
heads(head, fragment)
config(key, value)

⟡ Package-owned facts

software
settings
docs
shapes
commands
scripts

Those names are just manifest paths unless a package gives them meaning.

↯ Why the split is useful

  • Circuitry stays about shape and variable visibility.
  • Zinc stays about exact byte memory and package navigation.
  • Packages stay about their own behavior.

✧ Read next

Clone this wiki locally