{"version":"2.1.273","anchor":"headless-pluginmcp-startup-first-command-and-first-turn-mo","canonical_anchor":"headless-pluginmcp-startup-first-command-and-first-turn-mo","heading":"Headless plugin\/MCP startup: first-command and first-turn mount joins now actually wait, instead of being no-ops","tier":"notice","area":"Elsewhere","scope":null,"heads_up":null,"url":"https:\/\/changelogs.core-directive.com\/v\/2.1.273\/e\/headless-pluginmcp-startup-first-command-and-first-turn-mo","release_url":"https:\/\/changelogs.core-directive.com\/v\/2.1.273","markdown":"### Headless plugin\/MCP startup: first-command and first-turn mount joins now actually wait, instead of being no-ops\n\nHeadless startup now actually waits for plugin\/MCP mounts before the first command and first turn\n\n**What**\n\nTwo points in headless session startup, `firstCommandMountJoin` and `turnMountJoin`, previously did nothing. They now, when a 'projects mount' is still pending, actually wait for it to finish via `joinProjectsMountBeforeFirstCommand`, bounded by timeout settings (`PROJECTS_MOUNT_FIRST_COMMAND_WAIT_MS` and a related floor value). `turnMountJoin` additionally waits for any pending 'grants' before letting the first turn proceed.\n\n**Why**\n\nThis should prevent headless sessions from running commands or turns before required plugin\/MCP project mounts and permission grants are actually ready, avoiding race conditions where a headless session acts before its environment is fully set up.\n\n- Area: Elsewhere\n- Tier: You'll notice\n- Useful: 2\/5\n- Signal: 1\/5"}