Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
18 commits
Select commit Hold shift + click to select a range
00fbb43
docs(adr): openab-agent multi-vendor OAuth & credential storage
brettchien Jun 24, 2026
b5e46e7
docs(adr): address review — prefer oauth2 crate, drop rollout, vendor…
brettchien Jun 24, 2026
285b335
docs(adr): per-tenant refresh lock + per-user PKCE keying (Mira revie…
brettchien Jun 24, 2026
f3dedfe
docs(adr): bundled-secret storage + pending-entry GC (Mira review r2)
brettchien Jun 24, 2026
8a6ada1
docs(adr): close §9 Q2/Q3 — env-injection default, vendor go/no-go (B…
brettchien Jun 24, 2026
ed83dc2
docs(adr): confirm agy secret + ecosystem evidence (GitHub survey r4)
brettchien Jun 24, 2026
db88c7a
docs(adr): agy-vendor vs agy-CLI/ACP clarification + MCP store revamp…
brettchien Jun 24, 2026
2c6063b
docs(adr): fix stale §9 Q4 cross-reference
brettchien Jun 24, 2026
515d49b
docs(adr): §9 Q2 — encode-at-rest is the default, env is the alternat…
brettchien Jun 24, 2026
f370110
feat(auth): cross-process locking for auth.json — codex + MCP (ADR §5.4)
brettchien Jun 24, 2026
38007e2
feat(auth): address Mira code review — pending GC + portable WouldBlock
brettchien Jun 24, 2026
f53f463
feat(auth): serialise MCP token refresh cross-process (close §5.4 (b)…
brettchien Jun 24, 2026
842c70f
refactor(auth): /simplify cleanups — dedup lock acquire, reuse refres…
brettchien Jun 24, 2026
4e6f246
docs(auth): /code-review — harden GC + refresh-lock contract comments
brettchien Jun 24, 2026
b40693c
build(openab-agent): declare standalone [workspace] to fix CI
brettchien Jun 24, 2026
752be4c
Revert "build(openab-agent): declare standalone [workspace] to fix CI"
brettchien Jun 24, 2026
212d4bb
ci(openab-agent): append [workspace] in CI + harden ACP smoke test
brettchien Jun 24, 2026
2359450
ci(openab-agent): surface ACP smoke-test stderr + exit code for diagn…
brettchien Jun 24, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
21 changes: 18 additions & 3 deletions .github/workflows/ci-openab-agent.yml
Original file line number Diff line number Diff line change
Expand Up @@ -24,17 +24,32 @@ jobs:
- uses: Swatinem/rust-cache@v2
with:
workspaces: openab-agent
# openab-agent is a standalone crate, not a member of the parent openab
# workspace (members = crates/openab-core, openab-gateway) and not excluded,
# so cargo run from this directory errors "believes it's in a workspace when
# it's not". Declare an empty workspace, mirroring Dockerfile.unified, so
# every cargo step below resolves it as its own root.
- run: printf '\n[workspace]\n' >> Cargo.toml
- run: cargo fmt --check
- run: cargo clippy -- -D warnings
- run: cargo test
- run: cargo test -- --ignored
env:
ANTHROPIC_API_KEY: "fake-key-for-ci"
# Build in its own step so a build failure is distinct from a smoke failure
# and the timed run below races only the binary, not a concurrent compile.
- name: Build release binary
run: cargo build --release
- name: ACP smoke test
run: |
cargo build --release
# Test: initialize returns valid ACP response
RESP=$(echo '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{}}' | timeout 5 ./target/release/openab-agent 2>/dev/null | head -1)
set +e
echo '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{}}' \
| timeout 30 ./target/release/openab-agent > /tmp/acp_out.txt 2> /tmp/acp_err.txt
code=$?
echo "exit code: $code"
echo "--- stdout ---"; cat /tmp/acp_out.txt
echo "--- stderr ---"; cat /tmp/acp_err.txt
RESP=$(head -1 /tmp/acp_out.txt)
echo "Response: $RESP"
echo "$RESP" | grep -q '"agentInfo"' || (echo "FAIL: no agentInfo in response" && exit 1)
echo "$RESP" | grep -q '"openab-agent"' || (echo "FAIL: wrong agent name" && exit 1)
Expand Down
Loading
Loading