Skip to content

fix: prevent FE and BE from overwriting the build report - #50

Merged
sametcelikbicak merged 1 commit into
mainfrom
fix/45-build-report-writer
Oct 28, 2026
Merged

sametcelikbicak merged 1 commit into
mainfrom
fix/45-build-report-writer

Conversation

@sametcelikbicak

@sametcelikbicak sametcelikbicak commented Oct 28, 2026 •

Copy link
Copy Markdown
Owner

What changed

  • fe writes .team/07-build-fe.md; be writes .team/07-build-be.md. Neither writes the consolidated report.
  • The orchestrator waits for every requested specialist and writes .team/07-build.md only when all succeed. A failed, cancelled or missing specialist keeps the build stage incomplete.
  • Aggregation is idempotent: rerunning it must not duplicate sections or drop a specialist.
  • Updated team.yaml, /build, README (EN/TR), docs/pipeline.md, docs/agents.md, team/AGENTS.md, the team-build skill and the generated command reference.
  • scripts/validate.rb now fails when two agent files instruct writes to the same .team/NN-*.md artifact.

Why

Both parallel build specialists wrote the same file, so one could overwrite the other's report. The static scan found no other duplicate writers: every other stage artifact has one writer, and the build report readers (QA, security, docs, devops, marketing) still read the consolidated file.

Verification

  • ruby scripts/validate.rb → 47 files OK
  • Duplicate-writer check tested against a temporary two-writer fixture → exits 1
  • bash -n install.sh scripts/*.sh → OK
  • ./scripts/smoke-install.sh → smoke OK
  • npm run generate:reference → current; only docs/reference/commands.md changed
  • Windows smoke not run locally (pwsh unavailable); CI runs it on windows-latest
  • Build-stage scenario contract check: parallel reports, missing specialist (aggregation refused, stage incomplete), rerun (byte-identical, no duplicate sections) → all pass

Closes #45

FE and BE both wrote .team/07-build.md, so parallel specialists could overwrite each other. Each now writes its own report and the orchestrator consolidates them only after every requested specialist succeeds.

- fe -> .team/07-build-fe.md, be -> .team/07-build-be.md
- orchestrator owns the consolidated .team/07-build.md
- fail/cancel/missing specialist keeps the build stage incomplete
- update team.yaml, /build, docs and generated reference
- validate.rb rejects two agents writing the same .team artifact

Refs #45
@sametcelikbicak
sametcelikbicak merged commit 6ad50a6 into main Oct 28, 2026
7 checks passed
@sametcelikbicak
sametcelikbicak deleted the fix/45-build-report-writer branch October 28, 2026 12:49
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.

Prevent FE and BE from overwriting the shared build report

1 participant