Skip to content

pr-contract: placeholder detector misses filler phrases (only exact/whole-line tokens) #103

Description

@ArchonVII

From Codex review on the archon-setup re-vendor PR (ArchonVII/archon-setup#324, thread on the vendored scripts/pr-contract.mjs):

When a PR body keeps common filler such as "placeholder summary goes here" or "placeholder verification notes go here", this new detector does not flag it because it only rejects lines made entirely of placeholder or exactly placeholder text. Since hasSubstantiveContent() only requires 20 characters, those unfilled sections can now pass the ready-for-review contract and wrappers despite still being placeholders.

Routed here because scripts/pr-contract.mjs is the single source of truth (repo-template vendors it with a hash-parity guard, archon-setup snapshots it; hand edits downstream are prohibited by the vendor manifest).

Design tension to weigh during triage: the substance-only contract (#99/#100) deliberately keeps the placeholder scan narrow because it also validates PR bodies about the parser itself — prose that mentions the word "placeholder" legitimately (like this issue) must not trip it. Any broadened phrase list needs test coverage for that self-referential case (see scripts/pr-contract.test.mjs).

Acceptance sketch:

  • Filler phrases like "placeholder summary goes here" / "
    goes here" are rejected as placeholders in section bodies.
  • Legitimate prose discussing the placeholder scan (inline code or otherwise) still passes.
  • Consumers pick the change up via the normal @v1 retag + re-vendor chain.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions