@codyswann/lisa 4.8.3 → 4.8.4
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/all/copy-overwrite/scripts/lisa-run-gates.mjs +232 -67
- package/dist/core/lisa-owned-hash-ledger.d.ts.map +1 -1
- package/dist/core/lisa-owned-hash-ledger.js +2 -0
- package/dist/core/lisa-owned-hash-ledger.js.map +1 -1
- package/dist/core/upstream-evidence-manifest.d.ts.map +1 -1
- package/dist/core/upstream-evidence-manifest.js +2 -1
- package/dist/core/upstream-evidence-manifest.js.map +1 -1
- package/package.json +1 -1
- package/plugins/lisa/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa/.codex-plugin/plugin.json +1 -1
- package/plugins/lisa-agy/plugin.json +1 -1
- package/plugins/lisa-cdk/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-cdk/.codex-plugin/plugin.json +1 -1
- package/plugins/lisa-cdk-agy/plugin.json +1 -1
- package/plugins/lisa-cdk-copilot/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-cdk-cursor/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-copilot/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-cursor/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-expo/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-expo/.codex-plugin/plugin.json +1 -1
- package/plugins/lisa-expo-agy/plugin.json +1 -1
- package/plugins/lisa-expo-copilot/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-expo-cursor/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-harper-fabric/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-harper-fabric/.codex-plugin/plugin.json +1 -1
- package/plugins/lisa-harper-fabric-agy/plugin.json +1 -1
- package/plugins/lisa-harper-fabric-copilot/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-harper-fabric-cursor/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-nestjs/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-nestjs/.codex-plugin/plugin.json +1 -1
- package/plugins/lisa-nestjs-agy/plugin.json +1 -1
- package/plugins/lisa-nestjs-copilot/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-nestjs-cursor/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-openclaw/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-openclaw/.codex-plugin/plugin.json +1 -1
- package/plugins/lisa-openclaw-agy/plugin.json +1 -1
- package/plugins/lisa-openclaw-copilot/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-openclaw-cursor/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-phaser/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-phaser/.codex-plugin/plugin.json +1 -1
- package/plugins/lisa-phaser-agy/plugin.json +1 -1
- package/plugins/lisa-phaser-copilot/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-phaser-cursor/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-rails/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-rails/.codex-plugin/plugin.json +1 -1
- package/plugins/lisa-rails-agy/plugin.json +1 -1
- package/plugins/lisa-rails-copilot/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-rails-cursor/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-typescript/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-typescript/.codex-plugin/plugin.json +1 -1
- package/plugins/lisa-typescript-agy/plugin.json +1 -1
- package/plugins/lisa-typescript-copilot/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-typescript-cursor/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-wiki/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-wiki/.codex-plugin/plugin.json +1 -1
- package/plugins/lisa-wiki-agy/plugin.json +1 -1
- package/plugins/lisa-wiki-copilot/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-wiki-cursor/.claude-plugin/plugin.json +1 -1
|
@@ -60,7 +60,6 @@ import { invokedAsScript } from "./lib/invoked-as-script.mjs";
|
|
|
60
60
|
import {
|
|
61
61
|
configurationProblems,
|
|
62
62
|
declarationsAt,
|
|
63
|
-
momentFamily,
|
|
64
63
|
momentsExecutedBy,
|
|
65
64
|
projectScripts,
|
|
66
65
|
readGates,
|
|
@@ -969,19 +968,21 @@ function spawnExec(command) {
|
|
|
969
968
|
}
|
|
970
969
|
|
|
971
970
|
/**
|
|
972
|
-
*
|
|
973
|
-
*/
|
|
974
|
-
export const EVIDENCE_SCHEMA_VERSION = 1;
|
|
975
|
-
|
|
976
|
-
/**
|
|
977
|
-
* Discriminator a reader checks before trusting a file's shape.
|
|
971
|
+
* The one schema token, which a reader REFUSES to best-effort parse past.
|
|
978
972
|
*
|
|
979
973
|
* A reader that parsed any JSON it was handed would credit a file that happens
|
|
980
974
|
* to have a `gates` array, which is how evidence of one thing becomes evidence
|
|
981
975
|
* of another. This token is also what a caller greps for to find out whether
|
|
982
976
|
* the runner it resolved is old enough to ignore `--evidence` entirely.
|
|
977
|
+
*
|
|
978
|
+
* Shared verbatim with the release verifier in CodySwannGT/lisa#3013. Two
|
|
979
|
+
* producers — this one at the deploy moments, that one at `pull-request` — and
|
|
980
|
+
* ONE schema, because two evidence formats for one property is this
|
|
981
|
+
* repository's recurring defect. The verifier keys on `contract.moment` and
|
|
982
|
+
* refuses to satisfy a `pre-deploy:*` gate with a `pull-request` envelope
|
|
983
|
+
* regardless of tree match, so the two producers never compete.
|
|
983
984
|
*/
|
|
984
|
-
export const
|
|
985
|
+
export const EVIDENCE_SCHEMA = "lisa.gate-evidence/v1";
|
|
985
986
|
|
|
986
987
|
/**
|
|
987
988
|
* What this run was able to say about the moment as a whole.
|
|
@@ -1049,21 +1050,94 @@ function canonical(value) {
|
|
|
1049
1050
|
}
|
|
1050
1051
|
|
|
1051
1052
|
/**
|
|
1052
|
-
*
|
|
1053
|
-
*
|
|
1054
|
-
*
|
|
1055
|
-
* reader comparing digests can refuse a result recorded when the gate was
|
|
1056
|
-
* `optional` from satisfying a moment that now declares it `required` — which
|
|
1057
|
-
* is a stale-evidence hole that no timestamp closes.
|
|
1058
|
-
* @param {object|null} gates The gates block, or null when it was unreadable.
|
|
1059
|
-
* @returns {string|null} `sha256:<hex>`, or null when there was no block.
|
|
1053
|
+
* A sha256 over canonical JSON, spelled once.
|
|
1054
|
+
* @param {unknown} value Any JSON value.
|
|
1055
|
+
* @returns {string} `sha256:<hex>`.
|
|
1060
1056
|
*/
|
|
1061
|
-
function
|
|
1062
|
-
|
|
1063
|
-
const canonicalised = JSON.stringify(canonical(gates));
|
|
1057
|
+
function digest(value) {
|
|
1058
|
+
const canonicalised = JSON.stringify(canonical(value));
|
|
1064
1059
|
return `sha256:${createHash("sha256").update(canonicalised).digest("hex")}`;
|
|
1065
1060
|
}
|
|
1066
1061
|
|
|
1062
|
+
/**
|
|
1063
|
+
* Digest of the RESOLVED PLAN at this moment — not the config file's bytes.
|
|
1064
|
+
*
|
|
1065
|
+
* Evidence is only reusable while the contract that produced it still holds,
|
|
1066
|
+
* and three things make the plan the right subject rather than the file:
|
|
1067
|
+
*
|
|
1068
|
+
* - an unrelated key elsewhere in `.lisa.config.json` being edited would force
|
|
1069
|
+
* spurious reruns against a file digest, while proving nothing changed here;
|
|
1070
|
+
* - the raw file does not capture `shippedAs` alias resolution, which reads
|
|
1071
|
+
* `package.json` scripts and genuinely changes WHICH COMMAND proved the
|
|
1072
|
+
* gate — a file digest would call two different provers the same contract;
|
|
1073
|
+
* - `includeOff: true` is what makes "this project declared the gate off" a
|
|
1074
|
+
* RECORDED fact rather than an absence indistinguishable from a registry
|
|
1075
|
+
* that never knew the gate existed.
|
|
1076
|
+
*
|
|
1077
|
+
* It is also what refuses a result recorded while a gate was `optional` from
|
|
1078
|
+
* satisfying a moment that now declares it `required` — a stale-evidence hole
|
|
1079
|
+
* no timestamp closes.
|
|
1080
|
+
* @param {object} options Inputs.
|
|
1081
|
+
* @param {object|null} options.gates The gates block.
|
|
1082
|
+
* @param {string} options.moment The moment being run.
|
|
1083
|
+
* @param {string} [options.runner] The task-runner prefix.
|
|
1084
|
+
* @param {Record<string,string>|null} [options.scripts] Project scripts.
|
|
1085
|
+
* @returns {string|null} `sha256:<hex>`, or null when no plan could resolve.
|
|
1086
|
+
*/
|
|
1087
|
+
function planDigest({ gates, moment, runner, scripts = null }) {
|
|
1088
|
+
if (!gates) return null;
|
|
1089
|
+
try {
|
|
1090
|
+
// The runner is forwarded verbatim when stated, INCLUDING a value
|
|
1091
|
+
// `resolveMoment` refuses. A truthiness guard here would let an invalid
|
|
1092
|
+
// runner fall through to the default, and the envelope would then record
|
|
1093
|
+
// `contract.runner` as one thing while digesting a plan built from
|
|
1094
|
+
// another — two facts about the same run, in one document.
|
|
1095
|
+
const options = { gates, includeOff: true, moment, scripts };
|
|
1096
|
+
const plan = resolveMoment(
|
|
1097
|
+
runner === undefined ? options : { ...options, runner }
|
|
1098
|
+
).map(gate => ({
|
|
1099
|
+
awaits: gate.awaits,
|
|
1100
|
+
command: gate.command,
|
|
1101
|
+
id: gate.id,
|
|
1102
|
+
level: gate.level,
|
|
1103
|
+
mode: gate.mode,
|
|
1104
|
+
task: gate.task,
|
|
1105
|
+
work: gate.work,
|
|
1106
|
+
}));
|
|
1107
|
+
return digest({
|
|
1108
|
+
gates: [...plan].sort((left, right) => left.id.localeCompare(right.id)),
|
|
1109
|
+
runner: runner ?? null,
|
|
1110
|
+
});
|
|
1111
|
+
} catch {
|
|
1112
|
+
// An unresolvable plan — an invalid runner, a refused configuration — has
|
|
1113
|
+
// no contract to digest. Null says so; it does not guess one.
|
|
1114
|
+
return null;
|
|
1115
|
+
}
|
|
1116
|
+
}
|
|
1117
|
+
|
|
1118
|
+
/**
|
|
1119
|
+
* The `@codyswann/lisa` version that owns the resolver behind this run.
|
|
1120
|
+
*
|
|
1121
|
+
* Read from the package manifest three directories up, which is this file's
|
|
1122
|
+
* home both inside the installed package and inside the Lisa repository. The
|
|
1123
|
+
* name check is what makes it safe: a project that COPIED this script into its
|
|
1124
|
+
* own `scripts/` would find its own manifest there, and reporting a host
|
|
1125
|
+
* application's version as the registry version would be a confident lie about
|
|
1126
|
+
* which resolver produced the plan.
|
|
1127
|
+
* @returns {string|null} The version, or null when it cannot be established.
|
|
1128
|
+
*/
|
|
1129
|
+
function registryVersion() {
|
|
1130
|
+
try {
|
|
1131
|
+
const manifest = fileURLToPath(
|
|
1132
|
+
new URL("../../../package.json", import.meta.url)
|
|
1133
|
+
);
|
|
1134
|
+
const parsed = JSON.parse(readFileSync(manifest, "utf8"));
|
|
1135
|
+
return parsed.name === "@codyswann/lisa" ? (parsed.version ?? null) : null;
|
|
1136
|
+
} catch {
|
|
1137
|
+
return null;
|
|
1138
|
+
}
|
|
1139
|
+
}
|
|
1140
|
+
|
|
1067
1141
|
/**
|
|
1068
1142
|
* One revision from git, or null when git cannot answer.
|
|
1069
1143
|
*
|
|
@@ -1089,65 +1163,142 @@ function gitRev(spec) {
|
|
|
1089
1163
|
}
|
|
1090
1164
|
|
|
1091
1165
|
/**
|
|
1092
|
-
*
|
|
1093
|
-
*
|
|
1094
|
-
* `
|
|
1095
|
-
*
|
|
1096
|
-
*
|
|
1097
|
-
*
|
|
1098
|
-
*
|
|
1099
|
-
* that is exactly the case where reuse is sound.
|
|
1100
|
-
* @param {object} options Inputs.
|
|
1101
|
-
* @param {string} options.moment The moment that was run.
|
|
1102
|
-
* @param {object|null} options.gates The gates block that was executed.
|
|
1166
|
+
* WHAT this evidence is about: the tree, and nothing that varies with it.
|
|
1167
|
+
*
|
|
1168
|
+
* `tree` is the identity; `commit` is evidentiary only. Both are recorded
|
|
1169
|
+
* deliberately, because two commits legitimately share a tree after a rebase
|
|
1170
|
+
* and that is exactly the case where reusing the evidence is sound — a reader
|
|
1171
|
+
* keyed on the commit would rerun everything a rebase touched for no reason,
|
|
1172
|
+
* and one keyed on nothing at all would credit a tree that never shipped.
|
|
1103
1173
|
* @returns {object} The subject binding.
|
|
1104
1174
|
*/
|
|
1105
|
-
function evidenceSubject(
|
|
1106
|
-
const family = momentFamily(moment);
|
|
1107
|
-
const [, environment = null] = moment.split(":");
|
|
1175
|
+
function evidenceSubject() {
|
|
1108
1176
|
return {
|
|
1109
1177
|
repository: process.env.GITHUB_REPOSITORY ?? null,
|
|
1110
|
-
|
|
1111
|
-
|
|
1178
|
+
tree: gitRev("HEAD^{tree}"),
|
|
1179
|
+
commit: process.env.GITHUB_SHA ?? gitRev("HEAD"),
|
|
1112
1180
|
ref: process.env.GITHUB_REF ?? null,
|
|
1181
|
+
};
|
|
1182
|
+
}
|
|
1183
|
+
|
|
1184
|
+
/**
|
|
1185
|
+
* UNDER WHICH CONTRACT it was proved — the half a tree hash cannot carry.
|
|
1186
|
+
*
|
|
1187
|
+
* `workflow_ref` and `workflow_sha` are not redundant with `subject.tree`, and
|
|
1188
|
+
* this is the load-bearing argument for keeping them: consumers call the
|
|
1189
|
+
* reusable workflow at `@main`, so its contents can change with NO change to
|
|
1190
|
+
* the caller's tree. Tree identity alone would let evidence produced by an
|
|
1191
|
+
* older, weaker workflow satisfy a stricter one.
|
|
1192
|
+
*
|
|
1193
|
+
* `inputs_digest` covers the same hole one level down — the same workflow at
|
|
1194
|
+
* the same sha proves different things when handed a different
|
|
1195
|
+
* `working_directory` or `install_dependencies`. The caller states its own
|
|
1196
|
+
* normalised inputs, because only the caller knows them; unstated means null,
|
|
1197
|
+
* which a verifier reads as "not established" rather than "no inputs".
|
|
1198
|
+
* @param {object} options Inputs.
|
|
1199
|
+
* @param {string} options.moment The moment that was run.
|
|
1200
|
+
* @param {object|null} options.gates The gates block that was executed.
|
|
1201
|
+
* @param {string} [options.runner] The task-runner prefix.
|
|
1202
|
+
* @param {Record<string,string>|null} [options.scripts] Project scripts.
|
|
1203
|
+
* @returns {object} The contract binding.
|
|
1204
|
+
*/
|
|
1205
|
+
function evidenceContract({ moment, gates, runner, scripts = null }) {
|
|
1206
|
+
const inputs = process.env.LISA_GATE_EVIDENCE_INPUTS ?? null;
|
|
1207
|
+
return {
|
|
1113
1208
|
moment,
|
|
1114
|
-
|
|
1115
|
-
|
|
1116
|
-
|
|
1117
|
-
|
|
1118
|
-
|
|
1209
|
+
runner: runner ?? null,
|
|
1210
|
+
gates_digest: planDigest({ gates, moment, runner, scripts }),
|
|
1211
|
+
registry_version: registryVersion(),
|
|
1212
|
+
workflow_ref: process.env.GITHUB_WORKFLOW_REF ?? null,
|
|
1213
|
+
workflow_sha: process.env.GITHUB_WORKFLOW_SHA ?? null,
|
|
1214
|
+
inputs_digest: inputs ? digest(JSON.parse(inputs)) : null,
|
|
1119
1215
|
};
|
|
1120
1216
|
}
|
|
1121
1217
|
|
|
1122
1218
|
/**
|
|
1123
|
-
*
|
|
1219
|
+
* A caller chain the CALLER derived, or null. Never a literal written here.
|
|
1220
|
+
*
|
|
1221
|
+
* Depth is a property of how a consumer wired its workflows, not of the gates
|
|
1222
|
+
* block: a pull-request path posts one level and a release path posts two, and
|
|
1223
|
+
* a consumer's release job is not even named uniformly across the fleet. The
|
|
1224
|
+
* only truthful derivation is `postedCallerChains` over a completed run's
|
|
1225
|
+
* check-run names, which needs API scope this runner does not have — so a
|
|
1226
|
+
* caller that CAN read them states the answer here, and everything else
|
|
1227
|
+
* records null. A verifier treats a null chain as ineligible and reruns, which
|
|
1228
|
+
* is the safe direction; a guessed literal would not be.
|
|
1229
|
+
* @returns {string[]|null} The chain, shallowest element first.
|
|
1230
|
+
*/
|
|
1231
|
+
function callerChain() {
|
|
1232
|
+
const stated = process.env.LISA_GATE_EVIDENCE_CALLER_CHAIN ?? null;
|
|
1233
|
+
if (!stated) return null;
|
|
1234
|
+
try {
|
|
1235
|
+
const parsed = JSON.parse(stated);
|
|
1236
|
+
return Array.isArray(parsed) && parsed.every(el => typeof el === "string")
|
|
1237
|
+
? parsed
|
|
1238
|
+
: null;
|
|
1239
|
+
} catch {
|
|
1240
|
+
return null;
|
|
1241
|
+
}
|
|
1242
|
+
}
|
|
1243
|
+
|
|
1244
|
+
/**
|
|
1245
|
+
* WHO produced it, so an auditor can go and read the run.
|
|
1246
|
+
*
|
|
1247
|
+
* `reused_gates` is emitted from day one, empty, even though nothing reuses
|
|
1248
|
+
* yet. An absent field and an empty one must not be the same thing to a
|
|
1249
|
+
* reader: adding it later would leave every envelope written before the
|
|
1250
|
+
* addition indistinguishable from one that reused everything. It exists to
|
|
1251
|
+
* close circular reuse — a run that reuses evidence and then emits its own
|
|
1252
|
+
* envelope could otherwise be reused in turn, and the chain of proof bottoms
|
|
1253
|
+
* out on nothing. A verifier refuses any envelope with a non-empty
|
|
1254
|
+
* `reused_gates` as a source. Primary proof only.
|
|
1124
1255
|
* @returns {object} The originating run, with nulls off CI.
|
|
1125
1256
|
*/
|
|
1126
|
-
function
|
|
1257
|
+
function evidenceProducer() {
|
|
1127
1258
|
const id = process.env.GITHUB_RUN_ID ?? null;
|
|
1128
1259
|
const server = process.env.GITHUB_SERVER_URL ?? null;
|
|
1129
1260
|
const repository = process.env.GITHUB_REPOSITORY ?? null;
|
|
1130
1261
|
return {
|
|
1131
|
-
id,
|
|
1132
|
-
|
|
1133
|
-
|
|
1134
|
-
job: process.env.GITHUB_JOB ?? null,
|
|
1135
|
-
actor: process.env.GITHUB_ACTOR ?? null,
|
|
1136
|
-
url:
|
|
1262
|
+
run_id: id,
|
|
1263
|
+
run_attempt: process.env.GITHUB_RUN_ATTEMPT ?? null,
|
|
1264
|
+
run_url:
|
|
1137
1265
|
id && server && repository
|
|
1138
1266
|
? `${server}/${repository}/actions/runs/${id}`
|
|
1139
1267
|
: null,
|
|
1268
|
+
workflow: process.env.GITHUB_WORKFLOW ?? null,
|
|
1269
|
+
event: process.env.GITHUB_EVENT_NAME ?? null,
|
|
1270
|
+
actor: process.env.GITHUB_ACTOR ?? null,
|
|
1271
|
+
caller_chain: callerChain(),
|
|
1272
|
+
// This runner never reuses. It executes every gate it records, so the list
|
|
1273
|
+
// is empty by construction rather than by omission.
|
|
1274
|
+
reused_gates: [],
|
|
1140
1275
|
};
|
|
1141
1276
|
}
|
|
1142
1277
|
|
|
1143
1278
|
/**
|
|
1144
|
-
* One gate's outcome
|
|
1279
|
+
* One gate's outcome: `EVIDENCE_FIELDS` verbatim, plus exactly two additions.
|
|
1280
|
+
*
|
|
1281
|
+
* All seven `EVIDENCE_FIELDS` keys are spelled exactly as that module declares
|
|
1282
|
+
* them, so `readEvidence` reads a row with no adapter. The two additions are
|
|
1283
|
+
* the release verifier's requirements and this producer's too:
|
|
1284
|
+
*
|
|
1285
|
+
* - `level` — without a per-row level, a required gate can be "covered" by
|
|
1286
|
+
* evidence that was OPTIONAL when it ran, which is a silent downgrade. Here
|
|
1287
|
+
* it is also the only thing that tells a reader whether a failing gate was
|
|
1288
|
+
* allowed to fail.
|
|
1289
|
+
* - `label` — the registry label, which ties the row to the branch-protection
|
|
1290
|
+
* context `contextsFor` derives, so an audit can name the context and not
|
|
1291
|
+
* only the gate id.
|
|
1292
|
+
*
|
|
1293
|
+
* Nothing else. `task` and `command` deliberately do NOT get their own row
|
|
1294
|
+
* keys: they are inside `contract.gates_digest`, and a second copy on the row
|
|
1295
|
+
* is a second place to drift. The command still appears once, as
|
|
1296
|
+
* `prover.tool`, which is an `EVIDENCE_FIELDS` key.
|
|
1145
1297
|
*
|
|
1146
|
-
*
|
|
1147
|
-
*
|
|
1148
|
-
*
|
|
1149
|
-
*
|
|
1150
|
-
* the same property is this repository's recurring defect.
|
|
1298
|
+
* `prover.version` is null rather than `"unknown"` when unresolvable. A string
|
|
1299
|
+
* that looks like a version and is a placeholder is worse than an absent
|
|
1300
|
+
* field: the verifier treats a null-version row as uncoverable and reruns,
|
|
1301
|
+
* which is the safe answer, and a placeholder would defeat that.
|
|
1151
1302
|
*
|
|
1152
1303
|
* `work` is null and stays null until a prover-output parser exists. That is
|
|
1153
1304
|
* not a shortcut: `readEvidence` demotes a `pass` with no work count to
|
|
@@ -1183,13 +1334,19 @@ function gateEvidence(outcome, observedAt) {
|
|
|
1183
1334
|
* direction on purpose: a freshness bound computed against it can only ever
|
|
1184
1335
|
* judge the evidence OLDER than it truly is, so a bound errs toward `unknown`
|
|
1185
1336
|
* rather than toward crediting a stale observation.
|
|
1337
|
+
* `verdict` is this producer's one addition to the shared header, and it is
|
|
1338
|
+
* what makes the zero-gate case legible ON DISK rather than only as an exit
|
|
1339
|
+
* code. An envelope recording nothing and an envelope recording a clean run
|
|
1340
|
+
* must not be byte-similar: `"no-gates"` beside an empty `gates` array says
|
|
1341
|
+
* which one this is, where a bare empty array would read as either.
|
|
1186
1342
|
* @param {object} options Inputs.
|
|
1187
1343
|
* @param {string} options.moment The moment that was run.
|
|
1188
1344
|
* @param {object|null} [options.gates] The gates block that was executed.
|
|
1189
1345
|
* @param {string} options.verdict One of `EVIDENCE_VERDICT`.
|
|
1190
1346
|
* @param {GateRun|null} [options.result] What `runGates` produced, if it ran.
|
|
1347
|
+
* @param {string} [options.runner] The task-runner prefix.
|
|
1348
|
+
* @param {Record<string,string>|null} [options.scripts] Project scripts.
|
|
1191
1349
|
* @param {string} options.observedAt When the run began, ISO-8601.
|
|
1192
|
-
* @param {string} options.recordedAt When the document was built, ISO-8601.
|
|
1193
1350
|
* @returns {object} The evidence envelope.
|
|
1194
1351
|
*/
|
|
1195
1352
|
export function evidenceDocument({
|
|
@@ -1197,21 +1354,20 @@ export function evidenceDocument({
|
|
|
1197
1354
|
gates = null,
|
|
1198
1355
|
verdict,
|
|
1199
1356
|
result = null,
|
|
1357
|
+
runner = undefined,
|
|
1358
|
+
scripts = null,
|
|
1200
1359
|
observedAt,
|
|
1201
|
-
recordedAt,
|
|
1202
1360
|
}) {
|
|
1203
1361
|
const observations = (result?.results ?? []).map(outcome =>
|
|
1204
1362
|
gateEvidence(outcome, observedAt)
|
|
1205
1363
|
);
|
|
1206
1364
|
return {
|
|
1207
|
-
|
|
1208
|
-
kind: EVIDENCE_KIND,
|
|
1365
|
+
schema: EVIDENCE_SCHEMA,
|
|
1209
1366
|
verdict,
|
|
1210
|
-
|
|
1367
|
+
subject: evidenceSubject(),
|
|
1368
|
+
contract: evidenceContract({ gates, moment, runner, scripts }),
|
|
1369
|
+
producer: evidenceProducer(),
|
|
1211
1370
|
observed_at: observedAt,
|
|
1212
|
-
recorded_at: recordedAt,
|
|
1213
|
-
subject: evidenceSubject({ moment, gates }),
|
|
1214
|
-
run: evidenceRun(),
|
|
1215
1371
|
gates: observations,
|
|
1216
1372
|
};
|
|
1217
1373
|
}
|
|
@@ -1361,6 +1517,8 @@ function main() {
|
|
|
1361
1517
|
* @param {object} [parts] The block that ran and what it produced.
|
|
1362
1518
|
* @param {object|null} [parts.gates] The gates block.
|
|
1363
1519
|
* @param {GateRun|null} [parts.result] What `runGates` produced.
|
|
1520
|
+
* @param {string} [parts.runner] The task-runner prefix.
|
|
1521
|
+
* @param {Record<string,string>|null} [parts.scripts] Project scripts.
|
|
1364
1522
|
* @returns {number} The exit code, upgraded on a recording failure.
|
|
1365
1523
|
*/
|
|
1366
1524
|
const settle = (code, verdict, parts = {}) => {
|
|
@@ -1368,12 +1526,13 @@ function main() {
|
|
|
1368
1526
|
const written = writeEvidence(
|
|
1369
1527
|
evidencePath,
|
|
1370
1528
|
evidenceDocument({
|
|
1371
|
-
moment,
|
|
1372
1529
|
gates: parts.gates ?? null,
|
|
1373
|
-
|
|
1374
|
-
result: parts.result ?? null,
|
|
1530
|
+
moment,
|
|
1375
1531
|
observedAt,
|
|
1376
|
-
|
|
1532
|
+
result: parts.result ?? null,
|
|
1533
|
+
runner: parts.runner,
|
|
1534
|
+
scripts: parts.scripts ?? null,
|
|
1535
|
+
verdict,
|
|
1377
1536
|
})
|
|
1378
1537
|
);
|
|
1379
1538
|
return written ? code : EXIT.RUNNER_FAILED;
|
|
@@ -1432,6 +1591,8 @@ function main() {
|
|
|
1432
1591
|
reportRefusal(moment, blocking, line => console.error(line));
|
|
1433
1592
|
return settle(EXIT.BLOCKED, EVIDENCE_VERDICT.REFUSED, {
|
|
1434
1593
|
gates: config.gates,
|
|
1594
|
+
runner: config.runner,
|
|
1595
|
+
scripts,
|
|
1435
1596
|
});
|
|
1436
1597
|
}
|
|
1437
1598
|
const elsewhere = problemsIn(config.gates).filter(
|
|
@@ -1464,6 +1625,8 @@ function main() {
|
|
|
1464
1625
|
) {
|
|
1465
1626
|
return settle(EXIT.RUNNER_FAILED, EVIDENCE_VERDICT.RUNNER_FAILED, {
|
|
1466
1627
|
gates: config.gates,
|
|
1628
|
+
runner: config.runner,
|
|
1629
|
+
scripts,
|
|
1467
1630
|
});
|
|
1468
1631
|
}
|
|
1469
1632
|
if (missing.length) {
|
|
@@ -1488,6 +1651,8 @@ function main() {
|
|
|
1488
1651
|
);
|
|
1489
1652
|
return settle(EXIT.NO_GATES, EVIDENCE_VERDICT.FELL_BACK, {
|
|
1490
1653
|
gates: config.gates,
|
|
1654
|
+
runner: config.runner,
|
|
1655
|
+
scripts,
|
|
1491
1656
|
});
|
|
1492
1657
|
}
|
|
1493
1658
|
|
|
@@ -1513,7 +1678,7 @@ function main() {
|
|
|
1513
1678
|
return settle(
|
|
1514
1679
|
result.blocked ? EXIT.BLOCKED : EXIT.PROVED,
|
|
1515
1680
|
result.blocked ? EVIDENCE_VERDICT.BLOCKED : EVIDENCE_VERDICT.PROVED,
|
|
1516
|
-
{ gates: config.gates, result }
|
|
1681
|
+
{ gates: config.gates, result, runner: config.runner, scripts }
|
|
1517
1682
|
);
|
|
1518
1683
|
}
|
|
1519
1684
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lisa-owned-hash-ledger.d.ts","sourceRoot":"","sources":["../../src/core/lisa-owned-hash-ledger.ts"],"names":[],"mappings":"AACA,6EAA6E;AAE7E;;;;;;;GAOG;AACH,eAAO,MAAM,sBAAsB,EAAE,QAAQ,CAC3C,MAAM,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC,
|
|
1
|
+
{"version":3,"file":"lisa-owned-hash-ledger.d.ts","sourceRoot":"","sources":["../../src/core/lisa-owned-hash-ledger.ts"],"names":[],"mappings":"AACA,6EAA6E;AAE7E;;;;;;;GAOG;AACH,eAAO,MAAM,sBAAsB,EAAE,QAAQ,CAC3C,MAAM,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC,CAsnBjC,CAAC"}
|
|
@@ -539,6 +539,8 @@ export const LISA_OWNED_HASH_LEDGER = Object.freeze({
|
|
|
539
539
|
"2d166a07c9809800771c7f41e515bff8d66c23aeeae2838dd52d5f2547037422",
|
|
540
540
|
"59f78a0895c4d3c68a0b74ac879abfb3220f1866ee48b9540f70388d77292555",
|
|
541
541
|
"5c65c8db73c5465cef810789ef71abe405df4d5d5db64f78923e5050656f13c8",
|
|
542
|
+
"670f7059a0694b5f829252c056eec31f18e926a5137b652cb77f9e29a5a7ab73",
|
|
543
|
+
"6e419a489d0605cc0743af207ff4ff3428d8bcdfbabb7207d164593b9644dfa5",
|
|
542
544
|
"94453bdae8ab3dd2eba0883c4b278027396090e0bdc8e2f102414abc6415912a",
|
|
543
545
|
"a58af06f1d677d82b780a6857916c1684a44649ba742b2b329d408057ae5700d",
|
|
544
546
|
"ba610745a8878bb9a21af249d6ab5b384fcf88e7c530db846f4f8163faba7a8e",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lisa-owned-hash-ledger.js","sourceRoot":"","sources":["../../src/core/lisa-owned-hash-ledger.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"lisa-owned-hash-ledger.js","sourceRoot":"","sources":["../../src/core/lisa-owned-hash-ledger.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"upstream-evidence-manifest.d.ts","sourceRoot":"","sources":["../../src/core/upstream-evidence-manifest.ts"],"names":[],"mappings":"AACA,iFAAiF;AACjF,eAAO,MAAM,0BAA0B,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAg5EpE,CAAC;AAEL,4EAA4E;AAC5E,eAAO,MAAM,yBAAyB,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,
|
|
1
|
+
{"version":3,"file":"upstream-evidence-manifest.d.ts","sourceRoot":"","sources":["../../src/core/upstream-evidence-manifest.ts"],"names":[],"mappings":"AACA,iFAAiF;AACjF,eAAO,MAAM,0BAA0B,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAg5EpE,CAAC;AAEL,4EAA4E;AAC5E,eAAO,MAAM,yBAAyB,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,CA0mPjE,CAAC;AAEL,sFAAsF;AACtF,eAAO,MAAM,uBAAuB,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,CAk6I/D,CAAC"}
|
|
@@ -26,7 +26,7 @@ export const UPSTREAM_EVIDENCE_MANIFEST = Object.freeze({
|
|
|
26
26
|
"all/copy-overwrite/scripts/lisa-lint-staged-preflight.mjs": "ce4bc224a102e3ac2bc29d8f2038eefd619129d4639c25954c93f05011f7f977",
|
|
27
27
|
"all/copy-overwrite/scripts/lisa-postinstall.mjs": "d22fe47acf9a68828ca28b19b88e269bf535e77bc38952dec9f7a703269f1c44",
|
|
28
28
|
"all/copy-overwrite/scripts/lisa-reconcile-policy.mjs": "f27bd7fd72f5fa29dfc1b56b2b1744a8930054943f37da55a3b137f2141d7e57",
|
|
29
|
-
"all/copy-overwrite/scripts/lisa-run-gates.mjs": "
|
|
29
|
+
"all/copy-overwrite/scripts/lisa-run-gates.mjs": "6e419a489d0605cc0743af207ff4ff3428d8bcdfbabb7207d164593b9644dfa5",
|
|
30
30
|
"all/copy-overwrite/scripts/lisa-schema-validate.mjs": "8a1684f5c2b4d37fc782d2090273772814f7ad6c61e7ae5459163a1f28b7a5dc",
|
|
31
31
|
"all/copy-overwrite/scripts/lisa-test-node.mjs": "31b338144af00e20e3de02202982846d7333433a9bbda76a8c77d50e6fdbc47b",
|
|
32
32
|
"all/copy-overwrite/scripts/lisa-work-item.mjs": "04401ae05bf9464e6929180ffdfff80afc528a1df20733b032a0342252ca1d4a",
|
|
@@ -8283,6 +8283,7 @@ export const UPSTREAM_SURFACE_MANIFEST = Object.freeze({
|
|
|
8283
8283
|
"tests/unit/scripts/lisa-reconcile-policy.test.ts": true,
|
|
8284
8284
|
"tests/unit/scripts/lisa-ruleset-payload.test.ts": true,
|
|
8285
8285
|
"tests/unit/scripts/lisa-run-gates-conditional-floor.test.ts": true,
|
|
8286
|
+
"tests/unit/scripts/lisa-run-gates-envelope.test.ts": true,
|
|
8286
8287
|
"tests/unit/scripts/lisa-run-gates-evidence.test.ts": true,
|
|
8287
8288
|
"tests/unit/scripts/lisa-run-gates-fixtures.ts": true,
|
|
8288
8289
|
"tests/unit/scripts/lisa-run-gates-floor.test.ts": true,
|