diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 36576a2..6d96e66 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -20,7 +20,7 @@ jobs: check: name: Runner (${{ matrix.os }}) runs-on: ${{ matrix.os }} - timeout-minutes: 15 + timeout-minutes: 25 strategy: fail-fast: false matrix: diff --git a/docs/design/executor-ownership.md b/docs/design/executor-ownership.md index f4cbe40..21d981f 100644 --- a/docs/design/executor-ownership.md +++ b/docs/design/executor-ownership.md @@ -190,8 +190,8 @@ synchronize these observations; process IDs and elapsed time never determine eligibility. A separate race test exercises concurrent `Close` and `Start`. ```sh -GOCACHE=/tmp/jps-policy-coverage-go-cache go test ./internal/runner -run '^TestExecutorLease' -count=1 -GOCACHE=/tmp/jps-policy-coverage-go-cache go test -race ./internal/runner -run '^TestExecutorLease' -count=1 +GOCACHE= go test ./internal/runner -run '^TestExecutorLease' -count=1 +GOCACHE= go test -race ./internal/runner -run '^TestExecutorLease' -count=1 ``` Running these tests on Linux demonstrates the tested Linux behavior. Compile @@ -219,7 +219,7 @@ owner death cannot trigger a premature stdout failure at the protected boundary. The integration requires `JPACK_TEST_BIN` and does not substitute a mock process. ```sh -GOCACHE=/tmp/jps-policy-coverage-go-cache JPACK_TEST_BIN=/absolute/path/to/jpack \ +GOCACHE= JPACK_TEST_BIN=/absolute/path/to/jpack \ go test -race ./cmd/jpack-runner ./internal/runner -run '^TestExecutorOwn' -count=1 ``` diff --git a/docs/design/manual-admission-store-prepare-shape.md b/docs/design/manual-admission-store-prepare-shape.md index 62338d4..f67b0ae 100644 --- a/docs/design/manual-admission-store-prepare-shape.md +++ b/docs/design/manual-admission-store-prepare-shape.md @@ -1,6 +1,6 @@ # Private nonexecuting manual-store preparation v1 -Frozen jointly with Desk/coordinator for implementation. `jpack-runner prepare-manual-store` accepts no arguments, exactly one bounded UTF-8 JSON+LF request on stdin (≤16KiB including LF), then EOF. Closed schemas and synthetic vectors: `/tmp/jps-policy-manual-admission-store-prepare-wire.json`. Exact casing, no duplicates/unknown/null/type coercion; canonical uint64 decimal strings must not overflow. Paths are existing clean absolute private real directories with disjoint state/external custody. No secret boot, authority socket, listener, provider, Runtime, recovery or worker. +Frozen jointly with Desk/coordinator for implementation. `jpack-runner prepare-manual-store` accepts no arguments, exactly one bounded UTF-8 JSON+LF request on stdin (≤16KiB including LF), then EOF. Closed schemas and synthetic vectors: ``. Exact casing, no duplicates/unknown/null/type coercion; canonical uint64 decimal strings must not overflow. Paths are existing clean absolute private real directories with disjoint state/external custody. No secret boot, authority socket, listener, provider, Runtime, recovery or worker. Request: version1, stable random bare64hex prepareId, dir, Runner workspace, existing owner, leaseFd3, existing executorOwnership v1, executionDemand v1. Demand is exactly version1, installationId, machineWorkspace, runnerWorkspace, executorId, profile local-admin-manual-pack/1. Repeated identities must agree with current state, retained external custody and Desk pending intent. Device/inode IDs remain strings. diff --git a/scripts/checks/local-paths.sh b/scripts/checks/local-paths.sh index ab4e7b1..c8cc108 100755 --- a/scripts/checks/local-paths.sh +++ b/scripts/checks/local-paths.sh @@ -4,8 +4,6 @@ # written in a design note before this check existed. A new file is checked. set -e if git grep -nE '(^|[^A-Za-z0-9_])/(home|tmp)/[A-Za-z0-9_.-]+' -- . ':!*.png' ':!*.jpg' \ - ':!docs/design/executor-ownership.md' \ - ':!docs/design/manual-admission-store-prepare-shape.md' \ ':!docs/design/manual-admission-store-prepare-wire.json' \ ':!internal/runner/cloud_test.go'; then echo 'a machine-local path is in tracked text'; exit 1