@zof-ai/api-contract-check 0.1.0 → 0.1.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/CHANGELOG.md CHANGED
@@ -1,5 +1,9 @@
1
1
  # Changelog
2
2
 
3
+ ## 0.1.1
4
+
5
+ Document public installation, executable entry points and reproducible packaged examples. Align release dependency pins; runtime behavior is unchanged.
6
+
3
7
  ## 0.1.0 (unreleased)
4
8
 
5
- Initial independently authored local implementation. Candidate package/repository names and Apache-2.0 licensing require owner and legal approval before publication.
9
+ Initial independently authored public implementation, distributed under Apache-2.0.
package/README.md CHANGED
@@ -2,13 +2,42 @@
2
2
 
3
3
  Compare local OpenAPI 3.0/3.1 JSON contracts or a supported JSON Schema subset. Findings explain endpoint/method removal, required inputs, incompatible request/response types, constraints, media types and authentication changes. The implementation is independently authored and works offline without a Zof account.
4
4
 
5
+ <!-- ZOF_NPM_INSTALL_START -->
6
+ ## Install from npm
7
+
8
+ Use Node.js 22 or 24 and npm. File-based operations require Linux or macOS with Python 3.10 or newer; Windows file operations fail closed. In a new project directory, install the version used by this guide:
9
+
10
+ ```sh
11
+ npm install --ignore-scripts --save-exact @zof-ai/api-contract-check@0.1.1
12
+ npx --no-install zof-api-contract-check --help
13
+ ```
14
+
15
+ The package includes compiled JavaScript, TypeScript declarations and its runtime dependencies. No source build, Zof account or repository upload is required. `--ignore-scripts` disables installation lifecycle scripts; `--no-install` keeps the example commands from downloading another package.
16
+
17
+ Confirm the public ESM entry point; this prints `function`:
18
+
19
+ ```sh
20
+ node --input-type=module -e "import('@zof-ai/api-contract-check').then(api => console.log(typeof api.compareContracts))"
21
+ ```
22
+
23
+ Run a packaged example from the same directory:
24
+
25
+ ```sh
26
+ npx --no-install zof-api-contract-check baseline.json compatible.json --root node_modules/@zof-ai/api-contract-check/examples --kind openapi --json
27
+ ```
28
+
29
+ The compatible OpenAPI example reports `compatible: true`; the breaking example described below exits 1.
30
+
31
+ Package: [@zof-ai/api-contract-check](https://www.npmjs.com/package/@zof-ai/api-contract-check). The source-checkout instructions and three additional workflows follow.
32
+ <!-- ZOF_NPM_INSTALL_END -->
33
+
5
34
  <!-- ZOF_RELEASE_INSTALL_START -->
6
35
  ## Install from GitHub source
7
36
 
8
37
  Requires Node.js 22 or 24, npm, and Git. Filesystem operations require Linux or macOS with Python 3.10 or newer; Windows file operations fail closed. Clone this repository and explicitly prepare its reviewed release dependencies:
9
38
 
10
39
  ```sh
11
- git clone https://github.com/Zof-AI/zof-api-contract-check.git
40
+ git clone --branch v0.1.1 --depth 1 https://github.com/Zof-AI/zof-api-contract-check.git
12
41
  cd zof-api-contract-check
13
42
  node scripts/bootstrap.mjs --allow-network
14
43
  npm ci --ignore-scripts --prefer-offline
@@ -16,9 +45,8 @@ npm run build
16
45
  npm test
17
46
  ```
18
47
 
19
- The bootstrap downloads only the exact `v0.1.0` dependency assets from [GitHub Releases](https://github.com/Zof-AI/zof-api-contract-check/releases), as listed in `scripts/release-dependencies.json`, verifies SHA256 and byte size, and adds them to the npm cache. It does not extract archives, run package scripts, collect application data, or send credentials. Downloads require the explicit flag and follow only HTTPS GitHub asset redirects. Installation then fetches ordinary third-party dependencies from npm. Use a writable npm cache; set `npm_config_cache` consistently for both commands if needed. An unavailable asset, changed hash, or oversized response stops installation.
48
+ The bootstrap downloads only the exact versioned dependency assets from [GitHub Releases](https://github.com/Zof-AI/zof-api-contract-check/releases), as listed in `scripts/release-dependencies.json`, verifies SHA256 and byte size, and adds them to the npm cache. It does not extract archives, run package scripts, collect application data, or send credentials. Downloads require the explicit flag and follow only HTTPS GitHub asset redirects. Installation then fetches ordinary third-party dependencies from npm. Use a writable npm cache; set `npm_config_cache` consistently for both commands if needed. An unavailable asset, changed hash, or oversized response stops installation.
20
49
 
21
- GitHub source and release artifacts are the initial distribution channel. These instructions do not claim that `@zof-ai` packages are published on npm or that the VS Code extension is listed in Marketplace.
22
50
  <!-- ZOF_RELEASE_INSTALL_END -->
23
51
 
24
52
  ## Local installation
package/dist/cli.js CHANGED
@@ -7,7 +7,7 @@ try {
7
7
  console.log("zof-api-contract-check BASELINE.json CANDIDATE.json [--root DIR] [--kind openapi|json-schema] [--policy POLICY.json] [--json|--markdown]\nOffline JSON contracts. Exit 0: completed below threshold; 1: findings; 2: invalid/unsupported input.");
8
8
  }
9
9
  else if (args.includes("--version"))
10
- console.log("0.1.0");
10
+ console.log("0.1.1");
11
11
  else {
12
12
  let root = process.cwd(), format = "markdown", policy, kind;
13
13
  const files = [];
package/docs/RELEASE.md CHANGED
@@ -1,12 +1,12 @@
1
1
  # Release process
2
2
 
3
- Version 0.1.0 is prepared under [Apache-2.0](../LICENSE). [GitHub Releases](https://github.com/Zof-AI/zof-api-contract-check/releases) is the initial distribution channel. Refer to the release's actual assets and commit SHA; these instructions are not evidence that an upload or installation succeeded.
3
+ Version 0.1.1 is distributed under [Apache-2.0](../LICENSE). [GitHub Releases](https://github.com/Zof-AI/zof-api-contract-check/releases) provides versioned source and reviewed build artifacts. Install `@zof-ai/api-contract-check@0.1.1` using the [npm quickstart](../README.md#install-from-npm). Refer to the release assets, commit SHA and recorded validation for the exact version.
4
4
 
5
5
  Start with the [source installation](../README.md#install-from-github-source). Run `node scripts/bootstrap.mjs --allow-network`, `npm ci --ignore-scripts --prefer-offline`, `npm run build`, `npm test`, and `npm pack --ignore-scripts`. The bootstrap checks the exact dependency release SHA256 and byte sizes. Do not replace failed checks with an unverified dependency or a `file:` reference in published metadata.
6
6
 
7
7
  Before releasing a new version, inspect source and Git history, dependency licenses, build outputs and every package entry. Resolve security findings; run independent negative and installation tests. Record artifact SHA256 and release commits. Maintain branch protection, private vulnerability reporting, least-privilege workflows and a protected release environment. The manual release-candidate workflow builds artifacts and does not publish automatically. Material release changes require a new review.
8
8
 
9
- Publish the reviewed package tarball as a GitHub Release asset. npm registry publication requires independently verified `@zof-ai` scope ownership and an authenticated publisher. Registry publication and registry install acceptance are not claimed by a GitHub release.
9
+ Publish the reviewed package tarball as a GitHub Release asset. npm registry publication requires independently verified `@zof-ai` scope ownership and an authenticated publisher. Verify the registry version and integrity, then run the README commands in a fresh project before recording registry acceptance.
10
10
 
11
11
  After publication, retrieve assets anonymously, verify their checksums, install in a clean project, and execute documented examples. Check every intended distribution channel separately. Missing or unrun acceptance is not a pass. Hosted Zof integration remains unavailable until an approved public contract and real service acceptance exist.
12
12
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@zof-ai/api-contract-check",
3
- "version": "0.1.0",
3
+ "version": "0.1.1",
4
4
  "description": "Bounded offline OpenAPI and JSON Schema compatibility analysis",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -57,6 +57,6 @@
57
57
  "@types/node": "22.19.11"
58
58
  },
59
59
  "dependencies": {
60
- "@zof-ai/evidence-spec": "0.1.0"
60
+ "@zof-ai/evidence-spec": "0.1.1"
61
61
  }
62
62
  }