docs-core 0.1.1

Rust docs pipeline core: CommonMark+GFM to static HTML with astro-island-compatible island emission, so a Rust shell hydrates the estate's existing SolidJS bundles. Consolidates Tachyon + docs-pipeline + the starlight-* stack (ADR-0004 §2.5)
Documentation
[package]
name = "docs-core"
version = "0.1.1"
edition = "2021"
rust-version = "1.85"
authors = ["Wyatt Au <wyatt_au@protonmail.com>"]
license = "MIT OR Apache-2.0"
repository = "https://github.com/WyattAu/docs-core"
description = "Rust docs pipeline core: CommonMark+GFM to static HTML with astro-island-compatible island emission, so a Rust shell hydrates the estate's existing SolidJS bundles. Consolidates Tachyon + docs-pipeline + the starlight-* stack (ADR-0004 §2.5)"
readme = "README.md"
keywords = ["markdown", "ssg", "islands", "documentation", "static-site"]
categories = ["text-processing", "web-programming"]
exclude = [".github/", "supply-chain/"]

# Layer model: docs/layers.md in WyattAu/engineering-standards.
# L2 — domain: composes the existing L2 `docs-pipeline` vocabulary's problem
# space; independent of the UI stack (ADR-0004 §2.5).
[package.metadata.layers]
tier = "L2"

[dependencies]
pulldown-cmark = { version = "0.13", default-features = false, features = ["simd", "html"] }
thiserror = "2"

[lints.rust]
missing_docs = "deny"
unsafe_code = "deny"

# Content discipline (mirrors the estate's decoder pattern): Markdown is
# repository content, still untrusted input. Rendering is total — malformed
# documents produce typed errors or best-effort HTML, never panics. Test
# targets lift these at file level with justification.
[lints.clippy]
unwrap_used = "deny"
expect_used = "deny"
panic = "deny"
indexing_slicing = "deny"
undocumented_unsafe_blocks = "deny"

[profile.release]
lto = "thin"
codegen-units = 1
strip = true