Feat v0.7.11 query & HTTP ergonomics
Some checks failed
CI/CD / e2e-smoke (pull_request) Has been skipped
CI/CD / test-go-pg (pull_request) Has been cancelled
CI/CD / detect-changes (pull_request) Successful in 4s
CI/CD / test-frontend (pull_request) Has been skipped
CI/CD / build-and-deploy (pull_request) Has been cancelled
CI/CD / test-sqlite (pull_request) Has been cancelled
CI/CD / test-runners (pull_request) Has been skipped

Add four new Starlark sandbox builtins to reduce extension friction
around SQL decomposition and synchronous HTTP fan-out:

- db.count(table, filters) — integer row count
- db.aggregate(table, column, op, filters) — single-value aggregation
- db.query_batch(queries) — up to 10 query specs in one call
- http.batch(requests) — concurrent dispatch of up to 10 HTTP requests

Extract buildSelectQuery helper from dbQuery for reuse by query_batch.
21 new tests (14 db, 7 http). No new permissions or schema changes.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-04-02 23:31:52 +00:00
parent f06c6c954b
commit f036995d5c
8 changed files with 924 additions and 77 deletions

View File

@@ -2,6 +2,25 @@
All notable changes to Armature are documented here.
## v0.7.11 — Query & HTTP Ergonomics
Four new Starlark sandbox builtins. No new permissions, no schema changes.
**db module (permission: `db.read`)**
- `db.count(table, filters={})` — returns integer count of matching rows.
- `db.aggregate(table, column, op, filters={})` — single-value aggregation. `op` ∈ {count, sum, avg, min, max}. Returns int, float, or None.
- `db.query_batch(queries)` — execute up to 10 query specs in a single call. Each spec supports the same parameters as `db.query`.
**http module (permission: `api.http`)**
- `http.batch(requests)` — concurrent HTTP dispatch of up to 10 requests. Individual failures return error response dicts (`status: 0`) rather than aborting the batch.
**Internal**
- Extracted `buildSelectQuery` helper from `dbQuery` for reuse by `db.query_batch`.
- 21 new tests (14 db, 7 http).
## v0.7.10 — Workflow Handoff + Assignment UI
Closes the three UX gaps found during v0.7.9: public→team handoff,