BOHICA-LABS / BOHICA-LABS/vsdd-factory

Resource-management opacity: model selection, cache lifetime, and scheduling are host-owned with no control surface

Open
#417 0 comments 0 reactions 0 assignees View on GitHub
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

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.