Commit graph

16 commits

Author SHA1 Message Date
Jonas Miederer
696db34c90 fix: typer exit codes, JWT 7d expiry, shared test fixtures, AdminTab query, mantine 9.6.3 2026-09-30 22:27:58 +02:00
Jonas Miederer
03af41e837 refactor: form-core wiring, JWT sessions, slowapi, packaging, frontend rewrite, test declutter 2026-09-28 18:03:07 +02:00
Jonas Miederer
06ab25fb47 refactor: tighten backend, flows, frontend, tests; push flows to Langflow 2026-09-28 15:58:00 +02:00
Jonas Miederer
f27be044b4 feat: asked-field envelope, standalone form components, branched forms 2026-09-28 14:07:09 +02:00
Jonas Miederer
0d43b0e8fb feat: dynamic form fields, JSON output, branched questionnaires 2026-09-27 22:26:48 +02:00
Jonas Miederer
1326cece42 feat: manual full-pass sync Langflow -> files -> DB+LFX with admin guide 2026-09-24 22:33:33 +02:00
Jonas Miederer
25cf645295 chore: prod env checker, secret guidance, internet-exposure runbook 2026-09-14 21:39:06 +02:00
Jonas Miederer
94e5e53092 fix: authorize flow management, gate runs, token-gate callbacks, strict tenants 2026-09-14 20:12:32 +02:00
Jonas Miederer
a6cc585dd0 chore: enforce ruff lint and format standards across backend 2026-09-14 08:10:14 +02:00
Jonas Miederer
df5c1e296c feat: bell-tower favicon, lfx-clean flows, branded HTML mail 2026-09-13 17:57:42 +02:00
Jonas Miederer
46ecab00db feat: form-input library with schema parsing and endpoint 2026-09-12 07:36:05 +02:00
Jonas Miederer
c65e3ed332 feat: canonical flow directory with sync engine (files are source of truth) 2026-09-07 08:59:56 +00:00
Jonas Miederer
7d5ade6b6a chore: switch to all-SQLite stack (drop Postgres service) 2026-09-07 08:39:06 +00:00
Jonas Miederer
0a2b73f3b4 feat: minimal frontend (run view, approvals, admin) with E2E smoke
- Tabs: Vorgaenge (run flows + history), Freigaben (decide tasks),
  Administration (Langflow link, import, deploy)
- Typed API client over vite /api proxy; tsc + vite build clean
- scripts/smoke_e2e.py: real LFX + API end-to-end, all green
- 34 backend tests green
2026-09-06 23:13:05 +00:00
Jonas Miederer
1034206870 feat: Langflow authoring pipeline with tests
- LangflowClient (list/export, x-api-key auth, error mapping)
- import_from_langflow: export -> versioned definition -> LFX deploy
- POST /api/flows/import, GET /api/flows/langflow/available
- scripts/deploy_flow.py CLI
- 25 tests green (Langflow faked via dependency override + respx
  client tests; respx passthrough proven unreliable for LFX traffic)
2026-09-06 23:01:47 +00:00
Jonas Miederer
96c0da33c7 feat: flow runtime on LFX with tests
- LfxClient (upload/run/info/delete, typed errors, serve-key auth)
- Flows API: CRUD, versions, deploy, sync run, SSE stream proxy, runs
- Approvals callback endpoint (flow terminal-state contract)
- Runner: envelope in, status from approval side-effect (no interrupts)
- Fixture generator (lfx serializers) + simple_rule/approval_handoff
  fixtures verified against real lfx serve
- 14 tests green (real LFX subprocess + live uvicorn callback server)
2026-09-06 22:47:45 +00:00