<!-- kb-doc-fragment: stack -->
# Substance — `architecture/stack`

**Output path:** `{kbFolder}/architecture/stack.md`

**Topic focus:** the technology stack — languages and their versions, frameworks
and major libraries, the runtime/interpreter, package manager, and the build
toolchain. Describe *what the project is built with*, not how it is deployed.

**Discovery input to read:** the `stack` domain findings from Phase 1
(languages, dependency manifests, lockfiles, runtime versions). Cross-reference
the `testing` findings only for the test-runner dependency.

**Required output:**
- Confidence header on line 1.
- A languages/versions table or list (each fact `[?]`-marked if not directly observed).
- Frameworks & major libraries with their roles.
- Runtime + package manager + build tool.
- No deployment, routing, or schema content — those are other docs.

**Not applicable:** if the project has no identifiable stack (e.g. an empty or
docs-only repo), the topic is *absent* — a certainty, not a low-confidence guess.
Write a **confident** not-applicable stub: line 1 is
`<!-- AUTO-GENERATED by /forge:init — confidence: 100% — status: not-applicable -->`,
then the `# Stack` heading and the one-sentence absence statement `No application
stack detected — this repository contains no build- or runtime-bearing sources.`
Do NOT lower confidence — an absent topic is known with certainty.
