Skip to content

v0.110.0

Choose a tag to compare

@davidfarah2003 davidfarah2003 released this 27 Oct 17:39
81c3d61

Install or update: npm i -g cotal-ai@0.110.0

Changes in this release

  • Serve several spaces from one delivery process. cotal deliver --spaces <manifest> --server <url> holds one delivery lane per space the manifest names, so a host runs one delivery process instead of one per space. A lane is the daemon deliver --space runs, held by the host: it reads its own space's credential from the root, dials on its own connections into that space's account, and holds its own lease, broker watchdog, timer writer and membership feed. One space losing the broker, its credential or its lease closes that lane alone, and the host reopens it every 5 seconds while it fails. A lane writes no pidfile, and its lines carry a [<space>] prefix.

    The host serves every space in the manifest or none, and names the space it could not serve. It rereads the manifest when it changes on disk, on SIGHUP, and on a backstop interval, opening or closing the difference; a manifest that does not read or parse whole is reported and the open lanes are kept. --space and --spaces are alternatives, --spaces requires --server, and --creds, --dev-mint, --shard, --shards and deliver pending refuse with it. deliver --space is unchanged. The deliver deprecation warning now says to keep cotal deliver for --spaces, which the delivery service preset has no form for.

    The manifest grammar and the reconcile loop move to @cotal-ai/workspace as parseSpaceManifest and runSpaceHost, and the auth callout host runs on them. Its behavior and lines are unchanged, except that a signalled callout host now closes its lanes at once rather than one after another, and closes the lanes it opened before refusing on a manifest directory it cannot watch.

  • cotal down with several names now names a next step when one name matches no saved definition, the one a single named down gives: cotal service to list the saved definitions, or the web extension for web. For a broker name (nats, broker or stack-broker) it names a bare cotal down, which stops the broker with the whole stack, instead of stack-broker, which a set refuses. On a stack a plain cotal up started, broker among the names no longer says that no broker has been started.

    cotal manager logs after cotal down of a plain cotal up, with the manager log removed, now says the log at its path is no longer there and names only cotal up, when a pid record of the dead manager or the instance identity a manager keeps in the folder shows one ran. It still refuses TARGET_NOT_FOUND, and says no manager has been started, naming cotal manager start as well, only when no such record exists.

What's Changed

Full Changelog: v0.109.25...v0.110.0