안전과 소유권
Agent는 행동하고, 권한은 경계 안에 남습니다.
Virgo는 canon과 persona를 owner-controlled 상태로 두고 credential 값을 snapshot에서 제외하며, 중요한 규칙을 evidence가 없을 때 명시적으로 거부하는 mechanism으로 만듭니다.
CAPABILITY POLICY
복구 가능한 일은 허용하고, 경계는 확인하거나 거부합니다.
Immutable capability stamp 하나가 visible tool, handler authorization, launcher allowlist를 결정합니다. Startup은 projection drift를 거부합니다.
LIVE MUTATION
Candidate를 감사하고, 실행 위치를 attest합니다.
Down·up·cutover에는 exact SHA/tree, action, persona, target host, auditor, time, expiry, operation ID에 묶인 single-operation CLEAR token이 필요합니다. Execution context는 hostname·uid·exact tmux socket으로 별도 attest합니다.
채팅 승인, prose completion claim, 무관한 green test는 execution authority가 아닙니다.
단일 ACTIVE COPY
Identity는 logical하고 authority는 현재 값입니다.
Registration은 lease acquisition 전에 process attestation을 요구합니다. 누락되거나 retired된 address는 Redis 전에 실패합니다. Lease를 잃은 consumer는 작업을 거부하고 redelivery는 같은 idempotency·side-effect key를 유지합니다.
PRIVATE BY CONSTRUCTION
Code는 generic하고, 당신의 시스템은 당신의 것입니다.
- CLI·daemon·web asset은 release SHA 하나를 공유.
- Machine address·person·path·workspace name은 private canon/config에 존재.
- Snapshot은 tracked persona state를 담고 credential 값이나 ambient machine file은 제외.
- Hub UI는 authenticated이며 credential 값을 노출하지 않음.