cascade-ai 0.55.0 → 0.56.0

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/dist/index.js CHANGED
@@ -1851,7 +1851,7 @@ function reconcilePrice(model, live) {
1851
1851
  }
1852
1852
 
1853
1853
  // src/constants.ts
1854
- var CASCADE_VERSION = "0.55.0";
1854
+ var CASCADE_VERSION = "0.56.0";
1855
1855
  var CASCADE_CONFIG_DIR = ".cascade";
1856
1856
  var CASCADE_MD_FILE = "CASCADE.md";
1857
1857
  var CASCADE_IGNORE_FILE = ".cascadeignore";
@@ -7826,7 +7826,7 @@ HIERARCHY CONTEXT: ${this.hierarchyContext}` : ""),
7826
7826
  const jsonMatch = /\[[\s\S]*\]/.exec(result.content);
7827
7827
  if (!jsonMatch) throw new Error("No JSON array found");
7828
7828
  const parsed = JSON.parse(jsonMatch[0]);
7829
- return parsed.map((a) => ({ ...a, sectionTitle: assignment.sectionTitle }));
7829
+ return parsed.map((a) => ({ ...a, sectionTitle: assignment.sectionTitle, constraints: a.constraints ?? [] }));
7830
7830
  } catch {
7831
7831
  return [{
7832
7832
  subtaskId: randomUUID(),
@@ -8784,6 +8784,12 @@ SPEC RULES \u2014 each subtask is a self-contained spec slice (workers execute f
8784
8784
  if (!plan.sections || !Array.isArray(plan.sections) || plan.sections.length === 0) {
8785
8785
  throw new Error("Invalid plan: no sections");
8786
8786
  }
8787
+ for (const section of plan.sections) {
8788
+ section.constraints ??= [];
8789
+ for (const subtask of section.t3Subtasks ?? []) {
8790
+ subtask.constraints ??= [];
8791
+ }
8792
+ }
8787
8793
  const [min, max] = COMPLEXITY_T2_COUNT[plan.complexity] ?? [1, 8];
8788
8794
  if (plan.sections.length < min) ;
8789
8795
  }