// Package apps serves the ZDDC tool HTML files (archive, transmittal,
// classifier, landing, browse, form, tables) on virtual paths in the file
// tree. Each tool is "available" only at directories whose cascade selects
// it (default_tool / dir_tool / available_tools) — see availability.go and
// the .zddc cascade. The markdown editor lives as a plugin inside browse.
//
// Tool HTML resolution is LOCAL-ONLY — no network fetch, no signatures, no
// channels/versions. For an enabled <dir>/<app>.html request the bytes come
// from, in precedence:
//
//  1. A real file on disk at the request path → static handler (operator
//     override; handled by the dispatcher BEFORE Serve is ever reached, so
//     by the time Serve runs no such file exists).
//  2. A member of the site-root config bundle <ZDDC_ROOT>/.zddc.zip, named
//     "<app>.html", read server-side via internal/zipfs (see bundle.go).
//  3. The embedded default baked into the binary at compile time via
//     //go:embed (see embed.go).
//
// To change a tool's HTML, drop a file at the path, drop "<app>.html" into
// .zddc.zip, or rebuild the binary. There is no `apps:` .zddc key and no
// upstream fetch — both were removed in favour of this local model.
package apps
