@sulhadin/orchestrator 1.15.14 → 1.15.16
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/bin/index.js
CHANGED
|
@@ -184,11 +184,14 @@ function run() {
|
|
|
184
184
|
let hasKnowledge = false;
|
|
185
185
|
if (fs.existsSync(knowledgeSrc)) {
|
|
186
186
|
const content = fs.readFileSync(knowledgeSrc, "utf-8");
|
|
187
|
-
//
|
|
188
|
-
|
|
187
|
+
// Backup if there are any entries after the "Active Knowledge" marker
|
|
188
|
+
const activeMarker = "<!-- New entries go here";
|
|
189
|
+
const markerIdx = content.indexOf(activeMarker);
|
|
190
|
+
const hasEntries = markerIdx !== -1 && content.slice(markerIdx + activeMarker.length).trim().length > 10;
|
|
191
|
+
if (hasEntries) {
|
|
189
192
|
fs.copyFileSync(knowledgeSrc, knowledgeBackup);
|
|
190
193
|
hasKnowledge = true;
|
|
191
|
-
console.log(" [~] Backed up knowledge.md");
|
|
194
|
+
console.log(" [~] Backed up knowledge.md (has project entries)");
|
|
192
195
|
}
|
|
193
196
|
}
|
|
194
197
|
|
package/package.json
CHANGED
|
@@ -113,17 +113,16 @@ For each milestone (in order: in-progress first, then planning):
|
|
|
113
113
|
✅ M1-user-auth complete.
|
|
114
114
|
|
|
115
115
|
📋 Checking for next milestone...
|
|
116
|
-
|
|
116
|
+
Re-scan .orchestra/milestones/ by using Glob tool on `.orchestra/milestones/*/milestone.md`
|
|
117
|
+
— do NOT rely on your earlier scan results. (PM may have created new ones while you worked)
|
|
117
118
|
→ M2-dashboard found (status: planning)
|
|
118
119
|
→ Starting M2-dashboard...
|
|
119
120
|
[loop continues]
|
|
120
121
|
|
|
121
|
-
→
|
|
122
|
+
→ No milestones with status: planning or in-progress.
|
|
122
123
|
✅ All milestones complete. Waiting for new work from PM.
|
|
123
124
|
```
|
|
124
125
|
|
|
125
|
-
Use Glob tool on `.orchestra/milestones/*/milestone.md` — do NOT rely on your earlier scan results.
|
|
126
|
-
|
|
127
126
|
|
|
128
127
|
## Role Switching — Automatic, Based on Phase File
|
|
129
128
|
|
|
@@ -42,52 +42,3 @@ Compacted entries from older milestones. PM reads during grooming. Worker skips.
|
|
|
42
42
|
Last 5 milestones. Worker reads before every milestone start. PM reads before grooming.
|
|
43
43
|
|
|
44
44
|
<!-- New entries go here — move oldest to Archive when count exceeds 5 -->
|
|
45
|
-
|
|
46
|
-
## 2026-03-25 — Orchestra v2.0: 7 Feature Enhancement
|
|
47
|
-
|
|
48
|
-
### Decisions
|
|
49
|
-
- Fast Track Mode (quick/standard/full): Pipeline rigidity was the biggest speed bottleneck. PM now sets complexity per milestone.
|
|
50
|
-
- Verification Gate before every commit: "Code without tests is not done" was a rule but had no enforcement. Now it's a hard gate with max 3 retries.
|
|
51
|
-
- Selective Context Loading: Reading all 6 role files at startup wasted ~40-60% of context window. Now only the active role file is loaded per phase.
|
|
52
|
-
- Research Phase before coding: an alternative system's best practice — research existing code before writing prevents "wrong assumption → rewrite" cycles.
|
|
53
|
-
- Adaptive Discovery: Architect's 8-round mandatory questions were excessive for existing projects. Now scans codebase first, only asks what's unknown.
|
|
54
|
-
- Stuck Detection + Recovery: Worker had no protection against infinite retry loops. Now detects same-error-3x, circular fixes, and escalates.
|
|
55
|
-
- Learning System (knowledge.md): No cross-milestone knowledge persistence existed. Now decisions, lessons, and patterns accumulate.
|
|
56
|
-
|
|
57
|
-
### Lessons Learned
|
|
58
|
-
- an alternative system comparison revealed Orchestra's strengths (simplicity, roles) and weaknesses (no verification, no learning, rigid pipeline) clearly
|
|
59
|
-
- First proposal was biased toward "what an alternative system has that we don't" → revised to "what actually blocks shipping speed"
|
|
60
|
-
- User challenge ("tekrar düşünmek ister misin?") led to dropping 3 low-impact features and adding 3 high-impact ones
|
|
61
|
-
- Bottom-up file editing (modify bottom lines first) prevents line number shifts when multiple features touch the same file
|
|
62
|
-
|
|
63
|
-
### Patterns
|
|
64
|
-
- Evolution Methodology: 6-phase process (Analyze → Propose → Challenge → Plan → Implement → Capture) codified in owner.md
|
|
65
|
-
- Impact Assessment Table: Rate each proposed change on Speed/Quality/Error/Cost axes before prioritizing
|
|
66
|
-
- Analyzer Agents: Use orchestra-analyzer and codebase-deep-analyzer for deep system comparison before making architectural decisions
|
|
67
|
-
|
|
68
|
-
## 2026-03-25 — Orchestra v2.0 Tier 2: 4 Additional Features
|
|
69
|
-
|
|
70
|
-
### Decisions
|
|
71
|
-
- Skill System (markdown-only): Lightweight `.orchestra/skills/` with domain checklists (auth, CRUD, deployment). No registry, no keyword matching — PM manually assigns via `skills:` frontmatter in phase files. Preserves zero-infrastructure philosophy.
|
|
72
|
-
- Cost Awareness: Track duration + verification retries per phase in context.md Cost Tracking table. PM sees this in #status. No token counting (unreliable from prompt), focus on observable metrics.
|
|
73
|
-
- Re-review Threshold: Fix < 30 lines → no re-review. Fix >= 30 lines → abbreviated re-review (only the fix commit). Balances quality vs speed.
|
|
74
|
-
- Rejection Flow: RFC rejected → architect revises (max 3 rounds). Push rejected → create fix phase. System no longer stalls on "no".
|
|
75
|
-
|
|
76
|
-
### Lessons Learned
|
|
77
|
-
- Skills should be manual assignment (PM decides) not automatic (keyword matching) — an alternative system's keyword matching is crude and error-prone
|
|
78
|
-
- Cost tracking without actual token counts is still valuable — duration and retry count reveal expensive phases
|
|
79
|
-
- Re-review threshold of 30 lines is a heuristic, may need calibration per project
|
|
80
|
-
|
|
81
|
-
## 2026-03-25 — Orchestra v2.0 Tier 3: 4 Strategic Features
|
|
82
|
-
|
|
83
|
-
### Decisions
|
|
84
|
-
- Parallel Phase Execution: Uses `depends_on` in phase frontmatter + Claude Code subagent with worktree isolation. Backward compatible — no `depends_on` = sequential.
|
|
85
|
-
- Hotfix Pipeline: `#hotfix {desc}` — zero-gate except verification. Auto-creates milestone, implements, pushes. For production emergencies only.
|
|
86
|
-
- Blueprint System: `.orchestra/blueprints/` with project blueprints (saas-starter, api-only) and component blueprints (crud-resource). PM customizes before creating milestones.
|
|
87
|
-
- Milestone Retrospective: Exactly 5 lines per milestone — longest phase, retries, stuck, review findings, missing skill. Appended to knowledge.md automatically.
|
|
88
|
-
|
|
89
|
-
### Lessons Learned
|
|
90
|
-
- User rejected auto-grooming (PM has more context, should own grooming) — respect role boundaries even when optimizing
|
|
91
|
-
- Parallel execution must be opt-in (depends_on) not default — breaking existing sequential behavior would be dangerous
|
|
92
|
-
- Blueprint component pattern (parameterized single-milestone templates) is more reusable than full-project blueprints
|
|
93
|
-
- Retrospective must be fixed-format (5 lines) to prevent data clutter — user raised this concern explicitly
|