# @spacefast/build-output

> The spacefast.buildoutput.v1 contract and the classification manifest adapters emit for the Spacefast CLI classifier.

Latest version **0.5.0** (published 2026-09-29) · MIT license · 0 weekly downloads

## Install

```sh
npm install @spacefast/build-output
pnpm add @spacefast/build-output
yarn add @spacefast/build-output
bun add @spacefast/build-output
```

## Health

**Score 60/100 (C)** — status: active.

Positive: esm support; no vulnerabilities; recently updated; high maintenance score.

Warnings: low downloads; no types; pre 1.0.

## Facts

| | |
|---|---|
| Version | 0.5.0 |
| Published | 2026-09-29 |
| First published | 2026-08-21 |
| Weekly downloads | 0 |
| License | MIT |
| TypeScript types | none |
| Module format | ESM |
| Node | >=20 |
| Dependencies | 1 |
| Unpacked size | 42.8 KB |
| Known vulnerabilities | 0 |
| Install scripts | no |
| Maintainers | bi |

## Links

- npm: https://www.npmjs.com/package/@spacefast/build-output
- Repository: https://github.com/spacefast/monorepo
- Homepage: https://github.com/spacefast/monorepo#readme
- Issues: https://github.com/spacefast/monorepo/issues
- npm.io page: https://npm.io/package/@spacefast/build-output

## Dependencies (1)

- [zod](https://npm.io/package/zod.md) ^4.4.3

## Recent versions

- 0.5.0 (latest) — 2026-09-29
- 0.4.1 — 2026-09-10
- 0.2.2 — 2026-08-28
- 0.0.26 — 2026-08-22
- 0.0.25 — 2026-08-21

## README

# @spacefast/build-output

The two on-disk contracts of Automagic Publish, defined once and imported by
both sides:

- **`spacefast.buildoutput.v1`** — the manifest describing what a build
  produced: static tree with content hashes, immutable assets, the worker
  bundle, route claims, prerenders with their revalidation facts, route rules,
  tag→path index, capabilities, env var _names_, and Durable Object cache
  seeding. Loaded with `loadBuildOutput(path)`.
- **Classification manifest** (`.spacefast/build.json`) — the shared fact
  format adapters emit and the CLI classifier consumes: routes and their
  framework-declared render classes, middleware matchers, route rules,
  prerendered files, and implicit endpoints. Loaded with
  `loadClassificationManifest(path)`.

Adapters emit **facts only** — how the framework built the app — never
platform policy. Serving decisions belong to the classifier and the platform.

Both loaders are fail-closed and answer a three-way question: `null` means the
file does not exist, a parsed document means it validated in full, and
anything else — unreadable, malformed JSON, an unknown schema version, or a
shape violation — throws a `ContractFileError` whose `reason` says which.

---
_Source: https://npm.io/package/@spacefast/build-output · Machine-readable twin of the npm.io package page. Health data is recomputed on every publish._
