Pick any line to see why it is the way it is: the commit, the pull request and issue it came from, and what the agent was thinking.
| Deploy ends with a smoke test: sign-in, sign-up and the waitlist still work on g1t.sh | 1 | import assert from "node:assert/strict"; |
| 2 | import { test } from "node:test"; | |
| 3 | ||
| 4 | import { CHECKS, pageText, verdict } from "./smoke.mjs"; | |
| 5 | ||
| 6 | test("a page's text leaves out scripts, styles and tags", () => { | |
| Merge main into rm-agents: mirroring removal, open signups, free-tier limits, the g1t CLI and runner fixes, with the agent removal kept. The CLI's table of operations is regenerated from the API without the agent, customize and AI credit operations; no CLI command used them. | 7 | const html = `<html><style>.a{}</style><script>var x="Create account"</script><h1>Create your <b>account</b></h1></html>`; |
| 8 | assert.equal(pageText(html), "Create your account"); | |
| Deploy ends with a smoke test: sign-in, sign-up and the waitlist still work on g1t.sh | 9 | assert.equal(pageText("<p>Don't</p>"), "Don't"); |
| 10 | }); | |
| 11 | ||
| 12 | test("a check passes on its status with every phrase on the page", () => { | |
| Merge main into rm-agents: mirroring removal, open signups, free-tier limits, the g1t CLI and runner fixes, with the agent removal kept. The CLI's table of operations is regenerated from the API without the agent, customize and AI credit operations; no CLI command used them. | 13 | const check = { path: "/register", expect: ["Create your account", "Create account"] }; |
| 14 | assert.equal(verdict(check, 200, "<h1>Create your account</h1><button>Create account</button>"), null); | |
| Deploy ends with a smoke test: sign-in, sign-up and the waitlist still work on g1t.sh | 15 | assert.equal(verdict(check, 500, ""), "answered 500, expected 200"); |
| Merge main into rm-agents: mirroring removal, open signups, free-tier limits, the g1t CLI and runner fixes, with the agent removal kept. The CLI's table of operations is regenerated from the API without the agent, customize and AI credit operations; no CLI command used them. | 16 | assert.equal(verdict(check, 200, "<h1>Create your account</h1>"), 'missing "Create account"'); |
| Deploy ends with a smoke test: sign-in, sign-up and the waitlist still work on g1t.sh | 17 | }); |
| 18 | ||
| 19 | test("a phrase only inside a script does not count", () => { | |
| Merge main into rm-agents: mirroring removal, open signups, free-tier limits, the g1t CLI and runner fixes, with the agent removal kept. The CLI's table of operations is regenerated from the API without the agent, customize and AI credit operations; no CLI command used them. | 20 | const check = { path: "/", expect: ["Create account"] }; |
| 21 | assert.equal(verdict(check, 200, `<script>"Create account"</script>`), 'missing "Create account"'); | |
| Deploy ends with a smoke test: sign-in, sign-up and the waitlist still work on g1t.sh | 22 | }); |
| 23 | ||
| Merge main into rm-agents: mirroring removal, open signups, free-tier limits, the g1t CLI and runner fixes, with the agent removal kept. The CLI's table of operations is regenerated from the API without the agent, customize and AI credit operations; no CLI command used them. | 24 | test("the sign-up check sends an address identity refuses before writing or counting", () => { |
| 25 | const signUp = CHECKS.find((check) => check.form); | |
| 26 | assert.ok(signUp); | |
| 27 | assert.equal(signUp.path, "/register"); | |
| 28 | assert.ok(!signUp.form.email.includes("@"), "never a real-looking address, so nothing is kept"); | |
| 29 | assert.equal(signUp.status, 422); | |
| 30 | assert.equal(verdict(signUp, 422, "<p>Enter a valid email address.</p>"), null); | |
| Deploy ends with a smoke test: sign-in, sign-up and the waitlist still work on g1t.sh | 31 | }); |
This file's history is long; its oldest lines are credited to the oldest commit read.