Observed
Local Artificer delivery 66f12291-414d-43cf-86b0-53708ab2a028 for issue #217 reached a verified engineering result and recorded PR #223, but then changed to needs-attention while saving its encrypted native continuation archive:
Native result/archive needs reconciliation: Native state contains symbolic link: /Users/bjro/.darrow/artificer/deliveries/66f12291-414d-43cf-86b0-53708ab2a028/native/tmp/arg0/codex-arg0fVOtt6/applypatch
No archive save time was recorded. In plugins/automation/darrow-artificer/backend/src/darrow_artificer/archive.py, archive traversal excludes several regenerable cache directories but not tmp, and included() rejects every symbolic link. worker.py reconciles the native result before saving the archive, then converts an archive exception into needs-attention.
Expected
Artificer should safely handle transient Codex runtime artifacts when archiving a stopped dedicated native home, without weakening its symlink and credential protections. A successfully reconciled delivery result should not become needs-attention solely because Codex left its internal tmp/arg0/.../applypatch symlink.
Reproduction
- Initialize Local Artificer 0.1.0 with Codex CLI 0.154.0 and admit a ticket-to-PR delivery that uses the
applypatch helper.
- Let the owner complete implementation and verification and return a PR result.
- During final native-state preservation, observe
archive.save() traverse native/tmp/arg0/.../applypatch and reject the symbolic link.
- Run Artificer status and observe the delivery recorded as
needs-attention with the error above, despite its recorded PR result.
Observed
Local Artificer delivery
66f12291-414d-43cf-86b0-53708ab2a028for issue #217 reached a verified engineering result and recorded PR #223, but then changed toneeds-attentionwhile saving its encrypted native continuation archive:No archive save time was recorded. In
plugins/automation/darrow-artificer/backend/src/darrow_artificer/archive.py, archive traversal excludes several regenerable cache directories but nottmp, andincluded()rejects every symbolic link.worker.pyreconciles the native result before saving the archive, then converts an archive exception intoneeds-attention.Expected
Artificer should safely handle transient Codex runtime artifacts when archiving a stopped dedicated native home, without weakening its symlink and credential protections. A successfully reconciled delivery result should not become
needs-attentionsolely because Codex left its internaltmp/arg0/.../applypatchsymlink.Reproduction
applypatchhelper.archive.save()traversenative/tmp/arg0/.../applypatchand reject the symbolic link.needs-attentionwith the error above, despite its recorded PR result.