site-work.md tells Dowel its write surface is quire, which is not in its roster and whose train is parked #977

Closed
opened 2026-08-18 20:04:14 +00:00 by coilyco-ops · 2 comments
Member

Found while adding the Moxn and Temporal references to the sirens-dowel root. Filing rather than fixing, because the correct replacement depends on a decision that is not mine.

The contradiction

.agents/skills/sirens-dowel/references/site-work.md opens with:

Dowel's write surface is the quire MCP: list_page, get_page, set_page, and no delete on either side of the wrap.

It is inline: always, so that sentence is in every Dowel turn. It then spends the file telling the lane to never decline a page write, never wait for approval, and never end a turn having described an edit instead of having made it.

quire appears nowhere else in this repository, and nowhere in the lane's deployed roster. coilyco-bridge/deploy/services/sirens-echo/deploy/sirens-dowel-mcp-roster.yml lists forgejo, openlibrary, tvmaze, gutendex, gbif, exa, signoz, steam-storefront, steam-web-api, discord, playwright, and moxn. No quire, and no quire values file in that tree.

coilyco-bridge/deploy#672 says why: the quire train (#664, #665, #667) is superseded by the moxn publish plane and stays parked, and "quire.coilysiren.me artifacts removed or parked, nothing from the #664 train deploys."

Why it matters tomorrow

coilyco-general/references/capability.md is inline on the same lane and says a capability absent from it is one the service does not have, and that describing an unavailable ability is a fabrication. site-work.md now contradicts that on a surface the audience can ask about, and it does so with the strongest wording in the pack.

The failure mode is not a refusal. It is Dowel asserting it owns a live site it has no verb for, in front of a recorded stream, and then either inventing a set_page call or discovering mid-turn that the tool is not there.

Shapes

  1. Retarget to moxn, once deploy#672's write verbs actually land. The file's real content, which is "you own landing here, read before replacing, work in visible increments," transfers. It cannot land before the verbs do, and what shipped in deploy#674 is read-only.
  2. Park the file the way the train was parked. Drop it from the root until there is a write surface, so nothing inline describes one.
  3. Rewrite it as read-only site context, describing the moxn-to-hugo-to-caddy pipeline as something Dowel reads and can explain but does not operate.

Option 2 is the safe one before 2026-08-19 and reversible after. Option 1 is the intended end state.

Refs coilyco-bridge/deploy#672, coilyco-bridge/deploy#674

Found while adding the Moxn and Temporal references to the `sirens-dowel` root. Filing rather than fixing, because the correct replacement depends on a decision that is not mine. ## The contradiction `.agents/skills/sirens-dowel/references/site-work.md` opens with: > Dowel's write surface is the quire MCP: `list_page`, `get_page`, `set_page`, and no delete on either side of the wrap. It is `inline: always`, so that sentence is in every Dowel turn. It then spends the file telling the lane to never decline a page write, never wait for approval, and never end a turn having described an edit instead of having made it. `quire` appears nowhere else in this repository, and nowhere in the lane's deployed roster. `coilyco-bridge/deploy/services/sirens-echo/deploy/sirens-dowel-mcp-roster.yml` lists forgejo, openlibrary, tvmaze, gutendex, gbif, exa, signoz, steam-storefront, steam-web-api, discord, playwright, and moxn. No quire, and no quire values file in that tree. `coilyco-bridge/deploy#672` says why: the quire train (#664, #665, #667) is superseded by the moxn publish plane and stays parked, and "quire.coilysiren.me artifacts removed or parked, nothing from the #664 train deploys." ## Why it matters tomorrow `coilyco-general/references/capability.md` is inline on the same lane and says a capability absent from it is one the service does not have, and that describing an unavailable ability is a fabrication. site-work.md now contradicts that on a surface the audience can ask about, and it does so with the strongest wording in the pack. The failure mode is not a refusal. It is Dowel asserting it owns a live site it has no verb for, in front of a recorded stream, and then either inventing a `set_page` call or discovering mid-turn that the tool is not there. ## Shapes 1. **Retarget to moxn**, once deploy#672's write verbs actually land. The file's real content, which is "you own landing here, read before replacing, work in visible increments," transfers. It cannot land before the verbs do, and what shipped in deploy#674 is read-only. 2. **Park the file** the way the train was parked. Drop it from the root until there is a write surface, so nothing inline describes one. 3. **Rewrite it as read-only site context**, describing the moxn-to-hugo-to-caddy pipeline as something Dowel reads and can explain but does not operate. Option 2 is the safe one before 2026-08-19 and reversible after. Option 1 is the intended end state. Refs coilyco-bridge/deploy#672, coilyco-bridge/deploy#674
Author
Member

Confirmed by Kai: quire is being deleted and a new live deploy target is being stood up now.

Half of this is done in a4c4d76, and the half that needs the new target is not.

Done. site-work.md no longer names a tool. The doctrine stays, the surface naming goes, and the opening says that with no site write verb in the offered tool list the file describes nothing that exists yet. That is honest through the changeover and inert until the verbs appear, so nothing inline asserts a surface the lane cannot reach.

Option 2 in the issue body, parking the file, was the other candidate and is worse. The doctrine in it is what stops the lane deferring a write to an operator seat that does not exist, and losing it during the gap is the failure the file was written to prevent.

Dropped rather than rewritten blind. The front-matter section. Its key list and its degrade-to-a-warning-banner behaviour were quire's, and coilyco-bridge/deploy#672's hugo pipeline fails the build and holds last-good instead, so neither reading can be asserted. Standing in for it is the weaker true statement that a write returning is not the same as a page rendering.

Left open for. Naming the new target's verbs, restoring a front-matter section against its real semantics, and whatever the concurrency story turns out to be. That is a small edit against a surface that exists, not a guess, so it waits for the target rather than for a decision.

Confirmed by Kai: quire is being deleted and a new live deploy target is being stood up now. Half of this is done in `a4c4d76`, and the half that needs the new target is not. **Done.** site-work.md no longer names a tool. The doctrine stays, the surface naming goes, and the opening says that with no site write verb in the offered tool list the file describes nothing that exists yet. That is honest through the changeover and inert until the verbs appear, so nothing inline asserts a surface the lane cannot reach. Option 2 in the issue body, parking the file, was the other candidate and is worse. The doctrine in it is what stops the lane deferring a write to an operator seat that does not exist, and losing it during the gap is the failure the file was written to prevent. **Dropped rather than rewritten blind.** The front-matter section. Its key list and its degrade-to-a-warning-banner behaviour were quire's, and coilyco-bridge/deploy#672's hugo pipeline fails the build and holds last-good instead, so neither reading can be asserted. Standing in for it is the weaker true statement that a write returning is not the same as a page rendering. **Left open for.** Naming the new target's verbs, restoring a front-matter section against its real semantics, and whatever the concurrency story turns out to be. That is a small edit against a surface that exists, not a guess, so it waits for the target rather than for a decision.
Author
Member

Status has moved on both sides since the last comment, and the issue is still open for the same reason.

quire is gone. Confirmed by Kai and against the trees: no reference and no file named for it in deploy origin/main, and none here since a4c4d76.

The replacement exists and is serving. hugo-caddy is running in its own namespace and https://vibes.coilysiren.me answers 200 behind Caddy. The pipeline is coilyco-bridge/deploy#672: Moxn holds canonical content, a sync sidecar pulls it with the context CLI on a 3-second loop, hugo compiles, caddy serves, and the symlink flips only on a successful build so broken content never ships.

The retarget is still blocked, and on a different thing than before. It was blocked on there being no target. Now the target is up and the lane has no write verb pointed at it. sirens-dowel's Moxn wrap is the four read tools from coilyco-bridge/deploy#674, and #672 describes a write-capable retarget that has not been built. Until it is, there is nothing to name in site-work.md, which is why that file is deliberately holding target-independent doctrine with the opening that says it describes nothing that exists yet.

What the retarget will need when the verbs land, none of it guessable now:

  • The verb names, and whether a write replaces a document or patches a section.
  • A front-matter section written against real semantics. The old one documented quire's key list and its degrade-to-a-warning-banner behaviour, and this pipeline fails the hugo build and holds last-good instead, so neither reading transfers.
  • The concurrency story, which is now mediated by Moxn's own versioning rather than by a page revision the lane compares by hand.
  • The /publish boundary, which becomes a write concern rather than a quoting one the moment this lane can file documents.

Refs coilyco-bridge/deploy#672, coilyco-bridge/deploy#674

Status has moved on both sides since the last comment, and the issue is still open for the same reason. **quire is gone.** Confirmed by Kai and against the trees: no reference and no file named for it in `deploy` `origin/main`, and none here since `a4c4d76`. **The replacement exists and is serving.** `hugo-caddy` is running in its own namespace and `https://vibes.coilysiren.me` answers 200 behind Caddy. The pipeline is `coilyco-bridge/deploy#672`: Moxn holds canonical content, a sync sidecar pulls it with the `context` CLI on a 3-second loop, hugo compiles, caddy serves, and the symlink flips only on a successful build so broken content never ships. **The retarget is still blocked, and on a different thing than before.** It was blocked on there being no target. Now the target is up and the lane has no write verb pointed at it. `sirens-dowel`'s Moxn wrap is the four read tools from `coilyco-bridge/deploy#674`, and `#672` describes a write-capable retarget that has not been built. Until it is, there is nothing to name in `site-work.md`, which is why that file is deliberately holding target-independent doctrine with the opening that says it describes nothing that exists yet. What the retarget will need when the verbs land, none of it guessable now: * The verb names, and whether a write replaces a document or patches a section. * A front-matter section written against real semantics. The old one documented quire's key list and its degrade-to-a-warning-banner behaviour, and this pipeline fails the hugo build and holds last-good instead, so neither reading transfers. * The concurrency story, which is now mediated by Moxn's own versioning rather than by a page revision the lane compares by hand. * The `/publish` boundary, which becomes a write concern rather than a quoting one the moment this lane can file documents. Refs coilyco-bridge/deploy#672, coilyco-bridge/deploy#674
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
coilyco-gaming/sirens-echo#977
No description provided.