e160b3e1cd
Tasks completed: 4/5 (1 skipped - path still needed) - Fix batch actions routing to use sub-workflow - Wire logs sub-workflow (deployment documented) - Remove Python helper scripts (6 files, 1468 lines) - Task 3 skipped: old inline path handles legacy callbacks SUMMARY: .planning/phases/10-workflow-modularization/10-06-SUMMARY.md
100 lines
3.5 KiB
Markdown
100 lines
3.5 KiB
Markdown
# Project State — Unraid Docker Manager
|
|
|
|
## Current Position
|
|
|
|
- **Milestone:** v1.2 — Modularization & Polish
|
|
- **Phase:** 10 of 13 (Workflow Modularization)
|
|
- **Plan:** 10-06 COMPLETE
|
|
- **Status:** Phase 10 complete
|
|
- **Last activity:** 2026-02-04 — Completed 10-06 remediation plan
|
|
|
|
## Progress
|
|
|
|
```
|
|
v1.0: [██████████] 100% SHIPPED
|
|
v1.1: [██████████] 100% SHIPPED
|
|
|
|
v1.2: [████ ] 40%
|
|
|
|
Phase 10: Workflow Modularization [██████████] 100% COMPLETE
|
|
Phase 10.1: Better Logging & Log Mgmt [ ] Pending (INSERTED)
|
|
Phase 11: Update All & Callback Limits [ ] Pending
|
|
Phase 12: Polish & Audit [ ] Pending
|
|
Phase 13: Documentation Overhaul [ ] Pending
|
|
```
|
|
|
|
## Phase 10 Status
|
|
|
|
| Plan | Description | Status |
|
|
|------|-------------|--------|
|
|
| 10-01 | Orphan node cleanup | COMPLETE |
|
|
| 10-02 | Container Update sub-workflow | COMPLETE |
|
|
| 10-03 | Container Actions sub-workflow | COMPLETE |
|
|
| 10-04 | Integration verification | COMPLETE |
|
|
| 10-05 | Complete modularization (batch, logs) | COMPLETE |
|
|
| 10-06 | Remediation: routing, logs, cleanup | COMPLETE |
|
|
|
|
## Key Artifacts
|
|
|
|
- `n8n-container-update.json` — ID: `7AvTzLtKXM2hZTio92_mC`
|
|
- `n8n-container-actions.json` — ID: `fYSZS5PkH0VSEaT5`
|
|
- `n8n-container-logs.json` — ID: `TODO_DEPLOY_LOGS_WORKFLOW` (user must deploy)
|
|
- Main workflow: 199 nodes (reduced from 209)
|
|
|
|
## Technical Notes
|
|
|
|
**n8n typeVersion 1.2 requirement:**
|
|
```json
|
|
"workflowId": { "__rl": true, "mode": "list", "value": "<id>" }
|
|
```
|
|
|
|
**Docker API success detection:**
|
|
- 204 No Content = success (empty response body)
|
|
- Check `!response.message && !response.error`
|
|
|
|
**Sub-workflow input contracts:**
|
|
- Container Update: containerId, containerName, chatId, messageId, responseMode
|
|
- Container Actions: containerId, containerName, action, chatId, messageId, responseMode
|
|
- Container Logs: containerId/containerName, lineCount, chatId, messageId, responseMode
|
|
|
|
**Route Callback exclusion pattern:**
|
|
- Rule 4 (isBatch) now requires `isBatch=true AND isBatchExec!=true`
|
|
- Prevents batch exec callbacks from matching old inline path
|
|
|
|
## Accumulated Decisions
|
|
|
|
| Phase | Decision | Rationale |
|
|
|-------|----------|-----------|
|
|
| 10-05 | Use placeholder workflow ID for logs sub-workflow | ID assigned by n8n on import, not in JSON file |
|
|
| 10-05 | Retain Parse Logs Command in main workflow | Handles error cases before sub-workflow call |
|
|
| 10-05 | Keep old Build Batch Commands flow | Different execution model, may be used by legacy paths |
|
|
| 10-05 | Accept 199 nodes above target (120-150) | Core goals achieved, further optimization deferred |
|
|
| 10-06 | Retained old batch inline path | Handles legacy JSON callbacks from "did you mean?" suggestions |
|
|
| 10-06 | Used TODO marker for logs workflow ID | Clear, searchable indicator for user deployment |
|
|
|
|
## User Action Required
|
|
|
|
**Deploy Container Logs sub-workflow:**
|
|
1. Import `n8n-container-logs.json` into n8n
|
|
2. Note the assigned workflow ID
|
|
3. Search `n8n-workflow.json` for `TODO_DEPLOY_LOGS_WORKFLOW`
|
|
4. Replace both occurrences with actual ID
|
|
5. Re-import main workflow
|
|
|
|
## Next Step
|
|
|
|
**Phase 10.1: Better Logging & Log Management** (INSERTED - URGENT)
|
|
|
|
## Roadmap Evolution
|
|
|
|
- Phase 10.1 inserted after Phase 10: Better Logging and Log Management (URGENT)
|
|
|
|
## Session Continuity
|
|
|
|
- **Last session:** 2026-02-04T19:54:49Z
|
|
- **Stopped at:** Completed 10-06-PLAN.md
|
|
- **Resume file:** None
|
|
|
|
---
|
|
*Auto-maintained by GSD workflow*
|