@appchy/jarvis 0.1.87 → 0.1.89
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/bin.js +26 -2
- package/dist/bin.js.map +1 -1
- package/dist/data/mcp.mjs +25 -1
- package/package.json +5 -5
package/dist/bin.js
CHANGED
|
@@ -8478,12 +8478,32 @@ function planScope(ctx, req) {
|
|
|
8478
8478
|
anticipated,
|
|
8479
8479
|
editCodeNodes,
|
|
8480
8480
|
governance,
|
|
8481
|
+
obligations: toObligations(governance, anticipated),
|
|
8481
8482
|
references,
|
|
8482
8483
|
testsCovering,
|
|
8483
8484
|
blastRadius,
|
|
8484
8485
|
lowConfidence
|
|
8485
8486
|
};
|
|
8486
8487
|
}
|
|
8488
|
+
function toObligations(governance, existing = []) {
|
|
8489
|
+
const rules = governance.map((g) => {
|
|
8490
|
+
const full = g.body !== void 0;
|
|
8491
|
+
return {
|
|
8492
|
+
type: "governance",
|
|
8493
|
+
id: g.id,
|
|
8494
|
+
full,
|
|
8495
|
+
statement: full ? `Its full text is here. Say how the plan satisfies it, or why it does not apply.` : `Not read yet \u2014 only its title arrived. Read it, then say how the plan satisfies it.`
|
|
8496
|
+
};
|
|
8497
|
+
});
|
|
8498
|
+
return [
|
|
8499
|
+
...rules,
|
|
8500
|
+
...existing.map((e) => ({
|
|
8501
|
+
type: "existing",
|
|
8502
|
+
id: e.line === void 0 ? e.file : `${e.file}:${e.line}`,
|
|
8503
|
+
statement: `Already in the tree and close to what was described. Reuse it, or say why the plan builds alongside it.`
|
|
8504
|
+
}))
|
|
8505
|
+
];
|
|
8506
|
+
}
|
|
8487
8507
|
function isCodeHit(hit) {
|
|
8488
8508
|
return hit.file !== void 0 && hit.id === void 0;
|
|
8489
8509
|
}
|
|
@@ -9000,6 +9020,7 @@ async function scope(ctx, req) {
|
|
|
9000
9020
|
editSet: [],
|
|
9001
9021
|
anticipatedIntegrationPoints: [],
|
|
9002
9022
|
governance: [],
|
|
9023
|
+
obligations: [],
|
|
9003
9024
|
references: [],
|
|
9004
9025
|
testsCovering: [],
|
|
9005
9026
|
blastRadius: { total: 0, byType: {} },
|
|
@@ -9108,13 +9129,16 @@ async function scope(ctx, req) {
|
|
|
9108
9129
|
const rules = await readRules(ctx, plan.governance, req.rules);
|
|
9109
9130
|
const topFiles = plan.editSet.slice(0, 3).map((e) => e.file).join(", ");
|
|
9110
9131
|
const topGov = plan.governance.filter((g) => g.body === void 0).slice(0, 3).map((g) => g.id).join(", ");
|
|
9111
|
-
const
|
|
9132
|
+
const unread = plan.obligations.filter((o) => o.type === "governance" && !o.full).length;
|
|
9133
|
+
const reuse = plan.obligations.filter((o) => o.type === "existing").length;
|
|
9134
|
+
const summary = plan.lowConfidence ? `Low-confidence (build-new) scope for "${req.task}": no code strongly matched \u2014 ${plan.anticipated.length} integration point(s) to READ, not edit; ${plan.governance.length} concept-matched governance. Lead with search + read.` : `Scoped "${req.task}": ${plan.editSet.length} edit target(s), ${plan.governance.length} governance, ${plan.testsCovering.length} covering test(s), blast radius ${plan.blastRadius.total} (${confidence})${topFiles ? ` \u2014 ${topFiles}` : ""}.${rules.ids > 0 && topGov ? ` ${rules.full} rule(s) came back in full; NEXT: read ${topGov} for the ${rules.ids} that did not,` : rules.full > 0 ? ` All ${rules.full} governing rule(s) came back in FULL \u2014 read them here, not with map_read;` : " NEXT:"} then check the edit-set with map_scope {edits} before you commit.${plan.obligations.length > 0 ? ` ${plan.obligations.length} obligation(s) outstanding${unread > 0 ? `, ${unread} rule(s) not yet read` : ""}${reuse > 0 ? `, ${reuse} thing(s) that already exist` : ""} \u2014 see \`obligations\`.` : ""}`;
|
|
9112
9135
|
return {
|
|
9113
9136
|
summary,
|
|
9114
9137
|
task: req.task,
|
|
9115
9138
|
editSet: plan.editSet,
|
|
9116
9139
|
anticipatedIntegrationPoints: plan.anticipated,
|
|
9117
9140
|
governance: plan.governance,
|
|
9141
|
+
obligations: plan.obligations,
|
|
9118
9142
|
rules,
|
|
9119
9143
|
references: plan.references,
|
|
9120
9144
|
testsCovering: plan.testsCovering,
|
|
@@ -10114,7 +10138,7 @@ import { createRequire as createRequire2 } from "module";
|
|
|
10114
10138
|
var _require = createRequire2(import.meta.url);
|
|
10115
10139
|
var VERSION2 = _require("../package.json").version ?? "0.0.0";
|
|
10116
10140
|
var IS_DEV = String(_require("../package.json").name ?? "").endsWith("-dev");
|
|
10117
|
-
var SHA = "
|
|
10141
|
+
var SHA = "ec7e216";
|
|
10118
10142
|
var BUILT = "2026-09-11";
|
|
10119
10143
|
var BUILD = SHA ?? "source";
|
|
10120
10144
|
var BUILD_LABEL = `${SHA ? `${VERSION2} (${SHA}${BUILT ? ` ${BUILT}` : ""})` : `${VERSION2} (source)`}${IS_DEV ? " \u2014 development build" : ""}`;
|