Skip to content

feat(models): owner-managed model activation over the auto-detected pool - #114

Merged
AlbSar merged 2 commits into
mainfrom
train-2026-08-09-models
Aug 9, 2026
Merged

feat(models): owner-managed model activation over the auto-detected pool#114
AlbSar merged 2 commits into
mainfrom
train-2026-08-09-models

Conversation

@AlbSar

@AlbSar AlbSar commented Aug 9, 2026

Copy link
Copy Markdown
Contributor

Ne (iş özeti)

model-auto-detect bir provider'ın sunduğu modelleri keşfedip hepsini registry'ye kaydediyor — ama owner'ın izin verdiği kavramı yoktu. Ölçüm (2026-08-09, codex oturumu): o3 · gpt-5.5 · gpt-4.1 · o4-mini · gpt-5-mini · gpt-4.1-mini eski nesilleri gpt-5.6 ailesiyle yan yana duruyordu ve AI-planner ilk dogfood koşusunda economy görevine gpt-5-mini atadı.

Kod

  • ModelActivationStore (.deckent/models.db — owner'ın seçtiği konum): amaca-özel SQLite, (provider, modelId) anahtarlı. Kaydı olmayan model AKTİF → kurulum hiçbir projede sessiz daralma yapmaz (opt-in denial list).
  • Enforcement tek kayıt otoritesinde: deaktif model executable registry'den unregister edilir. Yalnızca keşif listesini filtrelemek yetmezdi — cloud modeller bundled katalogdan zaten kayıtlıydı ve planner yine seçebilirdi.
  • deckent models activate | deactivate | activation: yönetim birinci-sınıf yüzey, dosya düzenleme değil (KANUN ci: Bump actions/checkout from 4 to 6 #1 çift-mercek — aynı store hem ürün kullanıcısını hem dogfood'u yönetir).
  • Fail-safe: olmayan/okunamayan store → boş denial set; model keşfi bu özellik yüzünden asla kırılmaz. projectRoot verilmezse store-öncesi davranış birebir korunur.

Brain modelleri etkilenmez: brain_provider/brain_model ayrı çözülür, worker havuzuna girmez.

Gerçek-binary koşumu (owner listesi uygulandı)

Kapatıldı: o3 gpt-5.5 gpt-4.1 o4-mini gpt-5-mini gpt-4.1-mini claude-opus-4-8
Aktif havuz: gpt-5.6-{sol,terra,luna} + claude-{opus-5,sonnet-5,haiku-4-5} · claude-fable-5 brain-only.

Kanıt

12 yeni pin + 30 mevcut auto-detect testi = 42 yeşil · tsc + full lint:gates yeşil · production-inventory baseline +1 (yeni modül, dürüstçe not edildi).

Yeni satır 7075 MODEL-ACTIVATION-001 → VERIFY (G1-only, tek receipt kapsıyor, acceptance uçtan uca karşılandı).

Typed residuals

planner atamasının aktif kümeye karşı doğrulanması · min_tier alanının model-selector'da ölü olması · cross-platform + ölçek facet'leri

🤖 Generated with Claude Code

AlbSar and others added 2 commits August 9, 2026 18:40
model-auto-detect discovers what a provider OFFERS and registers all of it —
there was no notion of what the owner ALLOWS. Measured 2026-08-09 on a codex
session: o3, gpt-5.5, gpt-4.1, o4-mini, gpt-5-mini and gpt-4.1-mini sat beside
the gpt-5.6 family, and the AI planner assigned gpt-5-mini to the first dogfood
run's economy task.

- ModelActivationStore (.deckent/models.db, owner's choice of location): a
  purpose-built SQLite store keyed by (provider, modelId). A model with NO record
  is ACTIVE, so installing this narrows nothing — it is an opt-in denial list.
- Enforcement at the single registration authority: a deactivated model is
  UNREGISTERED from the executable registry, not merely filtered out of the
  discovery list — cloud models are already registered from the bundled catalog,
  so list-filtering alone would leave them selectable by the planner.
- `deckent models activate|deactivate|activation`: management is a first-class
  surface, never a file edit (dual-lens law — the same store governs both the
  product user and our own dogfood runs).
- Fail-safe: an absent/unreadable store yields an empty denial set, so model
  discovery can never break because of this feature. Omitting projectRoot keeps
  pre-store behaviour exactly.

Brain-only models are unaffected: brain_provider/brain_model resolve separately
and never enter the worker pool.

12 new pins (default-active, per-provider scoping, durability, input refusal,
fail-safe lookup, unregister enforcement, both no-op paths) + 30 existing
auto-detect tests green; tsc + no-model-literal clean; production inventory
baseline +1 for the new module, honestly noted.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
New work row 7075 (ECOSYSTEM-001 / PROVIDER), opened on the owner's 2026-08-09
Q&A: model and provider management must be a first-class surface for the product
user, with the same store governing dogfood (dual-lens law), and the store lives
in a project-scoped .deckent/models.db by the owner's choice.

Settled to VERIFY: the row is G1-only and one receipt covers it, and the slice
delivers its acceptance end-to-end — owner activates/deactivates from the CLI
without editing files, only active models reach the routing pool, an absent
record preserves behaviour, and brain-only models never enter the worker pool.
Real-binary run applied the owner's list (7 deactivations). Cross-platform and
scale facets remain unproven and are carried as typed residuals, alongside the
measured planner-bypass and the dead min_tier field.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@AlbSar
AlbSar added this pull request to the merge queue Aug 9, 2026
Merged via the queue into main with commit f2c213c Aug 9, 2026
20 of 23 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant