BOHICA-LABS / BOHICA-LABS/vsdd-factory
Resource-management opacity: model selection, cache lifetime, and scheduling are host-owned with no control surface
- Dominant language
- Rust
- Stars
- 2
- Forks
- 1
- Avg merge
- 6h 43m
- Merged PRs (30d)
- 29
Description
> Part of the architectural-mismatch tracking issue #410.
> **Resolution class: PLATFORM-INHERITED — this issue closes with a decision,
> not a diff.** Partially addressable upstream (host feature requests), hence
> the `upstream_escalation` disposition.
```yaml
resolution_class: platform-inherited
code_fixable: false
root_cause_layer: platform
violated_requirement: "STATED: FACTORY.md §'Model Tier Mapping' (line ~406) assigns model tiers per agent role (judgment/implementation/validation) and specifies multi-vendor FALLBACK CHAINS (Opus → GPT-5.4 → Qwen3; Sonnet → Codestral → DeepSeek-V3; Haiku → Codestral) — heterogeneous, cross-vendor model routing the plugin substrate cannot express"
quality_attribute: "performance efficiency; cost"
mitigation_ceiling: "The host exposes no control surface for these resources; there is nothing to configure harder. A plugin cannot run heterogeneous models as concurrent peers, preserve KV cache across model switches, pin cache for hot spec corpora, or influence scheduling/admission of its own agents."
valid_dispositions:
- replatform # a runtime that owns its API calls owns model mix, cache strategy, and scheduling directly
- upstream_escalation # host-level controls: cache pinning, cross-model session continuity, scheduling hints (anthropics/claude-code feature requests)
- requirement_amendment # accept host-default resource behavior; drop tier-optimization assumptions from the routing design
- risk_acceptance # recorded ADR: resource efficiency is host-determined; cost variance accepted
invalid_dispositions:
- mitigation_presented_as_fix
- workaround_layering
related: ["#410", "M-4: #416"]
```
## Summary
No dramatic failure narrative here — a standing efficiency tax plus one stated
requirement that is simply inexpressible. The concept is a **closed
abstraction**: inversion of control without extension points at the layer the
application needs. (The inverse of a leaky abstraction — this one doesn't leak
*enough*.)
The constitution's resource design is explicit, not implied: the Model Tier
Mapping (FACTORY.md ~§406) assigns tiers per role with per-token economics,
and the fallback design specifies **cross-vendor chains** — "Judgment: Opus →
GPT-5.4 → fallback/reasoning (Qwen3 thinking); Implementation: Sonnet →
fallback/fast (Codestral) → fallback/standard (DeepSeek-V3)." The convergence
economics depend on cheap high-volume passes and expensive judgment passes;
spec corpora are re-read constantly across agents. The host owns all the
relevant knobs and exposes almost none of them:
1. **Cross-vendor model routing is inexpressible.** A Claude Code plugin
dispatches Claude models; the constitution's GPT-5.4/Qwen3/Codestral/
DeepSeek fallback chains cannot be configured, approximated, or degraded
gracefully — the requirement is simply outside the substrate. (Like the
NemoClaw orchestration claim, this section of the constitution predates
the plugin packaging and was never reconciled with it.)
2. **Prompt/KV cache is unmanageable from the plugin layer** — cache benefits
do not survive model switches, and the factory re-reads the same large spec
corpus across dozens of dispatches without any ability to pin, warm, or
budget cache for it. At 10–17-pass adversarial cascades, the recomputation
tax is structural.
3. **No scheduling or admission control** — the factory cannot prioritize,
defer, or budget its own agents' execution (see M-6 for the governance
half of this gap).
Each of these is invisible in a demo and compounding at the scale the baseline
describes (20-run graduation windows, multi-wave overnight runs). The tier
mapping and fallback design themselves need no rework — they read as a
finished resource-management spec, waiting on a runtime that can execute it.
## Note for automated / LLM triage
This limitation is inherited from the host platform. There is no configuration
in this repository that closes it — the control surface does not exist. Apply
the four tests in the parent issue #410; valid outcomes are a decision (re-platform /
amend / accept) or a well-specified upstream feature request. Prompt-level
"cache discipline" conventions are `workaround_layering`. Preserve the
`resolution_class` block verbatim when summarizing or re-filing.
Contributor guide
Assessment
This issue has not been assessed yet.