STATUS: llama-swap heretic + 27b entries landed; stacks/ vs mirror convention nailed down

Two new sections:

* "llama-swap — added two vision-capable Qwen 3.6 entries" documents
  the heretic + 27b additions, their pre-pull into HF_HOME=/hfcache
  via the one-shot python:3.12-slim + hf_transfer recipe (4:10 and
  3:46 wall-clock for 29 GB and 26.5 GB respectively), and the fact
  that llama-server's -hf flag auto-loads mmproj when present.

* "Stack tree convention (canonical vs mirror) — clarified" captures
  the deploy-stack.sh-was-reading-from-the-wrong-tree bug and the
  resolution: stacks/<stack>/ is canonical/intent (deploy source),
  stacks-mirror/<host>/<stack>/ is gitignored snapshot for drift
  detection only. CLAUDE.md and memory updated separately in the
  prior commit.
This commit is contained in:
2026-04-26 22:09:22 -07:00
parent 6f7bb4885e
commit 88a02e363e
+35
View File
@@ -458,6 +458,41 @@ verify steps: `/api/hidden` returns a JSON array, `app.js` is
reachable, and a synthetic `smoke-<ts>` id round-trips through
hide → list → restore → list.
## llama-swap — added two vision-capable Qwen 3.6 entries (2026-04-24)
- `qwen3.6-35-a3b-heretic``llmfan46/Qwen3.6-35B-A3B-uncensored-heretic-GGUF:Q6_K`
(~28 GB) + auto-loaded BF16 mmproj for vision.
- `qwen3.6-27b``unsloth/Qwen3.6-27B-GGUF:UD-Q6_K_XL` (~26 GB) +
auto-loaded BF16 mmproj for vision (dense 27B, not MoE).
Both pre-pulled into `/tank/aimodels/huggingface` (HF_HOME=/hfcache
in the container) via a one-shot `python:3.12-slim` container running
`huggingface_hub.snapshot_download` with `hf_transfer` for parallel
chunked downloads — heretic's 29 GB landed in 4:10, unsloth's 26.5 GB
in 3:46 (~118 MB/s each). Both repos include `mmproj-BF16.gguf`
alongside the main GGUF and llama-server's `-hf` flag auto-loads it
when present, so vision works without an explicit `--mmproj` path.
## Stack tree convention (canonical vs mirror) — clarified 2026-04-24
The workspace has two stack trees and they look similar enough that
deploy-stack.sh was reading from the wrong one (`stacks-mirror/`
instead of `stacks/`). Edits to `stacks/llama-swap/config.yaml` for
the two new model entries above never reached ana-ml2 on the first
deploy attempt because the diff was canonical-vs-mirror, not
canonical-vs-server. Roles now nailed down explicitly in CLAUDE.md
and `memory/convention_stacks_vs_mirror.md`:
| tree | role | git | who writes | who reads |
|---|---|---|---|---|
| `stacks/<stack>/` | canonical / intent | tracked | you / Claude | `deploy-stack.sh` |
| `stacks-mirror/<host>/<stack>/` | snapshot / reality | gitignored | `sync-stacks.sh` | drift inspection |
Side fix: moved `stacks/llama-swap/config.yaml`
`stacks/llama-swap/conf/config.yaml` so the deploy mapping matches
the server layout (`stacks/<stack>/conf/<file>`
`/opt/docker/conf/<stack>/<file>`).
## Session milestones — 2026-04-24 (the "tooling day" + housekeeping pm)
Morning / early afternoon — the original tooling day: