coverage

What opchain knows.

Every oc-stack-forge pack opchain ships, grouped by what role it plays in the dispatch graph. Languages have a canonical test-runner / build / lint command. Frameworks attach to a language pack. Mobile packs dispatch through a release checklist instead of executable commands. Deploy-targets are the leaves of the dispatch graph — the hosting providers a language / framework / mobile pack can land on.

Languages

Top-level toolchains. Each emits a skills.coverage.<id>.enabled flag and ships with a canonical test / build / lint command set.

Frameworks

Application frameworks layered on a language pack. Inherit the language's test / build / lint command set; oc-stack-forge picks them when the workload signal matches the framework profile.

Mobile

Mobile platforms. oc-stack-forge dispatches these through the dispatchMobile() envelope — the ref doc is rendered as a release checklist (App Store review, Play Console rollout, EAS Submit) rather than executed as commands. There is no mix test-equivalent for an app-store submission.

Deploy targets

Hosting providers that language / framework / mobile packs can target. No coverage flag is emitted — deploy-targets are sub-selections under another offer, not top-level coverage units. oc-deploy-ops uses these to pick the right provider section of its SKILL.md.

Vector databases

Vector stores that oc-rag-forge picks from when designing a RAG or semantic-search app. Each emits a skills.coverage.<id>.enabled flag. They are leaves of the dispatch graph — no language/framework edges — selected by retrieval needs (scale, latency, ops, cost), not by toolchain.

How to use

Every pack ships with a reference doc in skills/oc-stack-forge/packs/<id>/ covering when to pick it, the canonical tooling, default deploy targets, and gotchas. Click any pack name above to jump to the source on GitHub.

Adding a pack is one pack.yml + one ref doc. See CONTRIBUTING.md for the contract. The scripts/gen-stack-packs.mjs validator runs on every build, so accidental schema drift fails CI rather than silently breaking oc-stack-forge's recommendations.