Nexus — Product Backlog — Phase 5+ Node Implementations

Product Backlog

Node type implementations and platform work items. Each backlog item maps to a node type or platform task, a milestone dependency, and one or more open decisions. Priority order is P1 → P2 → P3. Blocked items cannot start until their decision is resolved.

37 Backlog Items
4 P1 Critical
0 Open Decisions
Phase 5 Target Phase
13
Total Items
4
P1 Critical
4
P2 High
4
P3 Standard
0
Blocked
12
Ready to Start
3/4
Decisions Resolved
All 4 Decisions Resolved — 2026-04-18
D-05 RESOLVED Claude API — A: Real Claude API key. BL04 (AI Transform Text) and BL06 (AI Transform Voice) unblocked. Real Claude output in ARC offer, ENDO Marcin/Irena/Przemek pipelines.
D-06 RESOLVED ENDO Org Structure — A: Single org, 3 pipelines. Pryzmat Media as single Nexus org. Marcin, Irena, and Przemek are 3 pipelines within the same org. Demo seeder creates 1 org + 5 RBAC users. Pipeline profile switcher demonstrates multi-pipeline capability. D4–D6 demo phases unblocked.
D-07 RESOLVED Nesto UAE APIs — B: Mock HTTP Forward (log payload + 200 OK). No real MOHRE/Emirates ID/GDRFA sandbox needed. BL03, BL05 unblocked.
D-08 RESOLVED SMS Gateway — B: Mock SMS node (log + canvas display). No Twilio/MessageBird. BL02, BL09 unblocked.
Backlog Node Implementation Queue — BL01 through BL26
ID Node Type Priority Status Use Case Milestone Depends On Description
BL01 Scheduler Trigger P1 DONE ARC, ENDO M-NEXUS-E1 E1 (Execution Engine) Cron-style trigger node. Schedule a pipeline run at fixed interval or fixed time. Supports one-shot and recurring modes. Required for ARC email ingest (daily) and ENDO Marcin lead poll.
BL02 SMS Node P1 DONE ENDO (Marcin) M-NEXUS-D3 E1 Inbound and outbound SMS. D-08 resolved: Mock SMS (log payload + canvas display). Inbound: parse sender/body, write to pipeline run context. Outbound: log entry displayed in run view.
BL03 Validator Node P1 DONE Nesto, ARC M-NEXUS-E2 E1 Schema-driven field validation. Rule set configured at PICO scale. Outputs pass/fail + error list to run context. D-07 resolved: mock HTTP Forward — UAE API forward nodes use mock log + 200. Validator still runs against schema rules. For ARC: bank CSV column validation.
BL04 AI Transform (Text) P1 DONE ENDO (Irena, Marcin), ARC M-NEXUS-E2 E1 Send text payload to Claude API. D-05 resolved: Real Claude API key. Input: text + system prompt template (configured at MICRO). Output: structured JSON written to run context. Used for: lead qualification (Marcin), offer drafting (ARC), email sentiment (ARC).
BL05 HTTP Forward P2 DONE Nesto, ARC, ENDO M-NEXUS-E1 E1 POST run context (or subset) to a configured HTTP endpoint. Configurable: URL, headers, field mapping, timeout, retry policy. For Nesto: forward to MOHRE / Emirates ID / GDRFA (real or mock per D-07). For ARC: forward to client webhooks.
BL06 AI Transform (Voice) P2 DONE ENDO (Przemek) M-NEXUS-E3 BL04 + E2 Transcribe audio attachment (wav/mp3) via STT service, then pipe transcript through AI Transform / Real Claude (BL04). D-05 resolved: Real Claude API key. STT provider TBD (Whisper API / Azure Speech).
BL07 OCR Node P2 DONE Nesto, ENDO (Irena) M-NEXUS-E2 E1 + CV-1 (ChameleonV2 DocumentReference BDT) Extract text from uploaded PDF or image via OCR service. Write extracted fields to run context using field-mapping config (MICRO). For Nesto: passport fields + visa stamp. For Irena: invoice / document classification prep. OCR provider TBD (Tesseract / Azure Form Recognizer).
BL08 Transformer Node P2 DONE ARC (Invoice Match) M-NEXUS-E2 E1 Field mapping and data transformation. Input: run context fields. Config: JSONata or simple key-value map expressions. Output: transformed fields written back to run context. Used for bank CSV normalisation (ARC UC3-2) and date/currency format standardisation.
BL09 SMS Reply Node P3 DONE ENDO (Marcin) M-NEXUS-D4 BL02 Send outbound SMS reply using context from prior pipeline steps. Template engine: mustache-style field interpolation from run context. D-08 resolved: Mock SMS (log + canvas display). Used by Marcin pipeline step 6 (confirm appointment).
BL10 PDF Generator P3 DONE ARC (Offer Pipeline) M-NEXUS-E3 E2 + BL04 Render run context fields into a PDF using a configured HTML template. Output: PDF attachment stored to run context file reference. Used by ARC UC3-1b offer pipeline (step 5: PDF forward to client). Candidate library: WeasyPrint or Puppeteer headless.
BL11 Email Forward P3 DONE Nesto, ENDO (Irena), ARC M-NEXUS-E1 E1 Send email with configurable To/CC/subject/body template and optional attachment (from run context file reference). For Nesto: notify HR of decision (step 8). For Irena: forward categorised document (step 6). For ARC: send PDF offer (step 5). SMTP or SendGrid.
BL12 Report Generator P3 DONE ARC (Invoice Match) M-NEXUS-E3 E2 + BL08 Aggregate run context fields into a structured report (CSV or JSON). Config: field list, grouping, aggregation functions (sum, count). For ARC UC3-2: produce tax report from matched invoice rows. Output stored to run context and optionally forwarded via BL11.
BL13 Form Node P2 DONE Nesto, ENDO, ARC M-NEXUS-E2-1 ChameleonV2 Generate ChameleonV2 form URL for human data entry. Returns form_url + awaiting_submission status. Demo/test mode: prefilled_data bypasses the wait and returns data immediately.
BL14 Validate Node P2 DONE Nesto (compliance) M-NEXUS-E2-2 BL13, Nexus engine Call Nexus rule engine POST /api/validate with entity payload + rule_set. Returns per-field violation list. Raises ValueError on FAIL-severity violations (configurable raise_on_fail).
BL15 Store Node P2 DONE Nesto, ARC M-NEXUS-E2-3 BL14, deltaPrism Persist entity to deltaPrism Mode 1 warehouse. POST for create, PUT for upsert (id_field present). Returns stored entity_id. Raises RuntimeError if deltaPrism unreachable or response missing entity_id.
BL16 Human Gate Node P2 DONE Nesto, ARC M-NEXUS-E3-1 BL13, E1-3 SSE Pauses pipeline execution pending human decision. Demo mode: resolves immediately with resolution_data. Live mode: raises HumanGateAwaiting — runner stores awaiting_human state, resumes on ChameleonV2 form submit. Returns gate_result + gate_node_status.
BL17 Data Model Diagram (P-13) P2 DONE Platform M-ORCH Add a visual relationship diagram to data-model.html showing all tables, primary keys, foreign keys, and cardinality (one-to-many / many-to-many). Required by documentation policy P-13. Use a sanctioned HTML/CSS diagram component (P-07). Covers: entities, profiles, rules, runs, logs, orgs, users, and the M-ORCH multi-tenant tables (org / team / account / user / pipeline / node_type / run).
BL18 Purge Schema from Architecture Docs (P-14) P2 DONE Platform M-ORCH BL17 Audit all architecture documents (architecture.html, NEXUS_HLD.html, ORCHESTRATION_PLAN.html, use case docs) for inline table schema. Any column lists, DDL, or field-type definitions found must be removed and replaced with a cross-reference link to data-model.html. Required by documentation policy P-14. Depends on BL17 (data model must be complete before schema is removed from architecture docs).
BL19 Rename demo-auto (remove theatre terminology) P1 DONE Demo M-ORCH Rename id="demo-theatre" to id="demo-auto", window.demoTheatre to window.nexusAuto, all dt-* CSS classes to da-*. Remove all “theatre” wording from NEXUS_DEMO_SPEC.html. Existing animation overlay is deprecated by BL22. See NEXUS_DEMO_VISION.html.
BL20 Entity Creation Panels (Org, Team, User) P1 DONE Demo M-ORCH BL19 Add entity creation side-panel component using existing #class-panel infrastructure. Supports Org, Team, User entity types. Fields driven by the data template registry (BL21). Panel opens/closes with existing animation. Save writes to in-memory state and updates org/team/user dropdowns in the toolbar.
BL21 Data Template Registry + Intellisense Field Proposals P1 DONE Demo M-ORCH BL20 Implement DATA_TEMPLATES registry with 7+ built-in templates (Person, Worker UAE, Organisation, Team, Compliance Document, Pipeline Run Result, API Endpoint). Wire template selection into schema creation flow. Inline field proposal list on node/schema creation. Confirmation finalises schema and updates canvas palette.
BL22 Autonomous Mode Controller (window.nexusAuto) P1 DONE Demo M-ORCH BL20, BL21 Implement full 9-step autonomous sequence as defined in NEXUS_DEMO_VISION.html Section 03. Async generator architecture. No overlay — all DOM interactions through real UI paths. Canvas visible throughout. Pacing at inflection points. Speed multiplier support. Progress indicator in toolbar. Cancel on second DEMO click. Replaces current overlay entirely.
BL23 RBAC-Driven Form Generator P1 DONE Demo M-ORCH BL21 Form generation from schema + RBAC matrix. Four role variants: Entry (Submitter), Review (Validator), Decision (HR Manager), Payload (API Consumer). Form opens in the existing side panel. Fields generated from schema field list filtered by role visibility matrix. Style variant applied via CSS class on panel root. See NEXUS_DEMO_VISION.html Section 05.
BL24 Schema → Canvas Palette Sync P2 DONE Demo M-ORCH BL21 When a schema is confirmed, update the canvas node type palette with typed node variants: FormNode[SchemaName], StoreNode[SchemaName], ValidateNode[SchemaName]. Dragging a typed node auto-populates its config with the correct schema reference, required field list, and default rule set.
BL25 Demo Vision Doc — Registry + Nav + Index Card P2 DONE Platform M-ORCH Add NEXUS_DEMO_VISION.html to NEXUS_DOC_HIERARCHY.html active registry (row 21). Update doc count to 21 in all relevant headers. Add doc card to index.html. Update NEXUS_DOC_POLICY.html sitemap to include the new file.
BL26 WORMWOOD_APP Pipeline Versioning UI — REQ-VER-005 P1 OPEN Platform M-ORCH REQ-VER-005 Add status badge pills (DRAFT amber / ACTIVE green / ARCHIVED grey) per pipeline row in WORMWOOD_APP.html pipeline list. Add per-row action buttons: Draft → [Publish][Edit][Export][Delete]; Active → [Deactivate][Fork][Export]; Archived → [Restore][Export]. Publish action shows confirmation dialog: “Publishing v{X} will archive current active v{Y}. Continue?”. Calls new API endpoints: POST /pipelines/{id}/publish, /deactivate, /restore, /fork, GET /pipelines/{id}/descriptor.
BL27 Hub Card Health Indicator — REQ-ENV-001 P1 OPEN Platform M-HUB REQ-ENV-001 Add live health dot + label (ONLINE/DEGRADED/OFFLINE/UNKNOWN) to each hub card. Poll GET /orgs/{org_slug}/environments/production at 10s interval. Clicking dot navigates to App Management page env detail. Requires BL28 (environments API) to exist first.
BL28 Environment Management — DB, API, Lifecycle — REQ-ENV-002/003/004 P1 OPEN Platform M-API REQ-ENV-002, REQ-ENV-003, REQ-ENV-004 Create DB table _tbl_org_environments (org_slug, name, slug, version, status, url, created_at, last_deployed_at). Implement 10 API endpoints: GET/POST /orgs/{org_slug}/environments; GET/start/stop/restart/backup/upgrade/downgrade /orgs/{org_slug}/environments/{env_slug}; GET /backups. Seed production environments for all active orgs. Alembic migration required.
BL29 App Management Page SPA — REQ-MGMT-001/002/003 P1 OPEN Platform M-HUB REQ-MGMT-001, REQ-MGMT-002, REQ-MGMT-003, BL28 Create docs/APP_MGMT.html SPA. Sections: header (org name, env selector, health dot), environments panel (list with action buttons), pipeline versions (REQ-VER-002), backups, settings (RMB editor). Prominent “Open App” CTA, “Back to Hub” button. Deep-link support: ?org=X&env=Y. Skin inherited via ?skin= param. Inherits NEXUS_APP.html enterWorkspace() for Open App action.
BL30 Hub Card Click → App Management (navigation change) — REQ-MGMT-001 P1 OPEN Platform M-HUB REQ-MGMT-001, BL29 Replace enterWorkspace() onclick on .hub-card with navigateToManagement(orgData) in NEXUS_APP.html. Update all Playwright E2E tests (test_card_click_nav_flow) to assert navigation to APP_MGMT.html rather than direct workspace entry. Update NEXUS_APP_SPEC.html US-HUB-020 ACs (already done 2026-05-06).
BL31 Hub Card RMB Context Menu — REQ-RMB-001/002/003 P2 OPEN Platform M-HUB REQ-RMB-001, REQ-RMB-002, REQ-RMB-003, BL28, BL29 Create DB table _tbl_org_rmb_items (org_slug, label, action_type, action_target, icon, order, enabled, demo_mode). Implement GET/PUT /orgs/{org_slug}/rmb-items. Add contextmenu event handler to .hub-card in NEXUS_APP.html: initCardRmb(), renderRmbMenu(), rmbAction(), dismissRmbMenu(). Default 4 items always present. Inline mini-dialog for env_action type. Toast notifications for action results.
BL32 RMB Demo Mode — REQ-RMB-005 P2 OPEN Platform M-HUB REQ-RMB-005, BL31 Add demo_mode boolean column to _tbl_org_rmb_items. In rmbAction(): if item.demo_mode, show walkthrough animation without executing real API call. Tag demo items with DEMO pill in the RMB menu. Useful for client demos that show capabilities without live env impact.
BL33 App Settings RMB Menu Editor — REQ-RMB-004 P2 OPEN Platform M-HUB REQ-RMB-004, BL29, BL31 In APP_MGMT.html Settings section: drag-drop reorder (HTML5 draggable or Sortable.js), toggle enabled per item, add new item form (label, action_type selector, target, icon), delete with confirmation, live preview pane. “Reset to defaults” restores 4 system defaults only. Saves via PUT /orgs/{org_slug}/rmb-items.
BL34 Hub App Filter — S-Tier Design Rework P2 OPEN Platform M-HUB REQ-HUB-FILTER, NEXUS_APP_STYLING.html The current filter row (SORTUJ pill, STATUS/TYP/KLIENT flat label rows, plain search input) is functional but not product-quality design. Required rework: (1) Filter chips with individual remove buttons per active filter, (2) Active filter count badge on filter toggle button, (3) Collapsible filter panel with animated open/close matching hub card glass aesthetic (dark glass, border glow), (4) STATUS filter uses coloured dot pills matching org status colours (green=Prod, amber=Dev, grey=Plan), (5) TYP filter uses category icon + label chips, (6) KLIENT dropdown replaced with searchable combobox, (7) “Clear all” action appears only when filters active, (8) Filter state persisted in URL params so filtered view is shareable. References: docs/NEXUS_APP_REQUIREMENTS.html REQ-HUB-FILTER-001..006, docs/NEXUS_APP_STYLING.html design token set, docs/NEXUS_APP_SPEC.html US-HUB-FILTER user stories.
BL35 RAID Log and Roadmap — Replace Arbitrary Mock Data with Accurate Real Content P1 OPEN Platform M-HUB NEXUS_ROADMAP.html, docs/NEXUS_OPERATIONAL_BACKLOG.md Current docs/NEXUS_ROADMAP.html milestone dates and phase labels are placeholders invented at document creation time and do not reflect actual sprint delivery history. Required: (1) Read docs/NEXUS_SPRINT4_RECKONING.html and docs/NEXUS_SPRINT5_PLAN.html — extract actual milestone completion dates, (2) Read docs/NEXUS_OPERATIONAL_BACKLOG.md — extract known upcoming deliverables, (3) Audit every date in docs/NEXUS_ROADMAP.html against those sources — remove any date with no documented evidence and replace with a realistic estimate derived from sprint velocity, (4) Read ROTC_MANIFEST.md RAID section — ensure every RAID item in the roadmap has a corresponding entry in docs/KNOWN_ISSUES.md or sprint reckoning doc, (5) Remove any roadmap item that has no corresponding backlog entry (BL01..BL37) or sprint task. Deliverable: NEXUS_ROADMAP.html where every date has a source citation in a HTML comment.
BL36 APP_MGMT Pipelines Section — Per-Pipeline Orchestrator Deep-Link Button P2 OPEN Platform M-HUB REQ-MGMT-002, BL29, BL26, docs/NEXUS_ORCHESTRATOR_USER_MANUAL.html The Pipelines/Versions section of docs/APP_MGMT.html lists pipeline rows but provides no way to open a specific pipeline in the Orchestrator canvas. Required: (1) Each pipeline row gets an “Open in Orchestrator” icon button (chain-link icon), (2) Button constructs URL: WORMWOOD_APP.html?org={org_slug}&pipeline={pipeline_slug}&skin={current_skin}&key={localStorage('nexus-api-key')}, (3) WORMWOOD_APP.html already reads all four params from the URL — no changes required there, (4) Button opens in same tab (not new tab), skin and key are passed the same way as the existing “Open App” button (T-14 in Sprint 5), (5) Gate 4 static check: assert the per-pipeline link construction exists in APP_MGMT.html, (6) Gate 11 section: assert at least one pipeline row has the link button and its href contains pipeline slug, skin, and key params. References: docs/NEXUS_APP_REQUIREMENTS.html REQ-MGMT-002, docs/NEXUS_ORCHESTRATOR_USER_MANUAL.html deep-link section.
BL37 APP_MGMT — Complete Gate 11 User Story Coverage Including Context Menu and All Hook Flows P1 OPEN Platform M-HUB NEXUS_APP_SPEC.html, REQ-MGMT-*, REQ-RMB-*, REQ-ENV-*, REQ-VER-* Gate 11 currently has sections covering APP_MGMT tabs (S20), orchestrator link (S21), user modal (S22), users save (S23), envs save (S24). Required: a dedicated Gate 11 section for EVERY user story in docs/NEXUS_APP_SPEC.html tagged US-MGMT-* or US-RMB-*. Specifically missing: (1) Context menu (RMB) complete user story flows — right-click card, menu renders with correct items, each action type executes correctly or shows demo animation, dismiss on click-outside; covers REQ-RMB-001 through REQ-RMB-005, (2) Environment action hooks — start/stop/restart/backup/upgrade/downgrade buttons trigger correct API calls or surface correct errors, (3) Pipeline version status badge rendering — DRAFT/ACTIVE/ARCHIVED badges visible per row, action buttons present per status, (4) Backup list render and download flow, (5) Health indicator poll and status update, (6) Settings RMB editor drag-reorder, toggle, add, delete, reset-to-defaults. Each user story gets its own _section_N_ function in scripts/gate_11_uat_visual.py with full screenshot sequence and field-level assertions. References: docs/NEXUS_APP_SPEC.html all US-MGMT-* and US-RMB-* stories, docs/NEXUS_APP_REQUIREMENTS.html REQ-MGMT-001..006 and REQ-RMB-001..005.
BL38 REQ-AUTH-005: Backend — User Management API + DB Migration P1 DONE Platform M-AUTH REQ-AUTH-005, NEXUS_LLD.html 7.7–7.9, A-16 Implement three user management API endpoints in wormwood/api/routes_auth.py and update the data model. (1) Add require_nexus_admin decorator: verifies Bearer JWT, checks nexus_role == nexus_admin, raises HTTP 403 if not. (2) GET /auth/users: returns all NexusPlatformUser rows as JSON array; fields: id, email, display_name, nexus_role, is_active, last_login_at, created_at. (3) PATCH /auth/users/{id}/role: body {"role": "nexus_admin"|"nexus_user"}. 422 on invalid role. 404 user not found. 409 + cannot_demote_self if id == jwt.sub. Writes role_updated_at = utcnow(), role_updated_by = requesting_admin_email. Returns updated record. (4) PATCH /auth/users/{id}/active: body {"is_active": true|false}. 409 + cannot_deactivate_self if id == jwt.sub. Auth callback checks is_active == 0 on every login and redirects with HTTP 403 + account_deactivated if false. (5) Update admin/models.py NexusPlatformUser: add is_active (Integer, default=1), role_updated_at (DateTime, nullable), role_updated_by (Text, nullable). (6) Create admin/migrate_m_nexus_06.py: ALTER TABLE _tbl_nexus_platform_users ADD COLUMN for all 3 new columns. create_all does not add columns to existing tables. DONE 2026-05-11 — ISSUE-073 fix deployed via ACT_deploy_engine_issue073.py. gate_11 S36 PASS.
BL39 REQ-AUTH-005: Frontend — Users Tab in APP_MGMT.html P1 DONE Platform M-AUTH REQ-AUTH-005, NEXUS_APP_MOCKUPS.html section 07 & 07b, BL38 Add "Użytkownicy" tab to docs/APP_MGMT.html. Visible only when JWT role == nexus_admin. (1) loadUsersTable(): calls GET /auth/users, renders glassmorphism table (Email/Imię, Rola badge, Status dot, Ostatnie logowanie, Dołączył, Akcje). Self row has action buttons disabled (self-protection guard, AC-005-06/07). Deactivated rows at opacity 0.65 + strikethrough email. (2) openRoleModal(userId, currentRole): renders role change modal (ref: NEXUS_APP_MOCKUPS.html 07b). Amber warning on nexus_admin escalation. Blocks if userId == jwt.sub. (3) patchUserRole(userId, newRole): calls PATCH /auth/users/{userId}/role. Success: toast + optimistic row update. 409: error message in modal. (4) patchUserActive(userId, isActive): calls PATCH /auth/users/{userId}/active. Success: toast + row visual state switch. 409: error toast. Depends on BL38. DONE 2026-05-11 — gate_11 S36 PASS. ISSUE-073 fix deployed.
BL40 REQ-AUTH-005: Post-build documentation update P2 DONE Platform M-AUTH REQ-AUTH-005, NEXUS_COMPONENT_STATUS.html, NEXUS_APP_USER_MANUAL.html, BL38, BL39 After BL38 + BL39 deployed and verified: (1) NEXUS_COMPONENT_STATUS.html auth components updated to VERIFIED (2026-05-11). (2) NEXUS_LLD.html updated with ISSUE-073 root cause and fix. (3) NEXUS_APP_USER_MANUAL.html updated with 8h session note. DONE 2026-05-11 — All documentation updated this session. gate_11 S34/35/36 PASS.
Dependencies Implementation Order — Critical Path
Wave Items Gate Unblocks Notes
Wave 1 BL01, BL05, BL11 M-NEXUS-E1 done BL02, BL03, BL07, BL08, BL09, BL10, BL12 No decisions needed. Start immediately after E1 (Execution Engine) milestone ships.
Wave 2 BL03, BL07, BL08 Wave 1 + D-07 BL12 BL03 requires D-07 (UAE API). BL07 requires CV-1 DocumentReference BDT. BL08 has no external dependency.
Wave 3 BL04, BL02 D-05 + D-08 BL06, BL09, BL10 Both blocked on open decisions. BL04 (Claude API) on D-05. BL02 (SMS) on D-08. Resolve decisions first.
Wave 4 BL06, BL09, BL10, BL12 Wave 3 done Final wave. All UC demo seeding phases D3–D8 require at least Wave 3 complete.
Cross-Reference Backlog Items by Use Case and Milestone
Use Case Pipeline Required Nodes Backlog IDs Blocking Decisions
UC1 — Nesto UAE Worker Onboarding Form, OCR, Validator, Store, HR Gate, HTTP Forward, Email Forward BL03, BL05, BL07, BL11 D-07 (Validator + HTTP Forward)
UC2-1 — ENDO Marcin Lead Qualification SMS Node, AI Transform, Scheduler, SMS Reply BL01, BL02, BL04, BL09 D-05 (AI Transform), D-08 (SMS)
UC2-2 — ENDO Irena Document Processing OCR, Validator, Email Forward BL03, BL07, BL11 D-07 (Validator)
UC2-3 — ENDO Przemek Voice to CEO Gate AI Transform (Voice), AI Transform (Text), Email Forward BL04, BL06, BL11 D-05 (AI Transform)
UC3-1a — ARC Email Ingest Scheduler, AI Transform (sentiment) BL01, BL04 D-05 (AI Transform)
UC3-1b — ARC Offer Pipeline AI Transform, PDF Generator, Email Forward BL04, BL10, BL11 D-05 (AI Transform)
UC3-2 — ARC Invoice Match Transformer, Validator, Report Generator BL03, BL08, BL12 D-07 (Validator)
NX-S22 — Autonomous Demo Sprint (2026-05-28)

Goal: A paying client can take delivery of the platform, log in, and build their first pipeline end-to-end — without writing code and without a developer present.
Milestone gate: Interactive autonomous demo runs unattended for 3 minutes, builds the Nesto UAE worker onboarding pipeline from a blank canvas, executes it live, and returns results.
Sprint end state: Gate 11 full pass (149+ sections), DoD Completion Block signed off, SESSION_REVIVAL.md updated.

IDWork PackageOwnerREQStatus
WP1 app_catalog DB table + migration + GET /apps/catalog endpoint — replaces _USECASE_META hardcoded dict and USE_CASES JS constant BACKEND_CORE REQ-HUB-002, GAP-12 OPEN
WP2 Remove USE_CASES constant from Orchestrator SPA; card grid reads from GET /apps/catalog BACKEND_CORE GAP-12 OPEN
WP6 JWT-first auth: require_jwt_or_api_key() backend dep; Hub captures #token=JWT from OAuth callback; forwards as ?token=JWT to sub-SPAs; authHdrs() in Orchestrator uses JWT silently (D-001) BACKEND_CORE REQ-ORCH-004, REQ-ORCH-003, REQ-AUTH-005 OPEN
WP3 APP_MGMT.html — API Keys tab (list/create/revoke) and Connectors tab (list/edit) wired to live API DOC_SCRIBE REQ-MGMT-002, REQ-MGMT-003 OPEN
WP4 Per-node property schemas fetched from GET /api/node-schemas/{type} — 6 node types; remove hardcoded schemas from Orchestrator SPA (GAP-11) BACKEND_CORE GAP-11, REQ-ORCH-005 OPEN
H22 Hub topbar: add #btn-liber-nav (→ :8900) and #btn-liber-cog (→ LIBER_COGITATUS.html) as distinct buttons DOC_SCRIBE REQ-HUB-022 OPEN
VER Pipeline status badge pills (DRAFT/ACTIVE/ARCHIVED) + action buttons (Publish/Deactivate/Fork/Export/Restore) in Orchestrator; auto-draft on edit of ACTIVE pipeline DOC_SCRIBE REQ-VER-005, REQ-VER-003 OPEN
DESC Export pipeline as descriptor JSON (button → GET /pipelines/{id}/descriptor); Import descriptor JSON (button → POST /pipelines/import) DOC_SCRIBE REQ-DESC-001, REQ-DESC-002 OPEN
DEMO Autonomous demo mode in NEXUS_APP.html: 15-step tutorial overlay, spotlight focus, node palette drag, property panel configuration, edge drawing, live execution — builds Nesto pipeline from blank canvas in 3 min without developer DOC_SCRIBE NEXUS_DEMO_REQUIREMENTS_CLARIFICATION.md (AS-1) OPEN
GATE Gate 11 sections S37 (app catalog API), S38 (JWT silent auth), S39 (APP_MGMT tabs), S40 (node schemas API); full 149+ PASS; DoD Completion Block signed QA_GUARDIAN DoD v1.0 OPEN

Delivery sequence: WP1 → WP2 → WP6 → (WP3 || WP4 || H22 || VER || DESC) → DEMO → GATE
Demonstrable achievement: Google login → Hub (DB-driven) → ARC App Management → Orchestrator (JWT silent) → drag node → configure → connect → RUN → live SSE animation → export descriptor. Zero developer input. Zero API key prompt.