flowproof 0.7.0 → 0.8.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.
Files changed (2) hide show
  1. package/bin/flowproof.js +19 -0
  2. package/package.json +5 -5
package/bin/flowproof.js CHANGED
@@ -6,6 +6,7 @@
6
6
 
7
7
  const { spawnSync } = require("node:child_process");
8
8
  const path = require("node:path");
9
+ const fs = require("node:fs");
9
10
 
10
11
  // Scoped names: the unscoped ones tripped npm's spam heuristic for new
11
12
  // packages and could not be published at all. Keep these in step with
@@ -20,6 +21,24 @@ const PLATFORM_PACKAGES = {
20
21
  };
21
22
 
22
23
  function binaryPath() {
24
+ // An explicit binary wins over the resolved platform package. This is
25
+ // what makes a tight adopter loop possible: a team hitting a gap can
26
+ // point at a build from a branch or a CI artifact and keep testing,
27
+ // instead of waiting for a release for every fix. It is a development
28
+ // handle, so it is deliberately loud - a silently swapped engine would
29
+ // make a green run mean nothing.
30
+ const override = process.env.FLOWPROOF_BIN;
31
+ if (override) {
32
+ if (!fs.existsSync(override)) {
33
+ console.error(
34
+ `flowproof: FLOWPROOF_BIN points at ${override}, which does not exist.`
35
+ );
36
+ process.exit(2);
37
+ }
38
+ console.error(`flowproof: using FLOWPROOF_BIN=${override}`);
39
+ return override;
40
+ }
41
+
23
42
  const key = `${process.platform}-${process.arch}`;
24
43
  const pkg = PLATFORM_PACKAGES[key];
25
44
  if (!pkg) {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "flowproof",
3
- "version": "0.7.0",
3
+ "version": "0.8.0",
4
4
  "description": "Deterministic tests for AI agents: record a run once, replay it with zero LLM calls. Assert which tools an agent called, with which arguments, in which order.",
5
5
  "bin": {
6
6
  "flowproof": "bin/flowproof.js"
@@ -14,10 +14,10 @@
14
14
  "node": ">=18"
15
15
  },
16
16
  "optionalDependencies": {
17
- "@automators/flowproof-cli-linux-x64": "0.7.0",
18
- "@automators/flowproof-cli-darwin-x64": "0.7.0",
19
- "@automators/flowproof-cli-darwin-arm64": "0.7.0",
20
- "@automators/flowproof-cli-win32-x64": "0.7.0"
17
+ "@automators/flowproof-cli-linux-x64": "0.8.0",
18
+ "@automators/flowproof-cli-darwin-x64": "0.8.0",
19
+ "@automators/flowproof-cli-darwin-arm64": "0.8.0",
20
+ "@automators/flowproof-cli-win32-x64": "0.8.0"
21
21
  },
22
22
  "repository": {
23
23
  "type": "git",