SinachPat
b61ff21710
feat: de-risk agent loop — semantic tool schema + agent loop + real-WP spike harness
...
Mirror to GitHub / mirror (push) Canceled after 0s
- api/agents: tool-schemas (semantic allowlist), agent-loop (multi-step + budget), circuit-breaker, llm-client/tool-executor interfaces
- api/agents: WpRestExecutor (real WP REST), OpenRouterLlmClient
- e2e/agent: multi-step prompts + run-agent-spike runner (scores rendered changes)
- ADR 0017; 101 unit tests green
2026-08-15 23:49:07 +01:00
SinachPat
69b2481299
feat: Sprint 2 — WordPress plugin (auth/api/site-info/admin) + web SiteConnector
...
Mirror to GitHub / mirror (push) Canceled after 0s
- plugin: Wursor_Auth (token hashing, HMAC, scoped tokens), Wursor_API (REST + auth), Wursor_Site_Info (builder/capabilities/preflight), Wursor_Admin
- plugin: test-auth.php (10 auth tests, run in a WP+PHP env)
- web: SiteConnector pairing UI (code + poll + states)
- api: PluginClient signs full REST route (matches WP get_route)
- 92 unit tests green
2026-08-15 23:17:16 +01:00
SinachPat
9801b9475b
feat: Sprint 2 — Wursor-side pairing flow + signed plugin client
...
Mirror to GitHub / mirror (push) Canceled after 0s
- session store + requireSession middleware (signup persists session)
- PairingService (8-char code, 5-min TTL, 5-attempt lockout, single-use, https check)
- POST /sites/pair, /sites/redeem, /sites/:id/confirm, GET /sites/:id
- PluginClient signs HMAC (timestamp+method+path+body-hash), token in Authorization
- ADR 0016; 58 api tests green
2026-08-15 23:10:19 +01:00
SinachPat
df2315087d
feat: Sprint 1 remainder — Postgres store, Docker client, warm pool, sessions route
...
Mirror to GitHub / mirror (push) Canceled after 0s
- PostgresUserStore (Queryable) + migration + env-gated wiring
- DockerodeClient behind injected DockerEngine
- ImageManager, WarmPool, Dockerfile.wordpress, docker-compose
- POST /sessions spins up sandbox (503 when unconfigured)
- ADRs 0014-0015; 68 unit tests green
2026-08-15 20:18:34 +01:00
SinachPat
a037b882e9
feat: Sprint 1 — Playwright e2e + sandbox orchestration (TDD)
...
Mirror to GitHub / mirror (push) Canceled after 0s
- e2e: Playwright chat-flow (sign up -> chat) with api/web webServer harness
- api: sandbox services subset/media-proxy/manifest/gc + DockerClient contract
- api: SandboxManager orchestrator (fake-Docker tested); /health route
- 53 unit tests green; Playwright e2e green
2026-08-15 20:01:58 +01:00
SinachPat
9733ba6e3c
feat: Sprint 1 slice 1 — API signup + web signup/chat shell
...
Mirror to GitHub / mirror (push) Canceled after 0s
- api: Fastify POST /auth/signup (validation, scrypt hash, in-memory store)
- web: React+Vite SignUp form and chat shell with dev proxy
- 35 tests green (api 5, web 2, e2e 28)
2026-08-15 19:53:13 +01:00
SinachPat
6e59a8a36b
feat: Phase 0 workspace, spikes, and golden harness
...
Stand up the monorepo skeleton and land the first Phase 0 artifacts:
pairing threat model, plugin catalog, builder detect, 20-prompt golden
harness, and synthetic 2GB mirror timing.
2026-08-15 09:44:43 +01:00