본문으로 건너뛰기
hs-sql-agent

Safe DML

정확한 Mutation Evidence를 승인한 뒤 전체 commit 또는 전체 rollback을 결정합니다.

execute_dml_sql은 Preview, 승인, commit 직전 재검증, 하나의 서버 소유 Transaction을 통해 하나 이상의 지원 DML을 실행합니다. 기본 공식 방식은 MCP Elicitation이며 공식 Webhook 또는 자체 Provider도 사용할 수 있습니다.

01

하나의 Tool, 하나의 Transaction

세미콜론으로 구분한 DML을 execute_dml_sql에서 그대로 처리하고 한 번 승인해 원래 순서대로 원자적으로 commit합니다.

02

Evidence에 바인딩되는 승인

UPDATE / DELETE는 정확한 Row Set, INSERT VALUES는 불변 Payload와 Compile된 Command에 바인딩됩니다.

03

교체 가능한 승인 Provider

MCP Elicitation, 공식 Webhook adapter, 자체 IDmlApprovalProvider를 사용할 수 있지만 SQL 실행 권한은 넘기지 않습니다.

Tool을 늘리지 않고 atomic multi-statement DML

Built-in MCP Surface를 작게 유지합니다. execute_dml_sql 자체가 세미콜론으로 구분한 UPDATE, DELETE, INSERT VALUES를 하나 이상 받아 Batch를 한 번 승인하고 하나의 Transaction에서 commit합니다. 하나라도 stale 또는 실패하면 전체를 rollback합니다.

승인은 실행 권한이 아니다

승인 Provider는 transport-neutral Evidence를 받을 뿐 Database Connection, Transaction, 검증된 Plan, commit primitive를 받지 않습니다. 검증, Evidence Binding, 재검증, 실행은 hs-sql-agent가 소유합니다.

Durable 외부 Workflow도 재검증

비동기 Provider는 Pending을 반환할 수 있습니다. 나중의 완료 Decision에서는 현재 권한과 DB 설정을 다시 읽고 DML을 재 Parse / Preview해 Evidence를 비교한 뒤 새로운 단기 Execution Challenge를 만듭니다.