Skip to content

Trailer verification not enforced: 51% of production commits missing required agent trailers; format drift; direct push to beta #1820

Description

@steilerDev

Severity: High — found during a deep project review (2026-07-06) of the last 60 commits on beta (52 non-merge; 35 touch production paths).

1. Trailer verification is not being enforced — 51% violation rate, trending worse

18 of 35 production-touching commits are missing at least one required agent trailer; 8 have zero agent trailers — including the two most recent feature commits:

SHA Production paths Missing trailer(s) Present
df3c122a (#1797, 45 files) backend, frontend, translator, e2e all four none
3a849616 (#1786) backend, frontend, translator, e2e all four none
38ab2b0b (#1739), 6eea9b34 (#1703/04) frontend, e2e both none
131610f6 (#1780) frontend frontend-developer 3× generic "Claude Sonnet 4.6" (no agent name)
5cab9256 (#1775), 39739776 (#1774), 4b5b90e8 (#1773), 9b4ce24d (#1768), d514645f (#1724) backend/frontend/translator dev trailers dev-team-lead only — contradicts "dev-team-lead never modifies production files"
c17141f5 (#1757), 7b8ae38e (#1755) e2e e2e-test-engineer qa-integration-tester (wrong agent)
94568637 (#1747) backend, frontend, translator, e2e frontend, translator, e2e backend-developer only
a4fc9ba5 (#1742) frontend, e2e e2e-test-engineer frontend-developer only
b3bf3722, b8d653b1, 88748bbf, 05e720df (style bot) frontend (+e2e) all none

Likely mechanism: squash-merge drops trailers that existed on feature-branch commits — the squash body isn't being rebuilt with the union of trailers.

2. Trailer format drift — 8+ variants

Mandated: Co-Authored-By: Claude <agent-name> (<model>) <noreply@anthropic.com>. Observed: bare-model trailers with no agent name (Claude Opus 4.8 ×6, Claude Sonnet 4.6 ×7, Claude Opus 4.8 (1M context) ×2, Claude Opus 4.6 ×1); literal escaped angle brackets (Claude &lt;product-architect&gt; ×2); Co-authored-by vs Co-Authored-By casing (~40% lowercase); 3 spellings of the same model.

3. Related process violations

Suggested fixes

  1. Rebuild the squash-commit body with the union of feature-branch trailers at merge time (the /develop step 6h verification should run against the squash result, not the branch commits).
  2. Root-cause note: the trailer rules also have a spec gap for QA-authored co-located tests (see the skills-defects issue) — some "wrong agent" trailers above are that gap, not sloppiness.
  3. Consider a CI check that validates trailer presence/format on production-path commits.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Projects

    Status
    Done

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions