Skip to content

fix(subagents): keep the pushed footer status still, not a frozen spi… #105

fix(subagents): keep the pushed footer status still, not a frozen spi…

fix(subagents): keep the pushed footer status still, not a frozen spi… #105

Workflow file for this run

name: CI
on:
push:
pull_request:
permissions:
contents: read
jobs:
test:
name: Node ${{ matrix.node-version }}
runs-on: ubuntu-latest
timeout-minutes: 20
strategy:
fail-fast: false
matrix:
node-version: [22.19.0, 24]
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: ${{ matrix.node-version }}
- uses: oven-sh/setup-bun@v2
with:
bun-version: 1.3.14
- name: Install dependencies
run: bun install --frozen-lockfile
- run: bun run check
- run: bun run test
- name: Smoke-test Pi package discovery
run: |
agent_dir="$(mktemp -d)"
trap 'rm -rf "$agent_dir"' EXIT
PI_CODING_AGENT_DIR="$agent_dir" ./node_modules/.bin/pi install "$PWD"
output="$(PI_CODING_AGENT_DIR="$agent_dir" ./node_modules/.bin/pi --offline --no-session --mode rpc </dev/null)"
grep -q '"statusKey":"plan-mode"' <<<"$output"
grep -q '"widgetKey":"session-tasks-panel"' <<<"$output"
- name: Smoke-test packed extensions without optional peers
run: |
root="$(mktemp -d)"
trap 'rm -rf "$root"' EXIT
mkdir "$root/app" "$root/agent"
printf '{"private":true}\n' >"$root/app/package.json"
npm pack --ignore-scripts --silent --pack-destination "$root" >/dev/null
tarballs=("$root"/*.tgz)
test "${#tarballs[@]}" -eq 1
npm install --prefix "$root/app" --ignore-scripts --legacy-peer-deps --no-audit --no-fund "${tarballs[0]}"
test ! -e "$root/app/node_modules/ioredis"
package="$root/app/node_modules/@tt-a1i/openpi"
PI_CODING_AGENT_DIR="$root/agent" ./node_modules/.bin/pi \
--offline \
--mode rpc \
--no-extensions \
--extension "$package/extensions/file-search/index.ts" \
--extension "$package/extensions/git-info/index.ts" \
</dev/null