@whisperr/wizard 0.9.0 → 0.9.1
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 +19 -7
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -1789,14 +1789,20 @@ ${allowedFiles.map((file) => `- ${file}`).join("\n")}`
|
|
|
1789
1789
|
(action) => deps.sink.emit({ phase: "binding", action })
|
|
1790
1790
|
);
|
|
1791
1791
|
const passesValidation = async () => {
|
|
1792
|
-
if (!validate) return
|
|
1792
|
+
if (!validate) return outcome.kind === "completed";
|
|
1793
1793
|
try {
|
|
1794
1794
|
return await validate();
|
|
1795
1795
|
} catch {
|
|
1796
1796
|
return false;
|
|
1797
1797
|
}
|
|
1798
1798
|
};
|
|
1799
|
-
let valid =
|
|
1799
|
+
let valid = await passesValidation();
|
|
1800
|
+
if (valid && outcome.kind !== "completed") {
|
|
1801
|
+
deps.sink.emit({
|
|
1802
|
+
phase: "binding",
|
|
1803
|
+
action: `setup changes passed deterministic validation after ${outcome.kind.replaceAll("_", " ")}`
|
|
1804
|
+
});
|
|
1805
|
+
}
|
|
1800
1806
|
if (!valid && deps.provider.invokeFallback) {
|
|
1801
1807
|
await deps.discardChanges();
|
|
1802
1808
|
await writeFile(join4(deps.worktree.path, bindings.relativePath), bindings.content);
|
|
@@ -1806,7 +1812,13 @@ ${allowedFiles.map((file) => `- ${file}`).join("\n")}`
|
|
|
1806
1812
|
modelConfigFor(deps.models, "repair", "edit"),
|
|
1807
1813
|
(action) => deps.sink.emit({ phase: "binding", action })
|
|
1808
1814
|
);
|
|
1809
|
-
valid =
|
|
1815
|
+
valid = await passesValidation();
|
|
1816
|
+
if (valid && outcome.kind !== "completed") {
|
|
1817
|
+
deps.sink.emit({
|
|
1818
|
+
phase: "binding",
|
|
1819
|
+
action: `Sol setup passed deterministic validation after ${outcome.kind.replaceAll("_", " ")}`
|
|
1820
|
+
});
|
|
1821
|
+
}
|
|
1810
1822
|
}
|
|
1811
1823
|
return valid;
|
|
1812
1824
|
}
|
|
@@ -1917,8 +1929,8 @@ async function runClusterIntegration(deps, initialClusters, _clusterDiff) {
|
|
|
1917
1929
|
modelConfigFor(deps.models, "cluster_edit", "edit"),
|
|
1918
1930
|
(action) => deps.sink.emit({ phase: "integrating", cluster: { index, total }, action })
|
|
1919
1931
|
);
|
|
1920
|
-
let structural =
|
|
1921
|
-
if (
|
|
1932
|
+
let structural = await structuralClusterCheck(deps.worktree.path, cluster);
|
|
1933
|
+
if (!structural.ok && deps.provider.invokeFallback) {
|
|
1922
1934
|
await deps.discardChanges();
|
|
1923
1935
|
deps.sink.emit({
|
|
1924
1936
|
phase: "integrating",
|
|
@@ -1930,9 +1942,9 @@ async function runClusterIntegration(deps, initialClusters, _clusterDiff) {
|
|
|
1930
1942
|
modelConfigFor(deps.models, "repair", "edit"),
|
|
1931
1943
|
(action) => deps.sink.emit({ phase: "integrating", cluster: { index, total }, action })
|
|
1932
1944
|
);
|
|
1933
|
-
structural =
|
|
1945
|
+
structural = await structuralClusterCheck(deps.worktree.path, cluster);
|
|
1934
1946
|
}
|
|
1935
|
-
if (
|
|
1947
|
+
if (!structural.ok) {
|
|
1936
1948
|
const failure = edit.kind === "context_overflow" ? "context_overflow" : edit.kind === "budget_exhausted" ? "context_overflow" : classifyFailure(edit.kind === "failed" ? edit.error : "");
|
|
1937
1949
|
const nextStatus = nextClusterStatusAfterFailure(failure, cluster.attempts);
|
|
1938
1950
|
clusters = transitionCluster(
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@whisperr/wizard",
|
|
3
|
-
"version": "0.9.
|
|
3
|
+
"version": "0.9.1",
|
|
4
4
|
"description": "Whisperr Wizard \u2014 one command to integrate the Whisperr SDK into your app. Authenticates with your onboarded account and uses an AI coding agent to wire up identify() and your business events automatically.",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|