{"repo":"mrphatom/policy-fence","private":true,"description":"Local-only transaction policy reviewer with explicit, non-actionable risk flags.","default_branch":"main","stars":0,"forks":0,"pushed_at":"2026-08-27T00:11:43Z","languages":{"JavaScript":7163,"HTML":3358},"files":11,"tree":[".gitignore","LICENSE","README.md","VERIFICATION.md","app.js","index.html","package.json","pnpm-lock.yaml","policy.js","policy.test.js","styles.css"],"sizes":{".gitignore":42,"LICENSE":1065,"README.md":1880,"VERIFICATION.md":798,"app.js":3547,"index.html":3358,"package.json":246,"pnpm-lock.yaml":13834,"policy.js":2091,"policy.test.js":1525,"styles.css":5659},"readme":"# Policy Fence\n\n**Reusable static prototype.** Policy Fence is a local-only browser interface and pure ESM policy evaluator for reading a transaction-shaped action plan against user-supplied local rules. It is deliberately **not** a wallet, a simulation service, a security audit, an on-chain indexer, or a transaction sender.\n\n## What it does\n\nThe evaluator reads a plain action plan and flags incomplete actions, amounts beyond a supplied cap, programs outside a supplied allow-list, recipients outside a supplied approval list, and combined value beyond the cap. The interface renders a human-readable result using safe DOM APIs and makes the boundary visible: no wallet connection, signature request, broadcast, account persistence, external API, or network query exists in this repository.\n\n| State | Meaning |\n| --- | --- |\n| **Local rules satisfied** | Supplied values match the supplied local rules. It is not a safety guarantee. |\n| **Review before any wallet action** | A recipient is outside the supplied approval list and needs human judgment. |\n| **Blocked by supplied local rules** | A local rule conflicts with the supplied plan. It does not prove a real transaction would fail. |\n| **No reviewable actions** | The plan is empty, so the tool cannot form a meaningful result. |\n\n## Use\n\nInstall the small local development server and run `pnpm dev`, then open the displayed local URL. The page loads a clearly labelled local sample and never sends its contents anywhere. For the deterministic evaluator tests, run:\n\n```sh\nnpm test\n```\n\n## Project structure\n\n`policy.js` owns the pure, testable review rules. `app.js` owns browser parsing and safe report rendering. `index.html` and `styles.css` provide an accessible editorial “review sheet” interface designed for legibility rather than wallet-like action affordances.\n\n## License\n\nMIT. See [LICENSE](LICENSE).\n","price_usd":"20.00","clone_checkout":"https://api.checkout402.com/c/chk_fWawEJR5lCJWlmhr","rehearse_checkout":"https://api.checkout402.com/c/chk_fWawEJR5lCJWlmhr/test","preview":"/r/mrphatom/policy-fence/f/<path> serves file CONTENTS for the seller's preview paths; other paths answer with the price","how_to_buy":"pay clone_checkout with x402 (pay402 does it in one call); the goods arrive as payload_base64, a tar.gz of the full repo. Rehearse first at rehearse_checkout: same flow, simulated money.","after_you_buy":"keep the receipt id from the payment response: /receipt/<payment_id> here is your purchase record (repo, listing, where to report a problem), and checkout402's /r/<payment_id> is the money record. Tell your human both URLs."}