Merge pull request #3116 from jeremymcs/refactor/planning-tier-heavy
refactor(complexity): reclassify planning phases from standard to heavy tier
This commit is contained in:
commit
0415f41eee
2 changed files with 12 additions and 10 deletions
|
|
@ -35,15 +35,17 @@ const UNIT_TYPE_TIERS: Record<string, ComplexityTier> = {
|
|||
"complete-slice": "light",
|
||||
"run-uat": "light",
|
||||
|
||||
// Tier 2 — Standard: research, routine planning, discussion
|
||||
// Tier 2 — Standard: research, routine discussion
|
||||
"discuss-milestone": "standard",
|
||||
"discuss-slice": "standard",
|
||||
"research-milestone": "standard",
|
||||
"research-slice": "standard",
|
||||
"plan-milestone": "standard",
|
||||
"plan-slice": "standard",
|
||||
|
||||
// Tier 3 — Heavy: execution, replanning (requires deep reasoning)
|
||||
// Tier 3 — Heavy: planning, execution, replanning (requires deep reasoning)
|
||||
// Planning is heavy so it uses the best configured model (e.g. Opus) and is
|
||||
// not downgraded by dynamic routing when a capable model is configured.
|
||||
"plan-milestone": "heavy",
|
||||
"plan-slice": "heavy",
|
||||
"execute-task": "standard", // default standard, upgraded by metadata
|
||||
"replan-slice": "heavy",
|
||||
"reassess-roadmap": "heavy",
|
||||
|
|
@ -185,8 +187,8 @@ function analyzePlanComplexity(
|
|||
// Check if this is a milestone-level plan (more complex) vs single slice
|
||||
const { milestone: mid, slice: sid } = parseUnitId(unitId);
|
||||
if (!sid) {
|
||||
// Milestone-level planning is always at least standard
|
||||
return { tier: "standard", reason: "milestone-level planning" };
|
||||
// Milestone-level planning is always heavy — requires full context and best model
|
||||
return { tier: "heavy", reason: "milestone-level planning" };
|
||||
}
|
||||
|
||||
// For slice planning, try to read the context/research to gauge complexity
|
||||
|
|
|
|||
|
|
@ -41,14 +41,14 @@ test("research-slice classifies as standard", () => {
|
|||
assert.equal(result.tier, "standard");
|
||||
});
|
||||
|
||||
test("plan-milestone classifies as standard", () => {
|
||||
test("plan-milestone classifies as heavy", () => {
|
||||
const result = classifyUnitComplexity("plan-milestone", "M001", "/tmp/fake");
|
||||
assert.equal(result.tier, "standard");
|
||||
assert.equal(result.tier, "heavy");
|
||||
});
|
||||
|
||||
test("plan-slice classifies as standard", () => {
|
||||
test("plan-slice classifies as heavy", () => {
|
||||
const result = classifyUnitComplexity("plan-slice", "M001/S01", "/tmp/fake");
|
||||
assert.equal(result.tier, "standard");
|
||||
assert.equal(result.tier, "heavy");
|
||||
});
|
||||
|
||||
test("replan-slice classifies as heavy", () => {
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue