https-deeplearning-ai / https-deeplearning-ai/spec-build-lab

Overlay: six gaps surfaced by the first two clean-room `--env=coding-agent-lab` runs

Abierto
#30 0 comentarios 0 reacciones 0 asignados Ver en GitHub

Nadie ha tomado este issue todavía.

Lenguaje dominante
Python
Estrellas
3
Forks
3
Merge medio
20 h 23 min
PR fusionados (30 d)
6

Descripción

Observed 2026-09-14. Two clean-room subagents generated the Qdrant Edge spec through /generate-spec --env=coding-agent-lab, one against overlay b0d88d6 and one against 58ecfb9. Three defects they found are already fixed in 58ecfb9. These six are not applied — they need their own revision plus a regen that shows the fix landed.

Overlay files: .claude/skills/generate-spec/references/spec-generation-guide.coding-agent-lab.md and its .runtime.md companion.

G1 — The overlay never states the deliverable's shape (highest priority)

The second run reported this as its single biggest judgment call. Nothing in the base guide or the overlay says what artifact a lab build produces. The course's own artifact is a Jupyter notebook — which the lab has no surface for. The run inferred a served web app from runtime facts that only describe how the preview works if you serve something:

One server, port 4000, bound to 0.0.0.0, serving both the page and the API.
Every URL inside the page must be relative … belongs in the spec as a numbered business rule with an acceptance criterion, not as a note.

That language presupposes a page. environments/coding-agent-lab.md §1 and §10 do make a served app the environment's default shape — so the inference was right — but the overlay never says so, and a future run could infer a CLI instead with nothing to stop it. Currently harmless by luck.

Proposed fix — not applied: state the deliverable shape in the rules file, as a default with an escape: the lab's default artifact is a single server on port 4000 serving both a page and its API; a course whose pattern has no user-facing surface may deliver a library plus its test suite, and must say so in §1.

G2 — ADD 2 forbids a co-label that some constraints genuinely need

ADD 2: "It must never also carry a course-demonstrated label."

But "release the speech model before loading the embedders" is independently (a) demonstrated by the course's own helper, with a stated memory-budget reason, and (b) required by the runtime facts ("A spec whose pipeline can hold several models resident at once must carry a business rule releasing one before loading the next"). The run wrote it as "course-demonstrated, reinforced [environment]" — arguably the banned co-label — judging that splitting it into two near-duplicate rules was worse.

Proposed fix — not applied: ADD 2 gains a third form for a constraint both sources independently require, e.g. course-demonstrated, reinforced [environment]. The ban's real target is claiming course provenance for an environment-only fact; it should not forbid recording that both are true.

G3 — ADD 3's AC obligation has no branch for an empty Invariant

ADD 3: "Every ANSWERED or CONSTRAINED dimension's Invariant is exercised by ≥1 acceptance criterion at its new home, or the table states why it cannot be."

The project dimension's Invariant is empty by base §3's own rule ("typically empty for project/data/goal/scope-boundary"). There is nothing to exercise — which is not the same as "cannot be". The run wrote the explanation into the table cell.

Proposed fix — not applied: add the third branch — a dimension whose derived Invariant is empty owes no AC; the table says "Invariant empty" and that discharges it.

G4 — The base title template reads wrongly in lab mode

Base §6 pins # Spec: <Project> — **Standalone Takeaway**. The overlay does not override it, so base wins under precedence rule 2 — but in this mode nobody is taking anything away; the lab fixes the assignment and the learner builds it there.

Proposed fix — not applied: either an OVERRIDE 3 on the title line, or an explicit note that the base title stands and why. Right now it is left to each run to notice and live with.

G5 — The overlay does not carry its own commit, but ADD 3 requires pinning it

ADD 3: "The provenance header pins both the base guide's commit and this overlay's." The overlay states only "Written against base guide 8e44ecb" — it has no self-hash. The run derived it from git log and got the right answer, but that is an inference about repo state, not something the document supplies.

Proposed fix — not applied: say how to obtain it — pin the overlay's commit as reported by git log -1 --format=%h -- <this file> — rather than requiring a fact the file does not contain.

G6 — Unclear whether environments/coding-agent-lab.md may be opened

The rules file says "Both are distilled from environments/coding-agent-lab.md", and OUT OF SCOPE forbids reading certain of its sections as instructions — which implies the file may be opened. The second run did not open it, judging the two overlay files self-contained. If the distillation dropped anything load-bearing, that run silently missed it.

Proposed fix — not applied: state it outright. Recommended: the source doc is provenance, not an input — do not read it during generation; if the overlay is missing a fact, that is an overlay bug to file, not a gap to fill by reading around it.


Related: #28 (base-guide findings from the same runs), #29 (the slides glob). Overlay defects already fixed: 58ecfb9.

🤖 Generated with Claude Code

Guía de contribución

No hay ninguna guía de contribución indexada para este repositorio

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Línea de trabajo

Lee .claude/skills/generate-spec/references/spec-generation-guide.coding-agent-lab.md y su archivo complementario .runtime.md, y después revisa los seis cambios de overlay propuestos y las reglas de precedencia existentes. Ejecuta /generate-spec --env=coding-agent-lab en un entorno clean-room para comparar la especificación generada. Se considera terminado cuando ambos archivos de overlay contienen las seis correcciones acordadas y una regeneración demuestra que cada una se aplica.

Escrito por el modelo de indexación a partir del texto del issue.

Evaluación

Stack tecnológico
markdown
Área
documentation
Tipo de issue
Documentación
Dificultad
3/5
Tiempo estimado
1-2 días
Estado de actividad
Activo
Claridad
Bien especificado
Aptitud para principiantes
76/100

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.