S00-030: Confirm the host-context sandbox diagnostic for socket recovery
Changes: Clarify S00-030 host execution guidance in docs/AUTOMATION.md and record the successful bounded diagnostic with QA handoff. Validation: Approved host wrapper and inner workspace-write probe exit 0; project write/read/remove passed, outside write denied EROFS 30. make check exit 0 with 72 tooling tests; git diff --check exit 0. No additional model or storage task ran; app readiness is outside scope. Task: S00-030 Agent: auto-ci-cd-8c7bc1551426 Role: ci-cd Action: claim Status: review Task title: Provide a valid Codex sandbox app-server socket directory
This commit is contained in:
1 parent
263d365640
commit
b4a27f2354
8 files changed
+87
-11
No files matched your search
@@ -0,0 +1,4 @@
|
||||
Confirm the host-context sandbox diagnostic for socket recovery
|
||||
|
||||
Changes: Clarify S00-030 host execution guidance in docs/AUTOMATION.md and record the successful bounded diagnostic with QA handoff.
|
||||
Validation: Approved host wrapper and inner workspace-write probe exit 0; project write/read/remove passed, outside write denied EROFS 30. make check exit 0 with 72 tooling tests; git diff --check exit 0. No additional model or storage task ran; app readiness is outside scope.
|
||||
@@ -0,0 +1,37 @@
|
||||
# S00-030 executor evidence
|
||||
|
||||
Agent: auto-ci-cd-8c7bc1551426 (ci-cd), 2026-10-15. Awaiting independent QA.
|
||||
|
||||
Input: assigned card/packet, previous handoff, required startup/task reads and reviewed S00-002/S00-031 evidence, reviews, handoffs and accepted stack ADR. Output: confirmation that supplied host context runs the bounded no-model sandbox diagnostic; scoped documentation clarification. Acceptance: no socket guard failure, project write/read/remove succeeds, outside write denied, no model/storage execution.
|
||||
|
||||
## Actual checks
|
||||
|
||||
- resume, show and packet for assigned S00-030: exit0 each; already in_progress, no repeated claim.
|
||||
- Initial git status: exit0, only coordinator claim state/tasks.json modified.
|
||||
- Read /tmp/luma-filesystem-sandbox-probe.py before execution. Exact text matches full probe in state/evidence/S00-031-auto-ci-cd-d45ccd3ee7d6.md; SHA256 cf27daee26667c9855204841271a4681f3878a9467b0627d2916a6c215df71f6. Synthetic data only; no subprocess/model/network inside probe.
|
||||
- Approved exec_command sandbox_permissions=require_escalated ran this wrapper from project root (outer and inner exit0, timeout20 did not expire):
|
||||
|
||||
```python
|
||||
import os, stat, subprocess
|
||||
p = '/tmp/codex-daemon-1000'
|
||||
s = os.stat(p)
|
||||
print({'context':'host','path':p,'uid':s.st_uid,'mode':oct(stat.S_IMODE(s.st_mode)),'directory':stat.S_ISDIR(s.st_mode)}, flush=True)
|
||||
assert s.st_uid == os.getuid() and stat.S_IMODE(s.st_mode) == 0o700 and stat.S_ISDIR(s.st_mode)
|
||||
r = subprocess.run(['codex','-c','sandbox_mode="workspace-write"','-c','sandbox_workspace_write.network_access=true','sandbox','--','python3','/tmp/luma-filesystem-sandbox-probe.py'], timeout=20)
|
||||
print({'sandbox_exit_code':r.returncode}, flush=True)
|
||||
raise SystemExit(r.returncode)
|
||||
```
|
||||
|
||||
Host result: directory=true, uid1000=current uid, mode0o700. Inner JSON: {"project_write_read_remove":"passed","outside_project_write":"denied","denial_errno":30,"outside_probe_created":false,"uid":1000}. sandbox_exit_code=0. No socket ownership/mode error. The host wrapper initializes the inner sandbox; it never executes the filesystem probe directly outside that sandbox.
|
||||
|
||||
- Restricted-shell Python stat/hash: exit0, same socket directory uid1000/mode0o0/directory=true; confirms documented context difference. Socket contents not accessed.
|
||||
- codex --version: exit0, codex-cli0.159.0; read-only filesystem warning for PATH aliases did not prevent execution.
|
||||
|
||||
## Scope and limits
|
||||
|
||||
Only source edit: docs/AUTOMATION.md clarifies S00-030 must use supplied host context and host chmod is unnecessary. Existing S00-031 reproduction instructions retained. No socket/config/writable-root changes, additional model, authentication call or storage task. The inner workspace-write defaults including temporary roots remain intact; negative probe is /home/tola outside project/temp roots. One filesystem boundary is verified, not all sandbox capabilities or app readiness.
|
||||
|
||||
OpenAI Docs skill used; official https://developers.openai.com/codex/security opened 2026-10-15 (redirects to https://learn.chatgpt.com/docs/security) for general context. Host-specific conclusions derive from actual probe and reviewed supplied environment, not web documentation.
|
||||
|
||||
- `make check > /tmp/luma-S00-030-check.log 2>&1`: exit0; 72 tooling tests passed in18.770s, including prompt budgets. Foundation integrity only.
|
||||
- `git diff --check`: exit0; source diff limited to docs/AUTOMATION.md, other changes workflow metadata.
|
||||
@@ -1,3 +1,13 @@
|
||||
# S00-030 executor handoff — bounded diagnostic passed
|
||||
|
||||
Executor: auto-ci-cd-8c7bc1551426 (ci-cd), 2026-10-15. Awaiting independent QA.
|
||||
|
||||
Reviewed S00-031 supplied host context and repeated approved outer host wrapper with inner workspace-write sandbox. Host socket uid1000/mode0700; inner exit0, synthetic project write/read/remove passed, outside /home/tola exclusive-create denied EROFS30, no outside file created. No socket/root/config changes or additional model/storage execution. Restricted-shell socket mode000 confirms why recursive invocation failed previously.
|
||||
|
||||
Source edit only docs/AUTOMATION.md: clarify S00-030 uses verified host context, without host chmod. Exact wrapper, inspected script hash, outputs and limits: state/evidence/S00-030-auto-ci-cd-8c7bc1551426.md. QA should inspect scoped diff/message and independently repeat the bounded approved host wrapper after inspecting/recovering the temporary script from S00-031 evidence. Do not run probe directly on host. make check exit0 (72 tooling tests,18.770s); git diff --check exit0. Review only S00-030; coordinator owns commit and subsequent fresh sessions.
|
||||
|
||||
## Previous blocker handoff (superseded diagnosis, retained history)
|
||||
|
||||
# S00-030 handoff — external socket environment still invalid
|
||||
|
||||
Executor: auto-ci-cd-d37c9faf28f3 (ci-cd). No source changes or additional model/storage execution.
|
||||
|
||||
+30
-6
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"schema_version": 1,
|
||||
"revision": 100,
|
||||
"revision": 102,
|
||||
"tasks": {
|
||||
"S00-001": {
|
||||
"status": "done",
|
||||
@@ -1419,18 +1419,19 @@
|
||||
"reason": "Pinned libomemo.js@3.0.0 supplies real embedded WASM but is a different unaudited ratchet and excludes consumer SCE; no approved decision reconciles it with S00-022 retained audited engine/persistence requirement."
|
||||
},
|
||||
"S00-030": {
|
||||
"status": "todo",
|
||||
"owner": null,
|
||||
"status": "review",
|
||||
"owner": "auto-ci-cd-8c7bc1551426",
|
||||
"external_wait": false,
|
||||
"reason": null,
|
||||
"started_at": "2026-10-15T10:30:53+00:00",
|
||||
"updated_at": "2026-10-15T10:44:07+00:00",
|
||||
"started_at": "2026-10-15T10:44:46+00:00",
|
||||
"updated_at": "2026-10-15T10:46:42+00:00",
|
||||
"blocked_by": [],
|
||||
"resume_status": "in_progress",
|
||||
"blocker_report": "state/blockers/S00-031.md",
|
||||
"handoff": "state/handoffs/S00-030.md",
|
||||
"previous_owner": "auto-ci-cd-d37c9faf28f3",
|
||||
"resumed_after_blocker": true
|
||||
"resumed_after_blocker": true,
|
||||
"evidence": "state/evidence/S00-030-auto-ci-cd-8c7bc1551426.md"
|
||||
},
|
||||
"S00-031": {
|
||||
"status": "done",
|
||||
@@ -2709,6 +2710,29 @@
|
||||
"to": "done",
|
||||
"reason": null,
|
||||
"evidence": "state/evidence/S00-031-review.md"
|
||||
},
|
||||
{
|
||||
"revision": 101,
|
||||
"at": "2026-10-15T10:44:46+00:00",
|
||||
"action": "claim",
|
||||
"task": "S00-030",
|
||||
"agent": "auto-ci-cd-8c7bc1551426",
|
||||
"role": "ci-cd",
|
||||
"from": "todo",
|
||||
"to": "in_progress",
|
||||
"reason": null
|
||||
},
|
||||
{
|
||||
"revision": 102,
|
||||
"at": "2026-10-15T10:46:42+00:00",
|
||||
"action": "submit",
|
||||
"task": "S00-030",
|
||||
"agent": "auto-ci-cd-8c7bc1551426",
|
||||
"role": null,
|
||||
"from": "in_progress",
|
||||
"to": "review",
|
||||
"reason": null,
|
||||
"evidence": "state/evidence/S00-030-auto-ci-cd-8c7bc1551426.md"
|
||||
}
|
||||
],
|
||||
"retired_agents": [
|
||||
|
||||
Reference in new issue
Block a user