From 4bc8ce68a3a84c4daa7580ad78663af2604704ec Mon Sep 17 00:00:00 2001 From: jamestexas <18285880+jamestexas@users.noreply.github.com> Date: Wed, 1 Jul 2026 17:37:59 -0600 Subject: [PATCH 1/3] =?UTF-8?q?[mache-89e322]=20docs:=20add=20frontmatter?= =?UTF-8?q?=20to=20smell-debt-baseline=20=E2=80=94=20fix=20docs:lint=20on?= =?UTF-8?q?=20main?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit docs:lint requires covers-version + last-verified frontmatter on every top-level docs/*.md; this dated snapshot shipped without it and reddened the gate on main. Add minimal valid frontmatter (covers-version v0.8.0 to match ARCHITECTURE.md / latest CHANGELOG, last-verified = measurement date). --- docs/smell-debt-baseline-2026-06-24.md | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/docs/smell-debt-baseline-2026-06-24.md b/docs/smell-debt-baseline-2026-06-24.md index 24dd4f4..c2c2928 100644 --- a/docs/smell-debt-baseline-2026-06-24.md +++ b/docs/smell-debt-baseline-2026-06-24.md @@ -1,3 +1,9 @@ +--- +status: current +covers-version: v0.8.0 +last-verified: 2026-06-24 +--- + # Smell-debt baseline — 2026-06-24 First measured snapshot of structural smell debt across the ART repos, the From cf63477e4bbb7e45bd5eee05a7ae787e55cb18a7 Mon Sep 17 00:00:00 2001 From: jamestexas <18285880+jamestexas@users.noreply.github.com> Date: Wed, 1 Jul 2026 17:38:00 -0600 Subject: [PATCH 2/3] [mache-823d91] docs: point HTTP-daemon gotcha at `mache init --global` supervisor The keepalive supervisor shipped in v0.10.0 (#464): `mache init --global` installs a launchd LaunchAgent (macOS) or systemd --user unit (Linux) that starts + keepalives the shared HTTP daemon. GETTING-STARTED still told users it was unbuilt and "tracked in mache-823d91". Update the connection-refused gotcha to point at the shipped one-command fix. --- GETTING-STARTED.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/GETTING-STARTED.md b/GETTING-STARTED.md index f6391a4..63ba431 100644 --- a/GETTING-STARTED.md +++ b/GETTING-STARTED.md @@ -53,7 +53,7 @@ mache serve . # ← long-running daemon on localhost:7532 — KE claude mcp add --transport http mache http://localhost:7532/mcp ``` -> ⚠️ `mache serve` (HTTP) is a **foreground daemon** — it blocks the terminal and must stay alive for the client to connect. Run it in a second terminal, background it (`mache serve . &`), or install it as a login service. If the client reports `localhost:7532/mcp` **connection refused**, the daemon isn't running — that's the #1 first-run gotcha. (A launchd LaunchAgent that keeps it alive across logins is tracked in mache-823d91.) +> ⚠️ `mache serve` (HTTP) is a **foreground daemon** — it blocks the terminal and must stay alive for the client to connect. If the client reports `localhost:7532/mcp` **connection refused**, the daemon isn't running — that's the #1 first-run gotcha. The fix is a one-time `mache init --global`, which installs a per-user supervisor (**launchd** LaunchAgent on macOS, **systemd `--user`** unit on Linux) that starts the daemon at login and keepalives it across restarts — no terminal to babysit. For an ad-hoc run instead, background it (`mache serve . &`) in a second terminal. **stdio (subprocess per session — no standing daemon to babysit):** From 172bd6292c1c20133433a2898678f9be7030ab48 Mon Sep 17 00:00:00 2001 From: jamestexas <18285880+jamestexas@users.noreply.github.com> Date: Wed, 1 Jul 2026 18:04:09 -0600 Subject: [PATCH 3/3] [mache-823d91] docs: "keeps it alive" not "keepalives" (Copilot review nit) Copilot flagged "keepalives" as jargon/incorrect verb form in user-facing docs. Use the standard phrasing. --- GETTING-STARTED.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/GETTING-STARTED.md b/GETTING-STARTED.md index 63ba431..e514ef8 100644 --- a/GETTING-STARTED.md +++ b/GETTING-STARTED.md @@ -53,7 +53,7 @@ mache serve . # ← long-running daemon on localhost:7532 — KE claude mcp add --transport http mache http://localhost:7532/mcp ``` -> ⚠️ `mache serve` (HTTP) is a **foreground daemon** — it blocks the terminal and must stay alive for the client to connect. If the client reports `localhost:7532/mcp` **connection refused**, the daemon isn't running — that's the #1 first-run gotcha. The fix is a one-time `mache init --global`, which installs a per-user supervisor (**launchd** LaunchAgent on macOS, **systemd `--user`** unit on Linux) that starts the daemon at login and keepalives it across restarts — no terminal to babysit. For an ad-hoc run instead, background it (`mache serve . &`) in a second terminal. +> ⚠️ `mache serve` (HTTP) is a **foreground daemon** — it blocks the terminal and must stay alive for the client to connect. If the client reports `localhost:7532/mcp` **connection refused**, the daemon isn't running — that's the #1 first-run gotcha. The fix is a one-time `mache init --global`, which installs a per-user supervisor (**launchd** LaunchAgent on macOS, **systemd `--user`** unit on Linux) that starts the daemon at login and keeps it alive across restarts — no terminal to babysit. For an ad-hoc run instead, background it (`mache serve . &`) in a second terminal. **stdio (subprocess per session — no standing daemon to babysit):**