Repository navigation
Conversation
Reconcile a live Paseo supervisor whose lock predates the current kernel boot during startup, then verify default local CLI discovery. Co-authored-by: OpenCode Agent <user@gsa.gov>
|
AI-assisted review (OpenCode), advisory — needs a human to confirm before it drives a change. Reviewed head Ran the suite: 16/16 pass, matching your count. The four new reconciliation cases (pre-boot, post-boot, malformed, ambiguous) all execute. The identity gating is the right shape and tighter than "is the PID alive". Before signalling, it requires: lock timestamp strictly older than Also checked the test hook, since a test-only branch in a production startup script that overrides Two observations on the lock parser, neither blocking
One note on the 20-second waitThe post- Method: ran UNVERIFIED: no live sandbox here, so the actual restore/migration scenario, |
wz-gsa
left a comment
There was a problem hiding this comment.
Converting my head-pinned advisory review into a formal approval. Current head is still fd5fef82; no commits or author comments landed after that review, all seven checks pass, and the PR is mergeable. I ran the kit suite at this exact head (16/16), verified the pre-signal identity checks and PID-reuse re-check, and confirmed the test-only overrides are unreachable from kit configuration. The startedAt range and string-pid observations in my earlier comment remain non-blocking hardening suggestions, not correctness findings. AI-assisted review (OpenCode), approved with the maintainer’s explicit authorization; a human owns the merge.
wz-gsa
left a comment
There was a problem hiding this comment.
Correcting the formal review state: the head is unchanged at fd5fef8 and the guest-controlled bound from my 2026-10-08 review remains unresolved. and absurd future epochs pass ; the former makes a lock maximally eligible for reconciliation and the latter permanently ineligible. The cmdline/uid/start-ticks gate prevents direct signalling abuse, so this is not an exposure blocker, but is the field deciding whether reconciliation is attempted. Please bound it (, or equivalent) or explicitly document/accept the trust decision before merge. The later approval under my account came from a concurrent review that ran the 16 tests but did not address this finding.
Reject implausible lock timestamps and non-numeric PIDs before reconciliation. Co-authored-by: OpenCode Agent <user@gsa.gov>
|
Addressed the requested lock-metadata validation in bdb0c5a.
Verification:
Could you please re-review the updated head? |
Context
Fixes #487. A restored or migrated sandbox can retain a healthy Paseo process tree while
paseo.pidhas astartedAttimestamp from before the current kernel boot. Local CLI discovery then rejects the lock and reports the daemon as stopped.Changes
paseo daemon statusandpaseo lsdiscovery while retaining explicit-host reachability checks.Verification
node --test integrations/isolation/acq-kits/paseo/tests/**/*.test.mjspassed: 16 tests.sh -n integrations/isolation/acq-kits/paseo/files/home/paseo-start.shpassed.bash -n integrations/isolation/acq-kits/paseo/scripts/verifypassed.git diff --checkpassed.make test-kitspassed: all usai-provider, Paseo, and providers/usai tests.make validateandmake scan-shellwere blocked because the environment has nopythonexecutable.python3 integrations/isolation/acq-kits/validate-kits.py --strictwas blocked becausepython3lacksjsonschema.Rollback
Revert commit
fd5fef8.Security Impact
No dependency, authentication, authorization, network, or CI changes. Startup reconciliation is fail-closed and does not manually unlink locks; it signals only a verified same-user Paseo supervisor with a pre-boot lock and uses a bounded graceful path.
AI Disclosure
This change was implemented with assistance from OpenCode. Human review is required before production deployment.