[Phase 16] S11 — Deploy/serving generator contract
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 4/5
- Tiempo estimado
- 3-5 días
- Aptitud para principiantes
- 30/100
Línea de trabajo
Start with the S11 section of docs/roadmap/phase-16-trust-surface-hardening.md (lines 613-634) and the deploy generator's generate_deploy_config(), then compare the manual's TGI and HF Endpoints sections against what the generator emits. The issue spans four linked units and a bilingual EN/TR manual, so begin with the golden-test harness the Plan describes. Done when the exit criteria pass: manual commands match real output, the --output existing-dir case returns success=False, and the compose file has a non-latest image and read-only /data mount.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Roadmap · Phase 16, step S11 · size M · 4 unit(s) · planned in
docs/roadmap/phase-16-trust-surface-hardening.md:613-634
Summary
One subcommand's contract in four layers — what it accepts, what it emits and what it claims to do. The manual documents a TGI output of tgi-launcher.sh + Dockerfile; the generator returns a single docker-compose document. Three auto-detection claims have no implementation, and the manual's "override any auto-detection with explicit YAML" contradicts its own Configuration section and cannot be implemented: ForgeConfig forbids extra keys and has no deployment: block.
Units
| Unit | Tracked by (October 2026 review) |
|---|---|
F-W20260729-CLI-10 |
#259 · #260 · #435 · #483 · #612 · #618 · #786 · #815 |
F-W20260729-CLI-14 |
#259 · #260 · #483 · #567 · #612 · #618 · #786 · #815 |
F-W20260729-CLI-15 |
#259 · #260 · #483 · #612 · #618 · #705 · #786 · #815 |
F-W20260729-CLI-16 |
#80 · #259 · #260 · #483 · #612 · #618 · #786 · #815 |
Plan
- Bind all four layers with one acceptance mechanism: golden tests comparing the manual's fenced blocks against real
generate_deploy_config()output.
Exit criteria
- Every deploy command in the manual runs in a temporary checkout, and the resulting tree and the quoted snippets match, in English and Turkish alike.
- A negative test pins
--output <existing dir>→success=False. - Absolute and relative local paths to HF Endpoints are config errors with no side effects.
- A parametrized accepted/rejected flag matrix per target holds; TGI rejects port 65536; input + output budget ≤ the declared context window.
- The generated compose file parses to a non-
latestimage and a read-only/datamount.
How to deliver
- One root-cause family, committed on its own; then an Opus review round and a Sonnet review round, each with verified findings fixed and committed before the next step begins.
- A reproducer that is red before the fix and green after; the full gauntlet from
CLAUDE.mdpasses under./.venv/bin/python. - Every English documentation edit ships with its Turkish mirror in the same commit; a new or renamed audit event gets its EN and TR catalog rows in the same PR.
- A step that grows a deferred module carries its
budget_historyjustification in the same diff; a widened guard rolls out non-strict first, then flips. - Commit bodies cite
Absorbs F-W20260729-…; the CHANGELOG[Unreleased]section gets an entry only for a change a user or library consumer can observe (decision C-20).
Planned in docs/roadmap/phase-16-trust-surface-hardening.md (read at f94595f). Unit IDs (F-W20260729-…) come from the 2026-07-29/30 full-project review; the issue numbers next to them are the October 2026 review's records of the same defects.
- Lenguaje dominante
- Python
- Estrellas
- 9
- Forks
- 1
- Merge medio
- 4 h 3 min
- PR fusionados (30 d)
- 3
Preparar el entorno
- Incluye un Dockerfile o un archivo de Docker Compose
- Tiene una plantilla de pull request
- Leer la guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de HodeTech/ForgeLM
-
area: dev-tooling bug severity: low source: roadmap wave: 4
Dificultad 2/5 1-3 horas Aptitud para principiantes 70/100
-
area: site bug good first issue severity: low source: review-2026-09 wave: 4
Dificultad 2/5 1-3 horas Aptitud para principiantes 66/100
-
documentation good first issue severity: medium source: review-2026-09 wave: 3
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
-
documentation good first issue severity: low source: review-2026-09 wave: 4
Dificultad 1/5 1-3 horas Aptitud para principiantes 80/100
-
documentation severity: medium source: review-2026-09 wave: 3
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
Todos los issues de HodeTech/ForgeLM
Issues similares
-
Dificultad 1/5 Menos de una hora Aptitud para principiantes 60/100
521xueweihan/HelloGitHub#3924 ·
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 67/100
wilbowes/EchoMuse#869 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
Dificultad 1/5 Menos de una hora Aptitud para principiantes 85/100
-
Claiming namespace `jft63`Abiertonamespace operations
Dificultad 1/5 Menos de una hora Aptitud para principiantes 72/100
EclipseFdn/open-vsx.org#14043 ·
Los mantenedores suelen responder en 1 día
-
test: TestServeUntilStale races the server's close against the client's sendall (BrokenPipeError under load)Posiblemente ocupada @evoludigit la tomó hoy. Abierto
Dificultad 1/5 Menos de una hora Aptitud para principiantes 89/100
Los mantenedores suelen responder en 1 día