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:
@@ -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
|
reachable, and a synthetic `smoke-<ts>` id round-trips through
|
||||||
hide → list → restore → list.
|
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)
|
## Session milestones — 2026-04-24 (the "tooling day" + housekeeping pm)
|
||||||
|
|
||||||
Morning / early afternoon — the original tooling day:
|
Morning / early afternoon — the original tooling day:
|
||||||
|
|||||||
Reference in New Issue
Block a user