[package]
name = "cb-render-html"
edition.workspace = true
version.workspace = true
license-file.workspace = true
[features]
# ADR-0009: the JS harness is exposed to cb-play's tests behind a feature,
# so the engine stays a dev cost there too and never a shipped one.
js-harness = ["dep:quick-js"]
# ADR-0007 Decision 1: the browser is the renderer, so the rendering path
# has **no third-party dependencies at all** beyond what the game already
# carries. Adding one here needs an argument against ADR-0007 §Decision 3.
[dependencies]
cb-kernel.workspace = true
games-ground.workspace = true
# ADR-0009: an EMBEDDED engine, not `node` — CI runs on rust:1.97, which
# has no node, so requiring one would make our build acquire a runtime
# nobody audits while it scored zero on the only instrument that governs
# dependencies. Optional, and never in the shipped-runtime configuration:
# AM-4a measures 157,202 against 161,000 and has no room for it.
quick-js = { version = "0.4", optional = true }
[dev-dependencies]
# The coverage gate walks the serialized view; nothing else needs it.
serde_json.workspace = true
# CB-WP-0016 T03 drives a real bot game to render at real decision points.
# A workspace crate, so AM-4 is unmoved: it counts third-party code.
# `scenarios` carries GroundState::setup, which the walk needs to deal a game.
cb-game-runtime = { workspace = true, features = ["scenarios"] }
games-ground = { workspace = true, features = ["scenarios"] }
quick-js = "0.4"
[lints]
workspace = true