macroonz-compiler 0.2.0

Deterministic Rust code generation for procedural macros: plan, render, close, explain, and bind one sealed expansion from declared input.
Documentation
# `trial` — declared rows become one stamped table

This home answers how one authored trial declaration becomes a harness trial-table payload without letting the author claim producer or consumption-target facts.

The payload rides inert in the carrier's stamped seat until a consumer's test target invokes the carrier.
The ordinary build therefore compiles the exported carrier and not the stamp grammar it holds.

## Authority in

An author names the carrier, the stamped table, the suite groups, and the semantic rows the harness will receive.
The exact grammar and construction contracts live beside their capture and public type operations.

The helper attribute is the caller's word rather than a spelling owned here.
A door supplies one [`Grammar`](crate::descriptor::Grammar) to the reading, so a refusal names what the author actually typed.

## Authority that stays outside

The producer's own act arrives through the caller-declared [`Emitter`](crate::descriptor::Emitter).
The rendering composes that authority into generated provenance and origin material, so an authored declaration cannot sign an act performed by the producer.

Revision commitments, callables, budgets, target and toolchain facts, and the clock belong to the consumption target.
They arrive as expressions at carrier invocation, where that target's hygiene reaches its own items.

## Suite and namespace ownership

The suite belongs to its group and every row under that group inherits it.
A row cannot state a second suite that disagrees with the aggregate seat selecting it.

Aggregate seats and row lenses become functions in one stamped module.
The complete payload closes that shared namespace before any token is rendered.

## One parse, two uses

A generated row expression parses its subject and check once, then gives those same informed values to both the row and its executable attachment.
The harness binding can therefore establish agreement over one pair of values rather than over two coincidentally equal parses.

## Composition and ceiling

The descriptor door walks the informed payload through the ordinary request road and places the rendered table in the carrier's stamped seat.
The generated-support gate checks the published schema pair before forwarding that seat to the harness stamp.

This home captures declaration meaning and renders destination-shaped tokens.
It does not judge a trial, derive host facts, prove a published schema is current, or execute the generated table.