[verified] Define fail-closed worktree creator-role compatibility
This commit is contained in:
@@ -168,14 +168,16 @@ python3 <harness-root>/harness/lib/managed_lock_broker.py probe \
|
||||
"base_sha": "<full-commit-sha>",
|
||||
"issue_updated_at": "<authoritative-timestamp>",
|
||||
"issue_body_sha256": "<sha256>",
|
||||
"created_by_role": "<role>",
|
||||
"created_by_role": "gitea-impl-agent",
|
||||
"mode": "detached"
|
||||
}
|
||||
```
|
||||
|
||||
- `base_sha`는 40자리 full commit SHA이고 Gitea 또는 승인된 Discovery에서 확인한 구현 기준 revision이어야 한다.
|
||||
- `issue_body_sha256`은 구현 승인의 근거가 된 authoritative Issue body의 exact UTF-8 bytes에 대해 계산한다.
|
||||
- `created_by_role`은 credential 값이 아닌 harness role identity다. PID나 현재 process 존재 여부를 worktree 소유권 또는 활성 상태의 정본으로 사용하지 않는다.
|
||||
- `created_by_role`은 credential 값이 아닌 harness role identity이며 신규 구현 producer는 정확히 `gitea-impl-agent`를 기록한다. PID나 현재 process 존재 여부를 worktree 소유권 또는 활성 상태의 정본으로 사용하지 않는다.
|
||||
- Review admission은 schema가 `gitea-agent.worktree/v1`인 기존 state에 한해 정확히 `gitea-impl-agent` 또는 legacy `impl`만 read-only compatibility로 허용한다. 이는 login/authentication alias가 아니며 그 자체로 permission을 부여하지 않는다. 누락, null, bool, list, dict, 빈 문자열, whitespace/case 변형과 다른 role은 거부한다.
|
||||
- 이 bounded exception은 `state.json`을 rewrite/migrate하지 않는다. admission 전후 exact bytes, mode, mtime과 inode를 보존한다.
|
||||
- 파일은 run-unique sibling temporary file에 mode `0600`으로 완성하고 flush한 뒤 no-replace atomic rename으로 게시한다. 기존 `state.json`을 덮어쓰지 않는다.
|
||||
|
||||
## Worktree admission gate
|
||||
|
||||
Reference in New Issue
Block a user