@ours.network/install 1.2.1-nightly.34 → 1.2.1-nightly.35
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/README.md +9 -2
- package/assets/release-lock.json +12 -12
- package/assets/release.json +7 -7
- package/assets/scripts/runtime/notifications-gateway.mjs +2 -2
- package/assets/sources.json +10 -10
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -637,7 +637,7 @@ Existing installation records keep their ports and identities. A listener acquir
|
|
|
637
637
|
by another process after preflight still causes startup to fail safely; no foreign
|
|
638
638
|
process is stopped and no retained installation is silently moved.
|
|
639
639
|
|
|
640
|
-
Workspace setup pins Fleet `1.2.0-nightly.
|
|
640
|
+
Workspace setup pins Fleet `1.2.0-nightly.46` with its recorded registry integrity. This release includes first-time Fleet setup through the host API for the account App, direct App access to the workspace services with the device credential, v2 positional one-use grants and automatic QR/connection-code output from `ours-fleet setup-tunnel`, optional private file/stdin inputs for legacy v1 payloads, a separate `ours-fleet link-device` command for additional devices, host prerequisite checks before the one-time workspace proof (`setup-tunnel --check`), `setup-tunnel --resume` to finish a setup that stopped after the host saved its private pending setup record (not when the proof's answer was lost, or after the setup window expired with an unconfirmed non-default port), and persists the available Fleet loopback port used by the workspace tunnel. It also accepts a setup-generated configuration left behind after the host enrollment state was removed, runs the host Codex when it is at least as new as the packaged one, offers only the Codex models the signed-in account can use, and removes the temporary setup contact after confirmation. Fleet serves no pages and opens no browser: every screen is in the App. Fleet also serves the workspace notification routes, produces notifications through the server gateway with the imported producer credential, accepts the App's device credential on the notification presence socket so an open App receives no push, and defaults agent wakes to `monitor.interrupt: after_tool` (Hermes: no interrupt; role snapshots saved before this default keep no interrupt). Existing installation identities and configured ports remain retained; a retained-port collision fails safely.
|
|
641
641
|
|
|
642
642
|
### App tunnel setup prerelease sequencing
|
|
643
643
|
|
|
@@ -654,10 +654,17 @@ connection code automatically; the App checks readiness and opens the code field
|
|
|
654
654
|
Private `--file`/`--stdin` transports remain optional and are the only transports
|
|
655
655
|
for legacy v1 payloads with long-lived credentials.
|
|
656
656
|
|
|
657
|
-
The nightly installer release manifest selects published Fleet `1.2.0-nightly.
|
|
657
|
+
The nightly installer release manifest selects published Fleet `1.2.0-nightly.46`
|
|
658
658
|
and its actual registry integrity through the normal release manifest/source-policy
|
|
659
659
|
generators. This release includes v2 argument and private-input support. The former
|
|
660
660
|
nightly.41 selection predates this capability. Merge and publish the repinned
|
|
661
661
|
installer before deploying the App; the pin change alone is not an installer
|
|
662
662
|
publication. Existing v1 private-file enrollment remains compatible. The legacy
|
|
663
663
|
App wrapper refuses an older Fleet before reading or redeeming its grant.
|
|
664
|
+
|
|
665
|
+
The notification gateway permits daemon-authenticated producer selection only on
|
|
666
|
+
POST `/api/v1/send` and `/api/v1/delete-target`. The latter retires a removed
|
|
667
|
+
conversation using the credential's fixed user/source scope. Browser inbox
|
|
668
|
+
`/api/v1/delete` continues to require the user credential. The notification
|
|
669
|
+
service must support the scoped lifecycle route; this change does not repin or
|
|
670
|
+
publish an installer release.
|
package/assets/release-lock.json
CHANGED
|
@@ -13,10 +13,10 @@
|
|
|
13
13
|
"@ours.network/codex": "1.2.0-nightly.10",
|
|
14
14
|
"@ours.network/cowork": "1.3.3-nightly.20261001.6d49d3a",
|
|
15
15
|
"@ours.network/daemon": "3.8.1-nightly.7",
|
|
16
|
-
"@ours.network/fleet": "1.2.0-nightly.
|
|
16
|
+
"@ours.network/fleet": "1.2.0-nightly.46",
|
|
17
17
|
"@ours.network/mcp": "1.2.0-nightly.10",
|
|
18
|
-
"@ours.network/messenger-server": "1.0.31-nightly.
|
|
19
|
-
"@ours.network/notifications": "0.3.1-nightly.
|
|
18
|
+
"@ours.network/messenger-server": "1.0.31-nightly.15",
|
|
19
|
+
"@ours.network/notifications": "0.3.1-nightly.2",
|
|
20
20
|
"@ours.network/sdk": "3.8.1-nightly.15",
|
|
21
21
|
"@ours.network/tg-connector": "1.0.1-nightly.9"
|
|
22
22
|
}
|
|
@@ -1001,9 +1001,9 @@
|
|
|
1001
1001
|
}
|
|
1002
1002
|
},
|
|
1003
1003
|
"node_modules/@ours.network/fleet": {
|
|
1004
|
-
"version": "1.2.0-nightly.
|
|
1005
|
-
"resolved": "https://registry.npmjs.org/@ours.network/fleet/-/fleet-1.2.0-nightly.
|
|
1006
|
-
"integrity": "sha512-
|
|
1004
|
+
"version": "1.2.0-nightly.46",
|
|
1005
|
+
"resolved": "https://registry.npmjs.org/@ours.network/fleet/-/fleet-1.2.0-nightly.46.tgz",
|
|
1006
|
+
"integrity": "sha512-k39gR9pKGPb6V4c2nhmfZAuHZmI9jgW+Hd1cTjDydJm7feRbnILTuEKxn5E+EUOxl/NwMIpWEJgCx99P+yQGtA==",
|
|
1007
1007
|
"license": "FSL-1.1-Apache-2.0",
|
|
1008
1008
|
"dependencies": {
|
|
1009
1009
|
"@agentclientprotocol/sdk": "^1.3.0",
|
|
@@ -1047,9 +1047,9 @@
|
|
|
1047
1047
|
}
|
|
1048
1048
|
},
|
|
1049
1049
|
"node_modules/@ours.network/messenger-server": {
|
|
1050
|
-
"version": "1.0.31-nightly.
|
|
1051
|
-
"resolved": "https://registry.npmjs.org/@ours.network/messenger-server/-/messenger-server-1.0.31-nightly.
|
|
1052
|
-
"integrity": "sha512-
|
|
1050
|
+
"version": "1.0.31-nightly.15",
|
|
1051
|
+
"resolved": "https://registry.npmjs.org/@ours.network/messenger-server/-/messenger-server-1.0.31-nightly.15.tgz",
|
|
1052
|
+
"integrity": "sha512-NEpPsn3x4ZxYjhTo3c8JSYPKgfkhZ/W9s0u5Bd6OALWj40qc5ethui1uHfpw5Cu3+XHJz28WPh5e4RbjUMCmXQ==",
|
|
1053
1053
|
"license": "FSL-1.1-Apache-2.0",
|
|
1054
1054
|
"dependencies": {
|
|
1055
1055
|
"@eslint-community/regexpp": "4.12.2",
|
|
@@ -1066,9 +1066,9 @@
|
|
|
1066
1066
|
}
|
|
1067
1067
|
},
|
|
1068
1068
|
"node_modules/@ours.network/notifications": {
|
|
1069
|
-
"version": "0.3.1-nightly.
|
|
1070
|
-
"resolved": "https://registry.npmjs.org/@ours.network/notifications/-/notifications-0.3.1-nightly.
|
|
1071
|
-
"integrity": "sha512-
|
|
1069
|
+
"version": "0.3.1-nightly.2",
|
|
1070
|
+
"resolved": "https://registry.npmjs.org/@ours.network/notifications/-/notifications-0.3.1-nightly.2.tgz",
|
|
1071
|
+
"integrity": "sha512-OjnrJ8ZuOfKYT4KAmiRLU7czfiuacs6rShwOvvqxqBaUKcs1UwjsYwHARNb6erMxG4am3xxcE0ItahL+d2vt4A==",
|
|
1072
1072
|
"license": "FSL-1.1-Apache-2.0",
|
|
1073
1073
|
"dependencies": {
|
|
1074
1074
|
"web-push": "3.6.7",
|
package/assets/release.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"schema": 1,
|
|
3
3
|
"channel": "nightly",
|
|
4
|
-
"installerVersion": "1.2.1-nightly.
|
|
4
|
+
"installerVersion": "1.2.1-nightly.35",
|
|
5
5
|
"packages": {
|
|
6
6
|
"@ours.network/sdk": {
|
|
7
7
|
"version": "3.8.1-nightly.15",
|
|
@@ -20,16 +20,16 @@
|
|
|
20
20
|
"integrity": "sha512-tqoLOWc4O8CGwLdO1j6ukm6Vn57EE0zbuxKo4BWd0QVwu9ObKgHCEMOKPgW2mXHeESXSv9m7edcIrnK8I5gD+w=="
|
|
21
21
|
},
|
|
22
22
|
"@ours.network/messenger-server": {
|
|
23
|
-
"version": "1.0.31-nightly.
|
|
24
|
-
"integrity": "sha512-
|
|
23
|
+
"version": "1.0.31-nightly.15",
|
|
24
|
+
"integrity": "sha512-NEpPsn3x4ZxYjhTo3c8JSYPKgfkhZ/W9s0u5Bd6OALWj40qc5ethui1uHfpw5Cu3+XHJz28WPh5e4RbjUMCmXQ=="
|
|
25
25
|
},
|
|
26
26
|
"@ours.network/notifications": {
|
|
27
|
-
"version": "0.3.1-nightly.
|
|
28
|
-
"integrity": "sha512-
|
|
27
|
+
"version": "0.3.1-nightly.2",
|
|
28
|
+
"integrity": "sha512-OjnrJ8ZuOfKYT4KAmiRLU7czfiuacs6rShwOvvqxqBaUKcs1UwjsYwHARNb6erMxG4am3xxcE0ItahL+d2vt4A=="
|
|
29
29
|
},
|
|
30
30
|
"@ours.network/fleet": {
|
|
31
|
-
"version": "1.2.0-nightly.
|
|
32
|
-
"integrity": "sha512-
|
|
31
|
+
"version": "1.2.0-nightly.46",
|
|
32
|
+
"integrity": "sha512-k39gR9pKGPb6V4c2nhmfZAuHZmI9jgW+Hd1cTjDydJm7feRbnILTuEKxn5E+EUOxl/NwMIpWEJgCx99P+yQGtA=="
|
|
33
33
|
},
|
|
34
34
|
"@ours.network/mcp": {
|
|
35
35
|
"version": "1.2.0-nightly.10",
|
|
@@ -21,7 +21,7 @@ export function daemonCredentialCheck(daemonUrl) {
|
|
|
21
21
|
/**
|
|
22
22
|
* Front the notification service with the server's own authentication.
|
|
23
23
|
* A request carrying a server API credential is checked with the daemon; only then
|
|
24
|
-
* does it act as this installation's owner (or, for
|
|
24
|
+
* does it act as this installation's owner (or, for producer lifecycle routes, as the named
|
|
25
25
|
* producer). A request without one keeps its own Authorization, which the service
|
|
26
26
|
* checks against its scoped tokens. Nothing is injected for an unauthenticated caller.
|
|
27
27
|
*/
|
|
@@ -33,7 +33,7 @@ export function createNotificationsAdapter({ service, userToken, verifyServerCre
|
|
|
33
33
|
if (credential === undefined) return producer === undefined;
|
|
34
34
|
if (typeof credential !== 'string' || !credential || !await verifyServerCredential(credential)) return false;
|
|
35
35
|
const path = new URL(req.url ?? '/', 'http://localhost').pathname;
|
|
36
|
-
if (producer !== undefined && !(req.method === 'POST' &&
|
|
36
|
+
if (producer !== undefined && !(req.method === 'POST' && ['/api/v1/send', '/api/v1/delete-target'].includes(path))) return false;
|
|
37
37
|
req.headers.authorization = `Bearer ${producer ?? userToken}`;
|
|
38
38
|
return true;
|
|
39
39
|
};
|
package/assets/sources.json
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
"release": {
|
|
3
3
|
"schema": 1,
|
|
4
4
|
"channel": "nightly",
|
|
5
|
-
"installerVersion": "1.2.1-nightly.
|
|
5
|
+
"installerVersion": "1.2.1-nightly.35",
|
|
6
6
|
"packages": {
|
|
7
7
|
"@ours.network/sdk": {
|
|
8
8
|
"version": "3.8.1-nightly.15",
|
|
@@ -21,16 +21,16 @@
|
|
|
21
21
|
"integrity": "sha512-tqoLOWc4O8CGwLdO1j6ukm6Vn57EE0zbuxKo4BWd0QVwu9ObKgHCEMOKPgW2mXHeESXSv9m7edcIrnK8I5gD+w=="
|
|
22
22
|
},
|
|
23
23
|
"@ours.network/messenger-server": {
|
|
24
|
-
"version": "1.0.31-nightly.
|
|
25
|
-
"integrity": "sha512-
|
|
24
|
+
"version": "1.0.31-nightly.15",
|
|
25
|
+
"integrity": "sha512-NEpPsn3x4ZxYjhTo3c8JSYPKgfkhZ/W9s0u5Bd6OALWj40qc5ethui1uHfpw5Cu3+XHJz28WPh5e4RbjUMCmXQ=="
|
|
26
26
|
},
|
|
27
27
|
"@ours.network/notifications": {
|
|
28
|
-
"version": "0.3.1-nightly.
|
|
29
|
-
"integrity": "sha512-
|
|
28
|
+
"version": "0.3.1-nightly.2",
|
|
29
|
+
"integrity": "sha512-OjnrJ8ZuOfKYT4KAmiRLU7czfiuacs6rShwOvvqxqBaUKcs1UwjsYwHARNb6erMxG4am3xxcE0ItahL+d2vt4A=="
|
|
30
30
|
},
|
|
31
31
|
"@ours.network/fleet": {
|
|
32
|
-
"version": "1.2.0-nightly.
|
|
33
|
-
"integrity": "sha512-
|
|
32
|
+
"version": "1.2.0-nightly.46",
|
|
33
|
+
"integrity": "sha512-k39gR9pKGPb6V4c2nhmfZAuHZmI9jgW+Hd1cTjDydJm7feRbnILTuEKxn5E+EUOxl/NwMIpWEJgCx99P+yQGtA=="
|
|
34
34
|
},
|
|
35
35
|
"@ours.network/mcp": {
|
|
36
36
|
"version": "1.2.0-nightly.10",
|
|
@@ -79,15 +79,15 @@
|
|
|
79
79
|
},
|
|
80
80
|
"@ours.network/messenger-server": {
|
|
81
81
|
"type": "npm",
|
|
82
|
-
"version": "1.0.31-nightly.
|
|
82
|
+
"version": "1.0.31-nightly.15"
|
|
83
83
|
},
|
|
84
84
|
"@ours.network/notifications": {
|
|
85
85
|
"type": "npm",
|
|
86
|
-
"version": "0.3.1-nightly.
|
|
86
|
+
"version": "0.3.1-nightly.2"
|
|
87
87
|
},
|
|
88
88
|
"@ours.network/fleet": {
|
|
89
89
|
"type": "npm",
|
|
90
|
-
"version": "1.2.0-nightly.
|
|
90
|
+
"version": "1.2.0-nightly.46"
|
|
91
91
|
},
|
|
92
92
|
"@ours.network/mcp": {
|
|
93
93
|
"type": "npm",
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ours.network/install",
|
|
3
|
-
"version": "1.2.1-nightly.
|
|
3
|
+
"version": "1.2.1-nightly.35",
|
|
4
4
|
"private": false,
|
|
5
5
|
"description": "The all-in-one ours.network installer: one shared daemon, MCP, cowork, Telegram, Fleet initialization, harness plugins, Human identity, progress UI, and guided next steps.",
|
|
6
6
|
"type": "module",
|