toolroll 0.6.0 → 0.8.0
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.md +413 -0
- package/README.md +15 -0
- package/dist/agent-onboard.d.ts +106 -0
- package/dist/agent-onboard.js +282 -0
- package/dist/browser/workspace.css +2 -2
- package/dist/browser/workspace.js +23 -23
- package/dist/browser-shell.js +5 -3
- package/dist/browser-workspace.d.ts +45 -0
- package/dist/cli.d.ts +3 -1
- package/dist/cli.js +8 -1
- package/dist/control-setup.d.ts +4 -4
- package/dist/daemon.d.ts +4 -0
- package/dist/daemon.js +28 -4
- package/dist/desktop-host.js +2 -2
- package/dist/desktop-update.d.ts +7 -1
- package/dist/desktop-update.js +39 -22
- package/dist/evidence.d.ts +24 -0
- package/dist/evidence.js +103 -5
- package/dist/first-run.d.ts +54 -0
- package/dist/first-run.js +101 -0
- package/dist/install-method.d.ts +17 -0
- package/dist/install-method.js +65 -0
- package/dist/operate.d.ts +14 -0
- package/dist/operate.js +114 -18
- package/dist/provider-auth.d.ts +33 -8
- package/dist/provider-auth.js +54 -13
- package/dist/releases.d.ts +85 -0
- package/dist/releases.js +238 -0
- package/dist/serve.d.ts +18 -0
- package/dist/serve.js +237 -81
- package/dist/skills.d.ts +2 -0
- package/dist/skills.js +3 -1
- package/dist/store.d.ts +3 -3
- package/dist/store.js +9 -4
- package/dist/surface.js +2 -0
- package/dist/toolroll-update-cli.d.ts +15 -0
- package/dist/toolroll-update-cli.js +155 -0
- package/dist/toolroll-update-ui.d.ts +38 -0
- package/dist/toolroll-update-ui.js +89 -0
- package/dist/toolroll-update.d.ts +235 -0
- package/dist/toolroll-update.js +929 -0
- package/dist/update-notice.d.ts +5 -0
- package/dist/update-notice.js +4 -0
- package/dist/work-index.js +5 -3
- package/package.json +2 -1
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
/** The update notice's words, shared by the server page and the console. Plain text; callers escape. */
|
|
2
|
+
export function updateNoticeWords(notice) {
|
|
3
|
+
return notice.security ? `Toolroll ${notice.version} is available, with security fixes` : `Toolroll ${notice.version} is available`;
|
|
4
|
+
}
|
package/dist/work-index.js
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
* not verify artifacts, inspect processes, or authorize task operations. */
|
|
3
3
|
import { createHash } from 'node:crypto';
|
|
4
4
|
import { readProjectAccess } from './project-access.js';
|
|
5
|
-
import { providerName, signInReason } from './provider-auth.js';
|
|
5
|
+
import { pauseOnTaskProviders, providerName, signInReason } from './provider-auth.js';
|
|
6
6
|
import { scopeTermsProblem } from './store.js';
|
|
7
7
|
export const WORK_INDEX_PAGE_LIMIT = 40;
|
|
8
8
|
export const WORK_INDEX_MAX_LIMIT = 100;
|
|
@@ -15,6 +15,8 @@ const s = (row, key) => row[key] == null ? null : String(row[key]);
|
|
|
15
15
|
* admitted child needs its parent's exact revision brief, in the same repo.
|
|
16
16
|
* All subsequent reads are scalar/indexed metadata, never artifact bytes.
|
|
17
17
|
* MATERIALIZED prevents counts + page selection repeating correlated reads. */
|
|
18
|
+
/** A gate note counts only while its pause is on one of the task's current providers. */
|
|
19
|
+
const GATE_PAUSE_ON_TASK = pauseOnTaskProviders('p', 'c.ref_id');
|
|
18
20
|
const PROJECTION = `WITH RECURSIVE admitted AS MATERIALIZED (
|
|
19
21
|
SELECT t.id, t.title, t.state, t.created_at, t.updated_at, r.id ref_id, r.repo,
|
|
20
22
|
r.revision_of, r.revision_brief_artifact, r.assigned_runner, r.plan,
|
|
@@ -85,8 +87,8 @@ const PROJECTION = `WITH RECURSIVE admitted AS MATERIALIZED (
|
|
|
85
87
|
sc.task_id scope_id,sc.digest,sc.approved_at,sc.proposed_at,sc.profile_state,
|
|
86
88
|
-- The pause the dispatch gate itself left this task waiting on (the provider it resolved, pins,
|
|
87
89
|
-- configuration and planners included) first; the approved terms answer before any gate has looked.
|
|
88
|
-
EXISTS(SELECT 1 FROM provider_auth_pause p WHERE p.id=c.auth_wait_pause AND p.lifted_at IS NULL) gate_signed_out,
|
|
89
|
-
COALESCE((SELECT p.provider||':'||p.auth_mode FROM provider_auth_pause p WHERE p.id=c.auth_wait_pause AND p.lifted_at IS NULL),
|
|
90
|
+
EXISTS(SELECT 1 FROM provider_auth_pause p WHERE p.id=c.auth_wait_pause AND p.lifted_at IS NULL AND ${GATE_PAUSE_ON_TASK}) gate_signed_out,
|
|
91
|
+
COALESCE((SELECT p.provider||':'||p.auth_mode FROM provider_auth_pause p WHERE p.id=c.auth_wait_pause AND p.lifted_at IS NULL AND ${GATE_PAUSE_ON_TASK}),
|
|
90
92
|
(SELECT p.provider||':'||p.auth_mode FROM provider_auth_pause p WHERE p.lifted_at IS NULL AND p.provider IN (
|
|
91
93
|
SELECT json_extract(sc.approved_profile_json,'$.provider') WHERE json_valid(sc.approved_profile_json)
|
|
92
94
|
UNION ALL SELECT json_extract(leg.value,'$.provider') FROM json_each(CASE WHEN json_valid(sc.approved_route_json) THEN sc.approved_route_json ELSE '{}' END,'$.legs') leg
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "toolroll",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.8.0",
|
|
4
4
|
"description": "A control plane for unattended coding agents — queue tasks, walk away, come back to pull requests. Agents build in leased worktrees, never touch your default branch, and interrupt you only for decisions that need a human.",
|
|
5
5
|
"directories": {
|
|
6
6
|
"doc": "docs"
|
|
@@ -77,6 +77,7 @@
|
|
|
77
77
|
},
|
|
78
78
|
"files": [
|
|
79
79
|
"dist",
|
|
80
|
+
"CHANGELOG.md",
|
|
80
81
|
"scripts/provider-canary.mjs",
|
|
81
82
|
"scripts/canary-assertions.mjs",
|
|
82
83
|
"scripts/recovery-canary.mjs",
|