Stop copying a previous build's output, and point at the new docs site !4

merged merged by cmc on 2026-08-30 16:21 UTC · krz/orgo:build-output-and-docs-home into main

Discussion

cmc

Two changes, both wanted before the next release.

Issue #3 — a previous build's output is copied as assets. excluded_dirs drops the output directory from discovery only when it sits inside the source. Build into the source (-o _site, as the deploying guide does) then preview elsewhere (-o /tmp/preview, as the auditing guide does) and the first site is copied into the second — 2 assets became 21 on orgo's own docs, and the preview held a stale nested copy of the whole site.

Discovery now prunes any source directory holding an .orgo-cache.json. Every build writes that manifest into its output unconditionally — including under --no-cache — so it marks a directory as output rather than content, and no new config key is needed to say so. That is option 1 from the issue; option 2 ([build] exclude) would add configuration surface for a case orgo can already identify on its own.

Verified on this repository: orgo build docs -o /tmp/x --no-cache goes from 21 assets and 620K to 2 assets and 324K, with no nested _site. Regression test in tests/incremental.rs reproduces the two-build sequence.

The docs site moved to https://orgo.krz.sh, served from this repository's pages branch. homepage in Cargo.toml and all 25 README links follow it; each was checked for a 200.

Also repairs is_excluded and is_hidden, whose doc comments had been interleaved by an earlier edit — is_excluded was documented by a sentence fragment.

213 tests pass; clippy clean with -D warnings.