22 Commits

Author SHA1 Message Date
Claude
ac2ccf3b64 docs: plan 6 wrap-up — status, invariants, followups re-numbered 2026-08-30 14:50:49 +00:00
Claude
55cf372442 docs(plan): plan 6 — pinned node data implementation plan 2026-08-30 14:06:28 +00:00
Claude
8b48dd8bf8 docs(spec): pinned node data (n8n-style pin for manual test runs) 2026-08-30 14:00:27 +00:00
Claude
3e838ecf91 docs: plan 5 wrap-up — status, invariants, and re-numbered followups 2026-08-30 11:52:30 +00:00
Claude
1e5fd42619 docs(plan): plan 5 — node editor dialog implementation plan 2026-08-30 10:41:28 +00:00
Claude
744e19e813 docs(spec): node editor dialog (N8N-style, 3-column, expressions) 2026-08-30 10:27:55 +00:00
Claude
cd5827cca7 chore: untrack plan-4-kickoff-prompt.md (user's local prompt notes, not repo content) 2026-08-28 19:50:25 +00:00
Claude
4b30d4a44e feat(connections): edit connections via PUT — backend + UI + blank-secret merge
Backend: PUT /api/connections/{id} with UpdateConnectionRequest {Name, Config}.
Provider is immutable; a secret field left blank in the incoming config is
merged from the stored row so users can rename or rotate non-secret fields
without re-typing every credential. Invalidates the ConnectionInstanceRegistry
cache on update so the next GetConnection() re-opens with the fresh config.
409 on unique-name-per-provider collision, 404 on unknown id, 400 on non-
object config. 6 new xUnit tests cover the merge, overwrite, 404, 409, 400
paths plus the happy-path round-trip.

Frontend: ConnectionsPage gains an Edit pencil per row. The form is shared
between create and edit modes; provider select is disabled in edit; secret
fields render blank with an inline hint that leaving them blank keeps the
stored value. One new Vitest covers the edit flow.
2026-08-28 19:50:08 +00:00
Claude
d12581ad12 docs: fix Plan-4 order — push to origin BEFORE triggering Coolify deploy 2026-08-28 19:20:22 +00:00
Claude
d237cc06e4 docs: close out Plan 4 — live at core.tes.gd, clear Plan-4 follow-ups 2026-08-28 19:11:33 +00:00
Claude
c41d0f9216 docs: add Plan 4 — Container + Coolify deploy 2026-08-28 19:11:33 +00:00
Claude
5bfa7baad6 docs: add Plan 3 — React SPA plan 2026-08-28 16:03:16 +00:00
Claude
bc56e9edf1 docs: close out Plan 2 — workflow engine live 2026-08-28 15:39:36 +00:00
Claude
9194d9dc8a docs(followups): log legacy plaintext admin_config decrypt concern 2026-08-28 14:35:42 +00:00
Claude
35a5c4ec9b docs: add Plan 2 — workflow engine + real nodes + providers 2026-08-28 14:26:35 +00:00
Claude
86bf173d90 chore: close out Plan 1 — drop UnitTest1 stub, expand followups
- Delete auto-generated UnitTest1.cs stub (was masking any accidental "0 tests ran"
  regression).
- Add workflow-graph empty-body 500→400 case to followups (mirrors connections case).
- Extend env-parse follow-up to include ENCRYPTION_KEY base64 validation.
2026-08-28 12:26:36 +00:00
Claude
0f52730baf docs(followups): schema-driven secret policy, connections 400/409 handling 2026-08-28 12:16:06 +00:00
Claude
37c35581ec docs(plan-1): note ThrowsAny for tamper test (.NET 9 AesGcm behavior) 2026-08-28 12:08:43 +00:00
Claude
64c8326e18 docs: track cross-plan follow-ups (Secure cookie, encryption at rest, env parsing) 2026-08-28 11:52:46 +00:00
Claude
878a195774 docs(plan-1): drop bogus cookie-auth package from Task 1 (in shared framework) 2026-08-28 11:28:47 +00:00
Claude
49f198ac82 docs: Plan 1 — Backend Foundation
14 tasks with TDD steps:
- Solution + project skeleton
- SQLite + Migrator + first migration
- ASP.NET cookie auth + session endpoints
- Core contracts (INodeType, IActionNode, ITriggerNode, IConnectionProvider)
- NodeRegistry + ConnectionProviderRegistry
- Discovery endpoints
- AES-GCM connection secret encryption
- Connections CRUD + Workflows CRUD
- Live-server smoke via curl

Plans 2-4 previewed at the end.
2026-08-28 10:14:25 +00:00
Claude
feced0363c docs: design spec for VolcanicCore N8N-style workflow engine
- 5 v1 nodes: NATS Hook, Webhook, PythonTransform, WebResponse, NATS Publish
- INodeType + IConnectionProvider extension points
- In-degree scheduler, fan-out in v1, fan-in designed for
- SQLite persistence, execution history, Coolify single container
2026-08-28 09:17:41 +00:00