Apple
0603184524
feat(sofiia-console): add safe script executor for allowlisted runbook steps
...
- adds safe_executor.py: REPO_ROOT confinement, strict script allowlist,
env key allowlist (STRICT/SOFIIA_URL/BFF_A/BFF_B/NODE_ID/AGENT_ID),
stdin=DEVNULL, 8KB output cap, timeout clamp (max 300s), non-root warn
- integrates script action_type into runbook_runner: next_step handles
http_check and script branches; running_as_root -> step_status=warn
- extends runbook_parser: rehearsal-v1 now includes 3 built-in script steps
(preflight, idempotency smoke, generate evidence) after http_checks
- adds tests/test_sofiia_safe_executor.py: 12 tests covering path traversal,
absolute path, non-allowlist, env drop, timeout, exit_code, mocked subprocess
Made-with: Cursor
2026-03-03 04:57:22 -08:00
Apple
ad8bddf595
feat(sofiia-console): add guided runbook runner with http checks and audit integration
...
adds runbook_runs/runbook_steps state machine
parses markdown runbooks into guided steps
supports allowlisted http_check (health/metrics/audit)
integrates runbook execution with audit trail
exposes authenticated runbook runs API
Made-with: Cursor
2026-03-03 04:49:19 -08:00
Apple
4db1774a34
feat(sofiia-console): rank runbook search results with bm25
...
FTS path: score = bm25(docs_chunks_fts), ORDER BY score ASC; LIKE fallback: score null; test asserts score key present
Made-with: Cursor
2026-03-03 04:36:52 -08:00
Apple
63fec4371a
feat(sofiia-console): add runbooks index status endpoint
...
GET /api/runbooks/status returns docs_root, indexed_files, indexed_chunks, last_indexed_at, fts_available; docs_index_meta table and set on rebuild
Made-with: Cursor
2026-03-03 04:35:18 -08:00
Apple
ef3ff80645
feat(sofiia-console): add docs index and runbook search API (FTS5)
...
adds SQLite docs index (files/chunks + FTS5) and CLI rebuild
exposes authenticated runbook search/preview/raw endpoints
Made-with: Cursor
2026-03-03 04:26:34 -08:00
Apple
e2c2333b6f
feat(sofiia-console): protect audit endpoint with admin token
...
Made-with: Cursor
2026-03-02 09:42:10 -08:00
Apple
11e0ba7264
feat(sofiia-console): add audit query endpoint with cursor pagination
...
Made-with: Cursor
2026-03-02 09:36:11 -08:00
Apple
3246440ac8
feat(sofiia-console): add audit trail for operator actions
...
Made-with: Cursor
2026-03-02 09:29:14 -08:00
Apple
9b89ace2fc
feat(sofiia-console): add rate limiting for chat send (per-chat and per-operator)
...
Made-with: Cursor
2026-03-02 09:24:21 -08:00
Apple
3b16739671
feat(sofiia-console): add RedisIdempotencyStore backend
...
Made-with: Cursor
2026-03-02 09:08:52 -08:00
Apple
0b30775ac1
feat(sofiia-console): add structured json logging for chat ops
...
Made-with: Cursor
2026-03-02 08:24:54 -08:00
Apple
e504df7dfa
feat(sofiia-console): harden cursor pagination with tie-breaker
...
Version cursor payloads and keep backward compatibility while adding dedicated tie-breaker regression coverage for equal timestamps to prevent pagination duplicates and gaps.
Made-with: Cursor
2026-03-02 08:12:19 -08:00
Apple
0c626943d6
refactor(sofiia-console): extract idempotency store abstraction
...
Move idempotency TTL/LRU logic into a dedicated store module with a swap-ready interface and wire chat send flow to use store get/set semantics without changing API behavior.
Made-with: Cursor
2026-03-02 08:11:13 -08:00
Apple
93f94030f4
feat(sofiia-console): expose /metrics and add basic ops counters
...
Expose Prometheus-style metrics endpoint and add counters for send requests, idempotency replays, and cursor pagination calls, including a safe in-process fallback exposition when prometheus_client is unavailable.
Made-with: Cursor
2026-03-02 04:52:04 -08:00
Apple
d9ce366538
feat(sofiia-console): idempotency_key, cursor pagination, and noda2 router fallback
...
Add BFF runtime support for chat idempotency (header priority over body) with bounded in-memory TTL/LRU replay cache, implement cursor-based pagination for chats and messages, and add a safe NODA2 local router fallback for legacy runs without NODE_ID.
Made-with: Cursor
2026-03-02 04:14:58 -08:00
Apple
1ea4464838
feat(aurora-smart): add dual-stack orchestration with policy, audit, and UI toggle
2026-03-01 06:21:17 -08:00
Apple
5b4c4f92ba
feat(aurora): add detection overlays with face/plate boxes in compare UI
2026-03-01 05:00:29 -08:00
Apple
79f26ab683
feat(aurora-ui): add interactive pre-analysis controls and quality report
2026-03-01 04:10:10 -08:00
Apple
fe0f2e23c2
feat(aurora): expose quality report API and proxy via sofiia console
2026-03-01 03:59:54 -08:00
Apple
ff97d3cf4a
fix(console): route Aurora Kling enhance via standard proxy base URL
2026-03-01 03:48:19 -08:00