@m8t-stack/cli 0.2.78 → 0.2.80

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/cli.js CHANGED
@@ -229,9 +229,19 @@ var init_agent_roster = __esm({
229
229
  });
230
230
 
231
231
  // ../../packages/api-contract/dist/esm/ui-directive.js
232
+ var DECISION_REFUSAL_REASONS, decisionRefusalReasons;
232
233
  var init_ui_directive = __esm({
233
234
  "../../packages/api-contract/dist/esm/ui-directive.js"() {
234
235
  "use strict";
236
+ DECISION_REFUSAL_REASONS = {
237
+ /** 409 — no live call with that `callId`. Answered twice, or talked past and dismissed. */
238
+ notPending: "decision_not_pending",
239
+ /** 400 — decisions are a prompt-worker surface; a hosted worker raises none. */
240
+ invalidAgent: "invalid_decision_agent",
241
+ /** 400 — the `data-ui-result` payload is malformed or its option is out of range. */
242
+ invalidResult: "invalid_decision_result"
243
+ };
244
+ decisionRefusalReasons = Object.values(DECISION_REFUSAL_REASONS);
235
245
  }
236
246
  });
237
247
 
@@ -1390,7 +1400,7 @@ var init_enable_hosted_brain = __esm({
1390
1400
  import { Builtins, Cli } from "clipanion";
1391
1401
 
1392
1402
  // src/lib/package-version.ts
1393
- var CLI_VERSION = "0.2.78";
1403
+ var CLI_VERSION = "0.2.80";
1394
1404
 
1395
1405
  // src/lib/render-error.ts
1396
1406
  init_errors();
@@ -15005,14 +15015,14 @@ function tryResolveRepoRoot() {
15005
15015
  const root = fs5.readFileSync(marker, "utf8").trim();
15006
15016
  return root.length > 0 ? root : null;
15007
15017
  }
15008
- function assertPlatformCheckout(repoRoot, operation, needs = ["personas"]) {
15018
+ function assertPlatformCheckout(repoRoot, operation, needs = ["personas"], overrides = {}) {
15009
15019
  const missing = needs.filter((d) => !fs5.existsSync(path6.join(repoRoot, d)));
15010
15020
  if (missing.length === 0) return;
15011
15021
  const isAgentRepo = fs5.existsSync(path6.join(repoRoot, "agent", "persona.md"));
15012
15022
  throw new LocalCliError({
15013
15023
  code: "PLATFORM_CHECKOUT_REQUIRED",
15014
- message: `${operation} needs a platform checkout, but ~/.m8t/repo-root points at '${repoRoot}', which has no ${missing.join("/ or ")}/.` + (isAgentRepo ? " That path is the agent repository \u2014 it carries the install runbook, not the platform." : ""),
15015
- hint: "This operation reads platform content that is not published today, so it is maintainer-side for now. Your installation still updates itself: the auto-update rail applies published releases without needing any checkout."
15024
+ message: `${operation} needs a platform checkout, but ${overrides.source ?? "~/.m8t/repo-root"} points at '${repoRoot}', which has no ${missing.join("/ or ")}/.` + (isAgentRepo ? " That path is the agent repository \u2014 it carries the install runbook, not the platform." : ""),
15025
+ hint: overrides.hint ?? "This operation reads platform content that is not published today, so it is maintainer-side for now. Your installation still updates itself: the auto-update rail applies published releases without needing any checkout."
15016
15026
  });
15017
15027
  }
15018
15028
  function resolvePlatformRepoRoot(operation, needs) {
@@ -19221,7 +19231,7 @@ var SIZE_PRESETS = {
19221
19231
  };
19222
19232
  var DEFAULT_REGISTRY = "ghcr.io/m8t-labs";
19223
19233
  var DEFAULT_IMAGE = "m8t-coding-agent";
19224
- var DEFAULT_TAG = "v0.1.2";
19234
+ var DEFAULT_TAG = "v0.1.3";
19225
19235
  var DEFAULT_MODEL = "gpt-4.1-mini";
19226
19236
  var NAME_RE = /^[a-z0-9-]+$/;
19227
19237
  var CoderDeployCommand = class extends M8tCommand {
@@ -19624,7 +19634,7 @@ var SIZE_PRESETS2 = {
19624
19634
  };
19625
19635
  var DEFAULT_REGISTRY2 = "ghcr.io/m8t-labs";
19626
19636
  var DEFAULT_IMAGE2 = "m8t-azure-executor";
19627
- var DEFAULT_TAG2 = "v0.1.0";
19637
+ var DEFAULT_TAG2 = "v0.1.2";
19628
19638
  var DEFAULT_MODEL2 = "gpt-5-mini";
19629
19639
  var NAME_RE2 = /^[a-z0-9-]+$/;
19630
19640
  var AzureExecDeployCommand = class extends M8tCommand {
@@ -30113,7 +30123,7 @@ ${colors.error("\u2717")} The GitHub App on disk is installed on ${colors.field(
30113
30123
  // src/commands/bootstrap/launch.ts
30114
30124
  var DEFAULT_RG = "rg-m8t-stack";
30115
30125
  var DEFAULT_INSTALLER = "ghcr.io/m8t-labs/m8t-installer";
30116
- var DEFAULT_INSTALLER_TAG = "v0.1.61";
30126
+ var DEFAULT_INSTALLER_TAG = "v0.1.62";
30117
30127
  var ACI_NAME = "m8t-installer";
30118
30128
  var MI_NAME = "m8t-installer-mi";
30119
30129
  var BootstrapLaunchCommand = class extends M8tCommand {
@@ -33855,7 +33865,12 @@ var BootstrapUiCommand = class extends M8tCommand {
33855
33865
  hint: "Run 'm8t bootstrap launch --location <region>' first."
33856
33866
  });
33857
33867
  }
33858
- const repoRoot = (typeof this.repoRoot === "string" ? this.repoRoot : void 0) ?? process.cwd();
33868
+ const explicitRoot = typeof this.repoRoot === "string" ? this.repoRoot : void 0;
33869
+ const repoRoot = explicitRoot ?? process.cwd();
33870
+ assertPlatformCheckout(repoRoot, "'m8t bootstrap ui'", ["apps/web"], {
33871
+ source: explicitRoot === void 0 ? "the working directory" : "--repo-root",
33872
+ hint: "The local onboarding chat is part of the platform's web app, which is not published, so this step is unavailable today. Nothing else is blocked: let the install finish, then run 'm8t open' to meet Ezra in your deployed web app."
33873
+ });
33859
33874
  if (this.port !== "3000") {
33860
33875
  throw new LocalCliError({
33861
33876
  code: "BOOTSTRAP_UI_PORT_MSAL_LOCKED",