Skip to content
ttorta docs

Troubleshooting

The board and the browser

The browser did not open, the board went away, and every refusal the server can answer with.


The browser did not open

Copy the http://localhost address from the terminal into your browser.

--no-open suppresses the browser; the address is still printed.

You lost the board

It is at that same localhost address. Ctrl-C stops the board, the engine and every pane, so start it again:

torta start ~/Documents/projects/my-project

cross-origin requests are refused

Status 403. The board answers only requests with no Origin header, or an origin on localhost or 127.0.0.1.

The WebSocket handshake answers cross-origin websocket handshakes are refused.

there is no workspace here yet

Status 409, from the settings routes, the engine control, and the pane socket. Finish the wizard, or start torta in a folder that already has a workspace.

this directory already has a workspace

Status 409, from the wizard’s create route, when the directory already has a torta.json. Reload the page.

no longer a wizard

Status 409, from the folder picker and the preview route. The server flipped to board mode while the page was open. Reload.

request body too large

A request body over 64 KB is refused before it is parsed.

body is not JSON

Followed by the parser’s own message. Every write route takes JSON; an empty body reads as an empty object.

this route is for the local watcher and needs the token from .torta/board.json

Status 403. The pane routes that can start a session need that token, sent as X-Torta-Token.

POST /api/pane/close sits outside that guard.

not found

Status 404, as plain text, for any path the server does not serve. For a ticket that does not exist, GET /api/ticket answers 404 with { "error": "not found" }.

An id is refused before lookup when it does not have three parts, names a queue other than todo, wip or done, is not a ticket filename, or contains a segment that climbs out of the workspace.

pass { paused: true } or { paused: false }

Status 400 from the engine control.

The pause button seems not to work

Pause writes .torta/DISPATCH_OFF and resume removes it. If the header disagrees with what is happening, look at that file.

touch .torta/DISPATCH_OFF and rm .torta/DISPATCH_OFF do the same, and a paused workspace stays paused after a restart.

The settings tab refuses a value

All status 400:

  • pass exactly one of domain, confirm, unconfirm. One key per request.
  • this endpoint writes domain, confirm, unconfirm and nothing else, followed by the keys it refused.
  • the domain help, which is the bare hostname: example.com, not https://example.com/.
  • <step> is not a step this workspace can self-report, when the tick names a step that is not a manual one in this project’s catalog.

There is also torta.json has no project block to write into.

The settings tab is slow

Every row costs a subprocess or two, so the tab is fetched when you open it rather than kept in the live state. The Claude Code row has its own check-again control.