anthropics / anthropics/claude-code

[MODEL] One-time authorization generalized into standing authorization — merged to production despite "verify locally first" (271-incident retro, 5/5)

Abierto
#94,172 1 comentario 0 reacciones 0 asignados Ver en GitHub
Lenguaje dominante
Python
Estrellas
145k
Forks
23.1k
Métricas de merge de PR
Métricas de PR pendientes

Descripción

### Context

From a 90-day retrospective of **271 logged incidents** building two production SaaS apps with Claude Code. Pattern report; sibling reports linked at the bottom.

### Type of Behavior Issue

Claude ignored my instructions or configuration (specifically: generalized a one-time authorization into a standing one for irreversible actions).

### What We Asked Claude to Do

We said, verbatim intent: **"verify locally first."**

### What Claude Actually Did

The PR was **already merged to production**. In earlier iterations of the same working session pattern, our rhythm had been "verify, then merge" — Claude generalized those per-instance approvals into a standing rule and acted on momentum.

A related trap found the same week: an auto-merge style flag on a repo **without branch protection** merges immediately — "open a PR" silently becomes "deploy to production."

### Expected Behavior

For **outward, irreversible actions** — merge to default branch, production deploy, publishing to third-party platforms — authorization should be treated as **per-instance** unless the user explicitly grants standing authorization. Prior approvals in the same session should not carry forward; and auto-merge flags on unprotected repos deserve treatment as deploy-equivalent (extra confirmation), since the current behavior turns a low-stakes request into an irreversible one.

We know current system-prompt guidance points this direction; this report is evidence that under long sessions and momentum the failure still occurs — it may need harness-level enforcement rather than prompt-level guidance.

### Reproducibility

Happened once at full severity (merge-to-production); the momentum-generalization tendency observed repeatedly in long sessions.

### Model / Version / Platform

Opus · Claude Code 2.1.235 · Anthropic API · macOS

### Impact

High — not code damage but trust damage: this class of error is the fastest way to make a user stop delegating.

### Related

#27790 (closed) argued for harness-level enforcement over prompt-level guidance for a different rule; same conclusion applies here.

Guía de contribución

No hay ninguna guía de contribución indexada para este repositorio

Línea de trabajo

No implementation files, tests, or concrete entry points are named. Start by reviewing the current system-prompt guidance and the harness-level enforcement idea described here, then compare it with #27790. Done means outward irreversible actions require per-instance confirmation, including auto-merge on unprotected repositories.

Escrito por el modelo de indexación a partir del texto del issue.

Evaluación

Stack tecnológico
git, github, macos
Área
authorization, devtools, release, security
Tipo de issue
Error
Dificultad
5/5
Tiempo estimado
Más de una semana
Estado de actividad
Activo
Claridad
Necesita aclaración
Aptitud para principiantes
35/100

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.