Skip to content
Open

Dev #49

Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
26 commits
Select commit Hold shift + click to select a range
178cd41
feat(gateway): add harness-gateway WebSocket control-plane crate (ANG…
Apr 4, 2026
dad03a7
fix(gateway): apply cargo fmt import ordering in server.rs
Apr 4, 2026
b689cb9
chore(gateway): apply cargo fmt (rustfmt corrections from CI)
Apr 4, 2026
337d206
fix(gateway): resolve clippy errors and auth test race condition
Apr 4, 2026
bb524a5
chore(gateway): apply rustfmt after removing .into() conversions
Apr 4, 2026
345ce05
feat(cli): add provider connectivity healthcheck to `anvil config --c…
Apr 5, 2026
757e90c
feat(tui): add harness-tui crate — ratatui TUI for live agent monitor…
Apr 4, 2026
55e21e5
fix(tui): downgrade ratatui/crossterm for MSRV compat + rustfmt
Apr 4, 2026
f856357
chore: commit Cargo.lock for reproducible CI builds
Apr 4, 2026
f9da255
fix(tui): resolve clippy errors blocking CI
Apr 5, 2026
6255d31
test(cli): add echo provider integration test suite
Apr 5, 2026
e3da0c3
fix(cli): update EchoProvider usage in config healthcheck
Apr 5, 2026
0821b06
fix(core): guard auth tests with mutex to prevent env-var race
Apr 5, 2026
70d09f3
feat(provider): suggest --provider claude fallback when cc provider f…
Apr 5, 2026
e685fe9
docs: autonomous merge policy, add PR template
Apr 5, 2026
10dffaa
docs(readme): add development philosophy section
Apr 6, 2026
1abb670
feat: add benchmark suite for build quality scoring
Apr 5, 2026
e3720de
fix(benchmarks): use awk -v for variable passing to fix newline parse…
Apr 6, 2026
665c57d
feat(assets): redesign brand assets per UX audit (ANGA-724)
Apr 10, 2026
0500574
fix(cli): restore paperclip subcommand in anvil (ANGA-795) (#69)
anhermon Apr 12, 2026
d1f49c5
fix(test): stabilize Windows workspace gate (#73)
anhermon Apr 17, 2026
dd50077
fix(cli): add native dependency preflight to config check (ANGA-794) …
anhermon Apr 17, 2026
af72cea
feat(cli): expose gateway serve command
anhermon Apr 17, 2026
4177234
fix(cli): emit gateway hello after websocket subscription
anhermon Apr 18, 2026
4b023b7
fix(gateway): bound graceful shutdown wait
anhermon Apr 18, 2026
3fc7693
Merge pull request #78 from anhermon/feature/anga-353-websocket-gateway
anhermon Apr 25, 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: 21 additions & 0 deletions .github/PULL_REQUEST_TEMPLATE.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
## Thinking Path
<!-- Trace from the top of the project down to this change (5–8 steps minimum). -->

## What Changed
<!-- Bullet list of concrete changes, one per logical unit. -->

## Verification
<!-- How a reviewer can confirm it works (test commands, manual steps). -->
- [ ] `cargo test` passes
- [ ] `cargo clippy -- -D warnings` clean
- [ ] `cargo fmt --check` clean

## Risks
<!-- Explicit risk acknowledgment: race conditions, migrations, behavioral shifts, or "Low risk" with justification. -->

## Checklist
- [ ] Tests pass locally
- [ ] No new warnings from clippy
- [ ] Code is formatted with `cargo fmt`
- [ ] Commit messages follow conventional format
- [ ] Co-Authored-By trailer included for agent commits
30 changes: 30 additions & 0 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -54,6 +54,36 @@ jobs:
- name: test
run: cargo test --workspace

benchmark:
name: Benchmark
needs: [test]
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Install Rust stable
uses: dtolnay/rust-toolchain@stable
with:
components: rustfmt, clippy
- name: Cache cargo
uses: actions/cache@v4
with:
path: |
~/.cargo/registry
~/.cargo/git
target
key: ${{ runner.os }}-cargo-bench-${{ hashFiles('**/Cargo.lock') }}
restore-keys: ${{ runner.os }}-cargo-bench-
- name: Install jq
run: sudo apt-get update && sudo apt-get install -y jq
- name: Run benchmarks
run: bash benchmarks/run.sh
- name: Upload benchmark results
if: always()
uses: actions/upload-artifact@v4
with:
name: benchmark-results
path: benchmark-results.json

security:
name: Security Audit
runs-on: ubuntu-latest
Expand Down
1 change: 0 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
@@ -1,5 +1,4 @@
/target
Cargo.lock
.env
*.db
*.db-shm
Expand Down
4 changes: 2 additions & 2 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -63,15 +63,15 @@ Scopes: `core`, `tools`, `memory`, `cli`, `gateway`, `tui`, `paperclip`, `github
## Branching model

```
main ← stable, protected — PRs from dev only, requires human approval
main ← stable, protected — PRs from dev only, merged autonomously when CI is green and review passes
dev ← integration — PRs from feature/* only (no direct commits)
feature/* ← new features
fix/* ← bug fixes
docs/* ← docs only
chore/* ← deps / CI / tooling
```

All feature branches cut from `dev`. Open a PR to `dev`; `dev` → `main` requires board approval.
All feature branches cut from `dev`. Open a PR to `dev`; `dev` → `main` merges happen autonomously when all CI gates pass and review is complete.
Squash-merge preferred for feature/* and fix/*; merge commit for larger milestones.

## Testing philosophy
Expand Down
Loading
Loading