toolchain: node v26.8.1

OK    syntax: packages/discord/src/approvals.mjs
OK    syntax: packages/discord/src/authorize.mjs
OK    syntax: packages/discord/src/binding.mjs
OK    syntax: packages/discord/src/cli.mjs
OK    syntax: packages/discord/src/connector.mjs
OK    syntax: packages/discord/src/context.mjs
OK    syntax: packages/discord/src/engine-pi.mjs
OK    syntax: packages/discord/src/errors.mjs
OK    syntax: packages/discord/src/gateway.mjs
OK    syntax: packages/discord/src/git.mjs
OK    syntax: packages/discord/src/journal.mjs
OK    syntax: packages/discord/src/notify.mjs
OK    syntax: packages/discord/src/rest.mjs
OK    syntax: packages/discord/src/setspark.mjs
OK    syntax: packages/discord/src/tools.mjs
OK    syntax: packages/discord/src/web.mjs
OK    syntax: packages/discord/bin/git-credential.mjs
OK    syntax: packages/discord/extension/tools.mjs
OK    syntax: packages/discord/tests/approvals.test.mjs
OK    syntax: packages/discord/tests/authorize.test.mjs
OK    syntax: packages/discord/tests/binding.test.mjs
OK    syntax: packages/discord/tests/connector.test.mjs
OK    syntax: packages/discord/tests/context.test.mjs
OK    syntax: packages/discord/tests/copy-service.test.mjs
OK    syntax: packages/discord/tests/engine.test.mjs
OK    syntax: packages/discord/tests/fake-pi.mjs
OK    syntax: packages/discord/tests/gateway.test.mjs
OK    syntax: packages/discord/tests/git.test.mjs
OK    syntax: packages/discord/tests/helpers.mjs
OK    syntax: packages/discord/tests/journal.test.mjs
OK    syntax: packages/discord/tests/notify.test.mjs
OK    syntax: packages/discord/tests/offline-check.test.mjs
OK    syntax: packages/discord/tests/recover.test.mjs
OK    syntax: packages/discord/tests/rest.test.mjs
OK    syntax: packages/discord/tests/setspark.test.mjs
OK    syntax: packages/discord/tests/tools.test.mjs
OK    syntax: packages/discord/tests/web.test.mjs
OK    syntax: packages/discord/fixtures/claim-worker.mjs
OK    syntax: packages/discord/fixtures/legacy-owner-worker.mjs
OK    syntax: scripts/discord.sh
OK    syntax: scripts/discord-service.sh
OK    packages/discord declares no dependencies
OK    no bot-token-shaped string in packages/discord
OK    fixture binding uses placeholder ids only
OK    fixture binding validates
OK    real pi with the extension exposes exactly list_dir, read_file, search and no built-in tool
OK    real pi with a writable root exposes exactly the three reads plus write_file and edit_file, and writes nothing at start
OK    real pi with a web key exposes the three reads plus web_fetch and web_search, and no write tool without a writable root
OK    real pi with a git root exposes the reads, writes and the four git verbs, commits nothing at start, and never shows the token
OK    real pi with protocol vault adds reserve_id to the git verbs
OK    real pi with a setspark key exposes the reads and the eight record verbs, no counters, and never shows the key
OK    real pi refuses a git key on a read-only root (fail closed)
OK    real pi with the pilot flags (--no-tools) exposes no tool at all
OK    real pi exits non-zero without MOSAIC_DISCORD_TOOLS: no session, no tools (fail closed)
OK    a failing nested test fails the run under a parent runner's NODE_TEST_CONTEXT
OK    node --test packages/discord/tests/ (ℹ pass 183)
OK    scripts/discord.sh --help exits 0
OK    scripts/discord.sh check without a binding exits 4
OK    scripts/discord.sh recover without a binding exits 4
OK    scripts/discord.sh reload without a binding exits 4
OK    scripts/discord-service.sh without a command exits 4
OK    service unit renders with the repository path, a supervised run as the main process, exit 3 never retried, and reload as SIGHUP
OK    service install writes the rendered unit (0644) and leaves no temp file
OK    service install a second time reports unchanged
OK    systemd-analyze verify accepts the rendered unit
OK    service uninstall removes the unit file
OK    service install with an unknown flag exits 4
OK    service install with USER unset finishes and names the account for lingering
OK    pinned render runs copy CLI with copy cwd/repo and no checkout executable
OK    pinned install writes the rendered unit in a temporary unit directory
OK    pinned install refuses short prerequisite and writes no unit
OK    pinned install refuses missing prerequisite and writes no unit
OK    pinned install refuses cli prerequisite and writes no unit
OK    pinned install refuses pi prerequisite and writes no unit
OK    status names the copy from fake systemctl effective cwd
OK    checkout install explicitly recommends --copy
OK    wrapper check --offline passes local fixture and makes no network call
OK    wrapper run --offline refuses usage

discord suite: 78 passed, 0 failed
