feat: add procedural flows with intake forms, navigation, and seed templates
Adds a new "procedural" tree type for linear step-by-step project workflows (domain controller setup, M365 onboarding, VPN config, etc). Includes intake form builder, two-panel step navigation, variable resolution, procedural exports, 3 seed templates, and UI rename from "Trees" to "Flows". Also archives 19 implemented plan docs and creates deferred features backlog. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -41,6 +41,10 @@ When adding new pages/components: use "ResolutionFlow" branding, monochrome desi
|
||||
- Custom step continuation flow refinements (Phase 2.5)
|
||||
- Tree forking from sessions with custom steps
|
||||
|
||||
### Recently Completed
|
||||
|
||||
- Export improvements (Phases A-C): step cutoff, summary block, detail levels, editable preview, sensitive data redaction
|
||||
|
||||
---
|
||||
|
||||
## Tech Stack
|
||||
@@ -208,6 +212,8 @@ SELECT 'tag', 'slug', NULL::uuid as team_id -- Must cast NULL to uuid
|
||||
|
||||
**8. CORS errors can mask 500s:** Check backend logs first. Also run `alembic upgrade head` after pulling changes.
|
||||
|
||||
**11. CORS `expose_headers` for custom response headers:** Browsers block frontend from reading custom headers (e.g. `X-Redaction-Summary`) unless CORS middleware includes `expose_headers=["X-Custom-Header"]`. Must be set in BOTH CORS branches in `main.py`.
|
||||
|
||||
**9. Public endpoints with optional auth:** Use manual `_get_optional_user(request, db)` helper, NOT `Optional[User]` param (FastAPI treats it as Pydantic field).
|
||||
|
||||
**10. React Router — Clear dirty state before navigation:**
|
||||
|
||||
Reference in New Issue
Block a user