Skip to content

Releases: lavallee/artoo

artoo 0.4.0

Choose a tag to compare

@lavallee lavallee released this 12 Aug 10:42

presentation becomes a first-class kind, with a real deck library behind it.

Added

  • presentation as a first-class kind. A deck is a different reading mode from an article — one frame at a time, an act structure, speaker notes, a landscape page when printed — not a styled article. artoo init --kind presentation now stamps a working three-slide deck. It was already the fourth most used kind in the wild while being rejected by validation, so every deck reported a red mark on artoo status forever.
  • artoo-deck, the second built-in site library. Chrome, slide machinery, a small content vocabulary, and a landscape print stylesheet, vendored and hash-pinned like any library. Navigation reads structure from the markup (data-act, data-short, .deck-notes) rather than from configuration, and degrades to a complete printable document with JavaScript off.

Fixed

  • Kind-aware scaffolding, which DESIGN.md described and init did not do. kind previously reached the starter page only as a kicker string; every kind produced the same article. It now selects both the skeleton and the library.

Every class in artoo-deck is prefixed deck-, and a test enforces it. The prefix is load-bearing rather than cosmetic: chrome and content share one stylesheet, and an unprefixed .bar fixed-header rule will set height: 46px on an SVG <rect class="bar"> and silently collapse every bar in a chart.

Full changelog: v0.3.0...v0.4.0

artoo 0.3.0 — the flip roundtrip, both directions

Choose a tag to compare

@lavallee lavallee released this 25 Jul 12:39

The notebook⇄artifact loop closes: 0.2.0 read the notebook back out; 0.3.0 generates from it and routes feedback into it. Both verbs activate when flip (≥ 0.10.1) is present and degrade cleanly when it is absent.

Added

  • artoo generate notebook-report --notebook <path> [--out <dir>] — the read-direction generator, fully deterministic (no model calls). Renders the notebook's current draft (or an honest skeleton from the flip-render/1 projection) with the provenance panel, claim anchors, and a vintage-stamped colophon. Regeneration is idempotent; the notebook stays canonical — hand edits belong there, and the page says so.
  • artoo feedback <artifact> "<text>" [--claim C7 | --source A3] [--as-log] — the reverse direction. Feedback enters the attached notebook as a flip question (or log event) keyed to verified stable ids; a private work/feedback.jsonl breadcrumb records the routing; site/ is never touched.
  • A conservative built-in Markdown→HTML converter for the flip-draft subset, with documented limits.
  • [research] notebook may now point outside the artifact directory (relative only, never overlapping site/) — the read direction renders from a canonical notebook that legitimately lives elsewhere.

Full changelog: v0.2.0...v0.3.0

artoo 0.2.0 — the flip roundtrip, read half

Choose a tag to compare

@lavallee lavallee released this 24 Jul 22:54

artoo now reads an attached flip notebook back out — activating when flip (≥ 0.10) is on PATH (or pinned via ARTOO_FLIP_BIN) and degrading silently when absent.

Added

  • Provenance ingestion: artoo provenance <artifact> and every non-dry artoo build run flip export json and land the policy-filtered flip-render/1 projection at site/data/provenance.json; the notebook uid+updated are recorded in artifact.toml as the render vintage. flip's visibility / source-trail policy is never bypassed unless the manifest opts in.
  • Provenance panel + notebook-aware colophon (artoo-kit 0.3.0): sources with grades and independence, claims with status and verification-method badges, notebook vintage and generated stamp — data-driven, self-contained, renders nothing without a projection.
  • Claim anchors: bracketed flip ids ([C7]) in prose become stable anchors linking into the panel, client-side, code blocks untouched.
  • Staleness: artoo status reports fresh / stale / never-rendered / unknown against the live notebook manifest.
  • Deploy gate: artoo deploy blocks on flip doctor --json ERROR findings (--allow-doctor-errors overrides).
  • site/data/*.json validation in status/build; kit favicon; kit README (SVG token-color gotcha, chart guidance).

Changed

  • DES-governed light editorial starter with a private work/design-brief.md on init; explainer planning starts from the reader decision and evidence limits.

Full changelog: v0.1.0...v0.2.0

artoo 0.1.0

Choose a tag to compare

@lavallee lavallee released this 10 Jul 22:29

First public release. Install with uv tool install artoo-artifacts — the command is artoo (the bare PyPI name is blocked by a confusable collision with the abandoned ar_too).

artoo generates and manages artifacts — self-contained HTML mini-sites that pair presentation with the research backing it.

  • Artifacts live anywhere: an artifact.toml in any repo; one repo can hold many
  • Deny-by-default deploy firewall: research material never ships
  • Deploy adapters: github-pages (detects docs / workflow / branch modes live), rsync named targets, command escape hatch
  • Site libraries vendored with provenance (name + version + hash); built-in artoo-kit
  • Workers delegate to local agent CLIs (codex, claude) — no API keys in core
  • artoo generate explainer: multi-page repo explainers with deterministic inventory, per-area analysis, diagrams, and an honest colophon

Proven on day one against somm: somm explained.

Full changes: https://github.com/lavallee/artoo/blob/main/CHANGELOG.md