{"owner":"genesiscode2026","slug":"api-changelog-risk-scanner","channel":"genesiscode2026/api-changelog-risk-scanner","version":"1.0.0","artifact_sha256":"357c6a7701c03759663e2d882c18f1f1b6204ff16d4b0561b4bed5a10b691956","published_at":"2026-09-17T21:52:22.046Z","price_micro":"29000000","update_price_micro":"5000000","resource_endpoint":"https://x402git.com/api/r/genesiscode2026/api-changelog-risk-scanner","version_url":"https://x402git.com/api/v/genesiscode2026/api-changelog-risk-scanner","computed":{"artifact_class":"Pack","component_inventory":[{"kind":"scripts","count":1},{"kind":"source","count":1},{"kind":"tests","count":1},{"kind":"examples","count":2},{"kind":"docs","count":4},{"kind":"config","count":1},{"kind":"assets","count":1}],"file_count":11,"dir_depth":1,"bytes_text":12904,"bytes_binary":6,"languages":{"JavaScript":7286},"tree":[{"path":"LICENSE","size":2099,"binary":false},{"path":"QUICKSTART.md","size":434,"binary":false},{"path":"README.md","size":1891,"binary":false},{"path":"SECURITY.md","size":326,"binary":false},{"path":"VERSION","size":6,"binary":true},{"path":"bin/api-changelog-risk.js","size":5194,"binary":false},{"path":"examples/v1.json","size":128,"binary":false},{"path":"examples/v2.json","size":115,"binary":false},{"path":"package.json","size":625,"binary":false},{"path":"src/detector.js","size":1707,"binary":false},{"path":"tests/test_detector.js","size":385,"binary":false}],"readme_html":"<h2>api-changelog-risk-scanner</h2>\n<blockquote><p><strong>Converts raw API contract diffs into evidence-based compatibility risk tiers and client-facing Markdown migration changelogs.</strong></p></blockquote>\n<p><img src=\"https://img.shields.io/badge/version-1.0.0-blue.svg\" alt=\"Version\" loading=\"lazy\" decoding=\"async\" /> <img src=\"https://img.shields.io/badge/License-Commercial-blue.svg\" alt=\"License: MIT\" loading=\"lazy\" decoding=\"async\" /> <img src=\"https://img.shields.io/badge/dependencies-0-brightgreen.svg\" alt=\"Zero Dependencies\" loading=\"lazy\" decoding=\"async\" /></p>\n<hr />\n<h3>What Can Break?</h3>\n<p>API releases without clear migration notes, forcing client developers to reverse-engineer breaking modifications after production breaks.</p>\n<h3>What Does This Tool Check?</h3>\n<p>Computes Release Risk Score (0–100), classifies risk tier (<code>LOW</code>, <code>MEDIUM</code>, <code>HIGH</code>, <code>CRITICAL</code>), and generates Markdown changelog tables.</p>\n<h3>What Does It NOT Check?</h3>\n<p>Does not write marketing blog posts or track sales conversions.</p>\n<h3>How Fast Can I Run It?</h3>\n<p>Under 5 seconds. Zero external dependencies. Pure Node.js standard library.</p>\n<pre><code class=\"language-bash\"># Clone and run\ngit clone git@github.com:genesiscode2026/api-changelog-risk-scanner.git\ncd api-changelog-risk-scanner\n\n# Execute 60-second demo\n./bin/api-changelog-risk.js --help\n./bin/api-changelog-risk.js --old examples/v1.json --new examples/v2.json\n</code></pre>\n<hr />\n<h3>What Do I Get?</h3>\n<ul><li><strong>Deterministic CLI Exit Codes</strong>: Returns code <code>0</code> on backward-compatible contracts; returns code <code>1</code> on breaking drift.</li><li><strong>Machine-Readable JSON</strong>: Pass <code>--json</code> to integrate directly into GitHub Actions, GitLab CI, or pre-commit hooks.</li><li><strong>Human-Readable Diffs</strong>: Clear, actionable error reports with exact field pointers.</li></ul>\n<hr />\n<h3>Commercial Distribution</h3>\n<ul><li><strong>Catalog ID</strong>: <code>P55</code></li><li><strong>Price Band</strong>: advanced CI utility ($29)</li><li><strong>List Price</strong>: $29 USD</li><li><strong>License</strong>: GENESIS Commercial Source License v1.0</li><li><strong>Seller</strong>: <code>genesiscode2026</code></li><li><strong>Official Storefront</strong>: <a href=\"https://www.getly.store/store/genesis-code-mu5x0au2\" rel=\"nofollow noopener ugc\" target=\"_blank\">Genesis Code on Getly</a></li></ul>","dependencies":[],"licence":{"verdict":"manual"},"scan":{"verdict":"pass","scanner_version":"2026.09.1","at":"2026-09-17T21:52:24.880Z","checks":[{"id":"secrets","tool":"x402git/secrets","tool_version":"2026.09.1","status":"pass","at":"2026-09-17T21:52:24.880Z","findings":0},{"id":"limits","tool":"x402git/limits","tool_version":"2026.09.1","status":"pass","at":"2026-09-17T21:52:24.880Z","findings":0},{"id":"known_vulns","tool":"osv.dev","tool_version":"2026-09-17","status":"pass","at":"2026-09-17T21:52:24.880Z","findings":0,"packages":0},{"id":"known_malware","tool":"osv.dev/MAL","tool_version":"2026-09-17","status":"pass","at":"2026-09-17T21:52:24.880Z","findings":0,"packages":0},{"id":"dep_behaviour","tool":"socket.dev","tool_version":"2026-09-17","status":"findings","at":"2026-09-17T21:52:24.880Z","findings":1,"packages":1},{"id":"capabilities","tool":"x402git/caps","tool_version":"2026.09.1","status":"findings","at":"2026-09-17T21:52:24.880Z","findings":1},{"id":"injection","tool":"x402git/inject","tool_version":"2026.09.1","status":"pass","at":"2026-09-17T21:52:24.880Z","findings":0}],"findings":[{"kind":"capability","check":"capabilities","tier":"disclosed","rule_id":"script","severity":"LOW","description":"Ships the script bin/api-changelog-risk.js","path":"bin/api-changelog-risk.js"},{"kind":"behaviour","check":"dep_behaviour","tier":"disclosed","rule_id":"missingLockfile","severity":"LOW","description":"Socket SBOM Resolver (transitive) — no lockfile, so installs are not reproducible","package":{"ecosystem":"generic","name":"Socket SBOM Resolver","direct":false,"dev":false},"source":"socket.dev"}],"capabilities":{"tools":[],"runs":[{"path":"bin/api-changelog-risk.js","kind":"script"}],"hosts":[{"host":"img.shields.io","local":false,"from":"docs","paths":["README.md"]},{"host":"www.getly.store","local":false,"from":"docs","paths":["README.md"]}],"env":[],"install_runs":false,"summary":"runs a script · links to 2 hosts in its docs · nothing runs at install"},"counts":{"blocking":0,"disclosed":2,"review":0}},"cadence_sentence":"One release so far.","originality":{"blob_overlap_ratio":0.2,"blobs_seen_elsewhere":2,"blobs_total":10,"nearest_listing":"genesiscode2026/openapi-breaking-change-detector","derivative_of":null},"engineering":{"unique_5gram_ratio":0.582,"type_token_ratio":0.609,"effective_code_lines":102,"effective_doc_words":310,"code_files":3,"test_files":1,"padding_suspected":true,"class_note":"Capped at Pack: unique 5-gram ratio 0.582 is below the 0.6 guard."},"cadence":{"releases":1,"median_days_between_releases":null,"on_time_fraction":null,"days_since_last":0,"score":null,"finished":false},"inventory_sentence":"1 script · 1 source file · 1 test file · 2 examples","extensions":{"js":3,"md":3,"json":3,"(none)":2},"lines_of_code":176,"warnings":["sbom_unavailable"],"repo_meta":{"repo_id":1375084257,"name":"api-changelog-risk-scanner","full_name":"genesiscode2026/api-changelog-risk-scanner","description":"Converts raw API contract diffs into evidence-based compatibility risk tiers and client migration changelogs.","homepage":null,"topics":[],"language":"JavaScript","default_branch":"main","size_kb":0,"created_at":"2026-09-17T21:08:53Z","pushed_at":"2026-09-17T21:12:39Z","licence_spdx":null,"open_issues":null,"stars":null,"forks":null,"watchers":null,"archived":false,"private":true,"html_url":null},"owner":{"login":"genesiscode2026","name":null,"avatar_url":"https://avatars.githubusercontent.com/u/329895054?v=4","bio":null,"blog":null,"company":null,"location":null,"twitter_username":null,"followers":null,"public_repos":6,"created_at":"2026-09-16T08:01:39Z","html_url":"https://github.com/genesiscode2026"},"computed_at":"2026-09-17T21:52:32.526Z","analyzer_version":"0.1.0"},"self_reported":{"description":"Converts raw API contract diffs into evidence-based compatibility risk tiers and client-facing migration changelogs.","trigger_hint":"When requiring verified DevOps & Infra functionality in autonomous workflows"}}