Skip to content

RED/GREEN can't be separate commits #85

Description

@flyingrobots

Migrated from Method backlog

This issue was created from a legacy filesystem backlog card. GitHub Issues are now the live work tracker; repository docs remain Method evidence.

Source backlog: docs/method/backlog/bad-code/red-green-lint-friction.md
Original lane: bad-code

Original backlog card

RED/GREEN can't be separate commits

Status: active bad-code note. scripts/verify-local.sh runs clippy with
-D warnings -D missing_docs, so production todo!() and unimplemented!()
stubs still fail local gates. The repo already uses explicit test-only
allowances for ignored future-contract tests, so the remaining problem is
documenting the approved RED pattern rather than weakening production linting.

Clippy denies todo!() and unimplemented!() in production code.
This means the RED phase (failing tests with stub implementations)
can't be committed separately from the GREEN phase (real code).

The discipline is preserved (tests are written first) but the git
history doesn't show it. Options:

  • Allow todo!() in a #[cfg(test)]-gated stub module
  • Use a method-dev clippy profile that allows stubs
  • Accept it as a documentation-only friction (retro notes it)
  • Use unreachable!("not yet implemented") which clippy allows
    (but is semantically wrong)

Not urgent — the retro documents it — but worth resolving if it
keeps coming up.

Metadata

Metadata

Assignees

No one assigned

    Labels

    lane:bad-codeKnown debt, rot, or structural risk.type:maintenanceMaintenance, cleanup, or operational workflow work.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions