Skip to content
EN · PT

Gate: placeholder-filled

No generator placeholder remains in a value position: header field, table cell, rule or title line.

Property Value
Checker placeholder-filled
Confronts spec feature
Blocking by default — new project yes
Blocking by default — existing project no — informs

Confronts an artifact against the question no other gate asks: was this actually written, or is it still the frame the generator handed over?

The work prompt promises, textually, that an unfilled placeholder fails. It did not. Measured: a freshly generated spec — with the layer field, the date, the title and the first rule all still carrying the generator’s marker — crossed EVERY blocking gate with “can promote”, including the header gate, which read a placeholder as a layer and approved it.

The reason is structural, and it is why this gate cannot be folded into its neighbours: header gates validate FORM — does the field exist, is the shape right — and never ask whether the value MEANS anything. A marker is a well-formed value. And the completeness gate counts sections, which the skeleton has all of, empty.

The cost of that silence is the worst kind: an artifact nobody wrote passes as written. The relational gates that follow find the spec, find the code, confront two things that reference each other, and the whole pipeline certifies work that does not exist.

Measured before switching it on, against the real repository: zero findings across 590 specs. Nothing alive carries a generator marker — which confirms both that whoever writes, fills in, and that the gate charges only what was left behind.

gates:
- name: placeholder-filled
on: [spec, feature]
check: placeholder-filled

Source: checker · its spec