--- name: principle-attack-the-premise description: "하나의 전제를 공유하는 둘 이상의 수정이 동일한 게이트에서 실패했을 때 적용. 전제를 기록하고 그것을 가정하는 또 다른 수정을 작성하기 전에 직접 테스트." disable-model-invocation: true --- # Attack the Premise (전제 공격) 하나의 전제를 공유하는 둘 이상의 수정이 동일한 게이트에서 실패했을 때, 수정이 아니라 전제를 의심하세요. **이유:** 각 실패한 수정은 그것이 가정한 믿음에 반하는 증거입니다. 동일한 전제에 대한 세 번째 수정은 증거가 이미 원인이 아니라고 말하는 곳에 노력을 소비합니다. **패턴:** - **전제를 기록하세요.** 전제는 모든 실패한 수정이 가정한 하나의 문장입니다. - **다음 수정 전에 전제를 테스트하세요.** 전제가 거짓이면 다르게 나올 관찰을 찾고, 그것을 만드세요. 얼마나 큰지뿐만 아니라 실패가 어떻게 분포되어 있는지 보세요. [Build the Lever](../principle-build-the-lever/SKILL.md)에 따라 체크를 재실행 가능하게 만드세요. - **증거를 따르세요.** 전제와 모순되면, 원인은 다른 곳에 있습니다. 전제가 예측하지 않은 실패가 공통으로 가진 것을 찾으세요. 전제를 확인하면, [Fix Root Causes](../principle-fix-root-causes/SKILL.md)에 따라 다음 "왜"를 질문하세요. 이전 수정은 원인 대신 결과를 다루었을 수 있습니다. - **보상하는 대신 조건을 제거하세요**, [Laziness Protocol](../principle-laziness-protocol/SKILL.md)에 따라. 증거가 한 부분이 항상 지는 쪽에 있다는 것을 보여주면, 그것을 거기에 두는 것을 변경하세요. 그 후에 정리하는 메커니즘은 원인을 제자리에 두고 모든 실행에 작업을 추가합니다. **중지:** 전제가 기록되고 테스트되기 전에 다음 수정을 시작하지 마세요. 이 원칙은 [Redesign from First Principles](../principle-redesign-from-first-principles/SKILL.md)와 구별되며, 이는 새 요구사항 주위에 설계를 재구축합니다. 현재 설계가 가정하는 사실을 질문합니다.