@ouro.bot/cli 0.1.0-alpha.826 → 0.1.0-alpha.827
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,6 +1,12 @@
|
|
|
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.827",
|
|
6
|
+
"changes": [
|
|
7
|
+
"Awaits advance their own cadence on dispatch, so a filed watch no longer fires forever without recording a check."
|
|
8
|
+
]
|
|
9
|
+
},
|
|
4
10
|
{
|
|
5
11
|
"version": "0.1.0-alpha.826",
|
|
6
12
|
"changes": [
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
<?xml version="1.0"?>
|
|
2
2
|
<Container version="2">
|
|
3
3
|
<Name>ouro-butler</Name>
|
|
4
|
-
<Repository>ghcr.io/ourostack/ouroboros-butler:0.1.0-alpha.
|
|
4
|
+
<Repository>ghcr.io/ourostack/ouroboros-butler:0.1.0-alpha.827</Repository>
|
|
5
5
|
<Registry>https://github.com/ourostack/ouroboros/pkgs/container/ouroboros-butler</Registry>
|
|
6
6
|
<Network>host</Network>
|
|
7
7
|
<Shell>sh</Shell>
|
|
@@ -36,6 +36,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
36
36
|
exports.readAwaitRuntimeState = readAwaitRuntimeState;
|
|
37
37
|
exports.applyAwaitRuntimeState = applyAwaitRuntimeState;
|
|
38
38
|
exports.writeAwaitRuntimeState = writeAwaitRuntimeState;
|
|
39
|
+
exports.recordAwaitDispatch = recordAwaitDispatch;
|
|
39
40
|
exports.recordAwaitCheck = recordAwaitCheck;
|
|
40
41
|
const path = __importStar(require("path"));
|
|
41
42
|
const json_store_1 = require("../../arc/json-store");
|
|
@@ -89,6 +90,16 @@ function writeAwaitRuntimeState(agentRoot, name, partial) {
|
|
|
89
90
|
meta: { agentRoot, name, last_checked: merged.last_checked, checked_count: merged.checked_count },
|
|
90
91
|
});
|
|
91
92
|
}
|
|
93
|
+
// The scheduler owns cadence, not the model. `recordAwaitCheck` is written only
|
|
94
|
+
// when a woken turn calls `resolve_await` with verdict "no", so an await whose
|
|
95
|
+
// turn answers in chat, errors, or simply never calls the tool leaves
|
|
96
|
+
// `last_checked` null forever: it reads as "never checked" on every
|
|
97
|
+
// reconciliation, re-fires, wakes the private runtime again and records
|
|
98
|
+
// nothing. Recording the dispatch itself keeps the cadence honest whatever the
|
|
99
|
+
// turn does; the observation from `resolve_await` still layers on top.
|
|
100
|
+
function recordAwaitDispatch(agentRoot, name, now) {
|
|
101
|
+
writeAwaitRuntimeState(agentRoot, name, { last_checked: now });
|
|
102
|
+
}
|
|
92
103
|
function recordAwaitCheck(agentRoot, name, observation, now) {
|
|
93
104
|
const existing = readAwaitRuntimeState(agentRoot, name);
|
|
94
105
|
const nextCount = (existing?.checked_count ?? 0) + 1;
|
|
@@ -55,6 +55,7 @@ const habit_scheduler_1 = require("../habits/habit-scheduler");
|
|
|
55
55
|
const habit_migration_1 = require("../habits/habit-migration");
|
|
56
56
|
const await_scheduler_1 = require("../awaiting/await-scheduler");
|
|
57
57
|
const await_expiry_1 = require("../awaiting/await-expiry");
|
|
58
|
+
const await_runtime_state_1 = require("../awaiting/await-runtime-state");
|
|
58
59
|
const os_cron_deps_1 = require("./os-cron-deps");
|
|
59
60
|
const os_cron_1 = require("./os-cron");
|
|
60
61
|
const container_runtime_1 = require("./container-runtime");
|
|
@@ -801,7 +802,15 @@ void (0, daemon_bootstrap_startup_1.startDaemonAfterContainerCredentialBootstrap
|
|
|
801
802
|
agent,
|
|
802
803
|
awaitName,
|
|
803
804
|
triggerSource: "await-scheduler",
|
|
804
|
-
})).
|
|
805
|
+
})).then(() => {
|
|
806
|
+
// Record the dispatch here so the cadence advances whatever the woken
|
|
807
|
+
// turn does. Without this the only writer of `last_checked` is the
|
|
808
|
+
// agent calling `resolve_await`, so a turn that does anything else
|
|
809
|
+
// leaves the await permanently "never checked" and it re-fires on
|
|
810
|
+
// every reconciliation. Recorded only on a successful wake: a failed
|
|
811
|
+
// dispatch is not a check.
|
|
812
|
+
(0, await_runtime_state_1.recordAwaitDispatch)(bundleRoot, awaitName, new Date().toISOString());
|
|
813
|
+
}).catch((error) => {
|
|
805
814
|
emitAwaitPrivateWakeDispatchError({
|
|
806
815
|
agent,
|
|
807
816
|
awaitName,
|
package/npm-shrinkwrap.json
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ouro.bot/cli",
|
|
3
|
-
"version": "0.1.0-alpha.
|
|
3
|
+
"version": "0.1.0-alpha.827",
|
|
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.
|
|
9
|
+
"version": "0.1.0-alpha.827",
|
|
10
10
|
"dependencies": {
|
|
11
11
|
"@anthropic-ai/sdk": "^0.78.0",
|
|
12
12
|
"@azure/identity": "^4.13.0",
|