@ouro.bot/cli 0.1.0-alpha.778 → 0.1.0-alpha.779

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/changelog.json CHANGED
@@ -1,10 +1,22 @@
1
1
  {
2
2
  "_note": "This changelog is maintained as part of the PR/version-bump workflow. Agent-curated, not auto-generated. Agents read this file directly via read_file to understand what changed between versions.",
3
3
  "versions": [
4
+ {
5
+ "version": "0.1.0-alpha.779",
6
+ "changes": [
7
+ "Treat terminal turns waiting for new input as safe context-loss Sentinel idle states, preventing false critical health alerts after normal private-runtime rests.",
8
+ "Keep the coverage gate from reinstalling Mailbox UI dependencies during the nerves audit build.",
9
+ "Bound the release preflight npm audit check, fall back to the local offline audit cache, and surface registry audit endpoint outages without hanging CI.",
10
+ "Parse npm audit JSON so CI reports the vulnerable package and advisory summary instead of a blind dependency-audit failure.",
11
+ "Treat shell timeout exit statuses from npm audit as registry timeouts so CI uses the intended offline fallback."
12
+ ]
13
+ },
4
14
  {
5
15
  "version": "0.1.0-alpha.778",
6
16
  "changes": [
7
- "Treat rested terminal turns waiting for new input as safe context-loss Sentinel idle states, matching settled turns and preventing false critical health alerts after normal private-runtime rests."
17
+ "Treat terminal turns waiting for new input as safe context-loss Sentinel idle states, preventing false critical health alerts after normal private-runtime rests.",
18
+ "Keep the coverage gate from reinstalling Mailbox UI dependencies during the nerves audit build.",
19
+ "Bound the release preflight npm audit check, fall back to the local offline audit cache, and surface registry audit endpoint outages without hanging CI."
8
20
  ]
9
21
  },
10
22
  {
@@ -1,5 +1,5 @@
1
1
  {
2
- "runtimeVersion": "0.1.0-alpha.778",
2
+ "runtimeVersion": "0.1.0-alpha.779",
3
3
  "bundleSchemaVersion": 3,
4
4
  "lastUpdated": "2026-09-03T00:00:00.000Z"
5
5
  }
@@ -1,7 +1,7 @@
1
1
  <?xml version="1.0"?>
2
2
  <Container version="2">
3
3
  <Name>Mendelow Cloud Butler</Name>
4
- <Repository>ghcr.io/ourostack/ouroboros-butler:0.1.0-alpha.778</Repository>
4
+ <Repository>ghcr.io/ourostack/ouroboros-butler:0.1.0-alpha.779</Repository>
5
5
  <Registry>https://github.com/ourostack/ouroboros/pkgs/container/ouroboros-butler</Registry>
6
6
  <Network>host</Network>
7
7
  <Shell>sh</Shell>
@@ -81,17 +81,20 @@ function currentAskCheck(card) {
81
81
  evidence,
82
82
  });
83
83
  }
84
- function isSettledTurnWait(resume) {
84
+ const TERMINAL_IDLE_OUTCOMES = new Set(["settled", "observed", "rested", "superseded"]);
85
+ function isTerminalIdleTurnWait(resume) {
86
+ const blocker = resume.blockedBecause[0] ?? "";
87
+ const match = /^turn outcome ([a-z_]+); wait for new input before acting$/.exec(blocker);
85
88
  return resume.hasCompleteState
86
89
  && resume.recorderHealth.status === "ok"
87
90
  && resume.blockedBecause.length === 1
88
- && (resume.blockedBecause[0] === "turn outcome settled; wait for new input before acting"
89
- || resume.blockedBecause[0] === "turn outcome rested; wait for new input before acting")
91
+ && match !== null
92
+ && TERMINAL_IDLE_OUTCOMES.has(match[1])
90
93
  && resume.nextSafeAction.value === "inspect the latest session and wait for new input before acting";
91
94
  }
92
95
  function nextSafeActionCheck(card, resume) {
93
96
  const evidence = card.nextAction.source ? [card.nextAction.source] : [];
94
- if (isSettledTurnWait(resume)) {
97
+ if (isTerminalIdleTurnWait(resume)) {
95
98
  return makeCheck({
96
99
  id: "next_safe_action",
97
100
  label: "Next safe action",
@@ -136,7 +139,7 @@ function staleGuardCheck(resume, card) {
136
139
  evidence,
137
140
  });
138
141
  }
139
- if (isSettledTurnWait(resume)) {
142
+ if (isTerminalIdleTurnWait(resume)) {
140
143
  return makeCheck({
141
144
  id: "stale_guard",
142
145
  label: "Stale-state guard",
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "name": "@ouro.bot/cli",
3
- "version": "0.1.0-alpha.778",
3
+ "version": "0.1.0-alpha.779",
4
4
  "lockfileVersion": 3,
5
5
  "requires": true,
6
6
  "packages": {
7
7
  "": {
8
8
  "name": "@ouro.bot/cli",
9
- "version": "0.1.0-alpha.778",
9
+ "version": "0.1.0-alpha.779",
10
10
  "dependencies": {
11
11
  "@anthropic-ai/sdk": "^0.78.0",
12
12
  "@azure/identity": "^4.13.0",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ouro.bot/cli",
3
- "version": "0.1.0-alpha.778",
3
+ "version": "0.1.0-alpha.779",
4
4
  "engines": {
5
5
  "node": ">=22"
6
6
  },
@@ -52,7 +52,7 @@
52
52
  "release:trust:repair-plan": "node scripts/npm-trusted-publishers.cjs repair-plan",
53
53
  "release:trust:repair": "node scripts/npm-trusted-publishers.cjs repair",
54
54
  "release:smoke": "node scripts/release-smoke.cjs",
55
- "audit:nerves": "npm run build && node dist/nerves/coverage/cli-main.js"
55
+ "audit:nerves": "npm run build -- --skip-mailbox-ui-install && node dist/nerves/coverage/cli-main.js"
56
56
  },
57
57
  "dependencies": {
58
58
  "@anthropic-ai/sdk": "^0.78.0",