@ours.network/install 1.2.1-nightly.43 → 1.2.1-nightly.45
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/GATEWAY_SETUP.md +4 -4
- package/README.md +13 -6
- package/assets/release-lock.json +150 -149
- package/assets/release.json +27 -27
- package/assets/sources.json +38 -38
- package/lib/boot-readiness.mjs +67 -14
- package/package.json +1 -1
package/GATEWAY_SETUP.md
CHANGED
|
@@ -10,10 +10,10 @@ control local processes; they do not carry server management requests.
|
|
|
10
10
|
## Release availability
|
|
11
11
|
|
|
12
12
|
The nightly manifest selects one published dependency graph: SDK
|
|
13
|
-
`3.8.1-nightly.
|
|
14
|
-
Fleet `1.2.0-nightly.
|
|
15
|
-
Telegram `1.0.1-nightly.
|
|
16
|
-
`1.3.
|
|
13
|
+
`3.8.1-nightly.18`, CLI `2.8.1-nightly.16`, daemon `3.8.1-nightly.10`,
|
|
14
|
+
Fleet `1.2.0-nightly.61`, MCP/Codex/Claude Code `1.2.0-nightly.14`,
|
|
15
|
+
Telegram `1.0.1-nightly.12`, Messenger `1.0.31-nightly.18`, and Cowork
|
|
16
|
+
`1.3.4-nightly.20261013.e8a690f`. Exact archive checksums are retained in
|
|
17
17
|
`releases/nightly.json`; the host CLI uses the same SDK/CLI pair.
|
|
18
18
|
|
|
19
19
|
The coordinated installer release must include these pins before using the
|
package/README.md
CHANGED
|
@@ -182,9 +182,9 @@ runs beside the harnesses on the client machine and calls the daemon HTTP API.
|
|
|
182
182
|
Client commands report an unavailable server and never start one automatically.
|
|
183
183
|
|
|
184
184
|
The checked-in source policy and packed installer retain the existing server
|
|
185
|
-
release set (SDK `3.8.1-nightly.
|
|
186
|
-
`3.8.1-nightly.
|
|
187
|
-
`3.8.1-nightly.
|
|
185
|
+
release set (SDK `3.8.1-nightly.18`, CLI `2.8.1-nightly.16`, daemon
|
|
186
|
+
`3.8.1-nightly.10`). The isolated host CLI uses published SDK
|
|
187
|
+
`3.8.1-nightly.18` and CLI `2.8.1-nightly.16`, including the shared gateway
|
|
188
188
|
profile resolver. `releases/nightly.json` binds both selections to verified
|
|
189
189
|
SHA512 integrities. Gateway-only Fleet/MCP release adoption is still pending;
|
|
190
190
|
see [GATEWAY_SETUP.md](GATEWAY_SETUP.md). Mixed or unselected nested ours
|
|
@@ -739,7 +739,7 @@ Existing installation records keep their ports and identities. A listener acquir
|
|
|
739
739
|
by another process after preflight still causes startup to fail safely; no foreign
|
|
740
740
|
process is stopped and no retained installation is silently moved.
|
|
741
741
|
|
|
742
|
-
Workspace setup pins Fleet `1.2.0-nightly.
|
|
742
|
+
Workspace setup pins Fleet `1.2.0-nightly.61` 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.
|
|
743
743
|
|
|
744
744
|
### App tunnel setup prerelease sequencing
|
|
745
745
|
|
|
@@ -756,7 +756,7 @@ connection code automatically; the App checks readiness and opens the code field
|
|
|
756
756
|
Private `--file`/`--stdin` transports remain optional and are the only transports
|
|
757
757
|
for legacy v1 payloads with long-lived credentials.
|
|
758
758
|
|
|
759
|
-
The nightly installer release manifest selects published Fleet `1.2.0-nightly.
|
|
759
|
+
The nightly installer release manifest selects published Fleet `1.2.0-nightly.61`
|
|
760
760
|
and its actual registry integrity through the normal release manifest/source-policy
|
|
761
761
|
generators. This release includes v2 argument and private-input support. The former
|
|
762
762
|
nightly.41 selection predates this capability. Merge and publish the repinned
|
|
@@ -813,7 +813,14 @@ Recovery introduces no host watchdog or service.
|
|
|
813
813
|
Host boot is a separate prerequisite. On Linux, enable the selected Docker
|
|
814
814
|
Engine system service; rootless Docker additionally needs its user service and
|
|
815
815
|
user linger. The installer reports read-only boot diagnostics and does not enable
|
|
816
|
-
or restart host services.
|
|
816
|
+
or restart host services. It reads the persistent `docker.service` unit-file
|
|
817
|
+
state, not whether Docker is running now: when Docker is running but not enabled,
|
|
818
|
+
it says that ours components depending on Docker will not start automatically
|
|
819
|
+
after a reboot and prints the optional command (`sudo systemctl enable
|
|
820
|
+
docker.service`, or `systemctl --user enable docker.service` plus
|
|
821
|
+
`sudo loginctl enable-linger USER` for rootless Docker). A masked unit, or a host
|
|
822
|
+
not booted with systemd or with no `docker.service` (WSL with Docker Desktop integration, snap,
|
|
823
|
+
OpenRC and similar), gets the same warning without a systemctl command. A reachable remote Engine or Docker Desktop context
|
|
817
824
|
cannot prove boot recovery on this machine. A custom Unix socket also has an
|
|
818
825
|
unverified boot-service binding; a host unit cannot establish its startup. On macOS/Windows with WSL, enable Docker
|
|
819
826
|
Desktop startup at sign-in; this does not provide pre-login startup. Rootless
|
package/assets/release-lock.json
CHANGED
|
@@ -8,17 +8,17 @@
|
|
|
8
8
|
"name": "ours-release-set-verification",
|
|
9
9
|
"version": "0.0.0",
|
|
10
10
|
"dependencies": {
|
|
11
|
-
"@ours.network/claude-code": "1.2.0-nightly.
|
|
12
|
-
"@ours.network/cli": "2.8.1-nightly.
|
|
13
|
-
"@ours.network/codex": "1.2.0-nightly.
|
|
14
|
-
"@ours.network/cowork": "1.3.
|
|
15
|
-
"@ours.network/daemon": "3.8.1-nightly.
|
|
16
|
-
"@ours.network/fleet": "1.2.0-nightly.
|
|
17
|
-
"@ours.network/mcp": "1.2.0-nightly.
|
|
18
|
-
"@ours.network/messenger-server": "1.0.31-nightly.
|
|
19
|
-
"@ours.network/notifications": "0.3.1-nightly.
|
|
20
|
-
"@ours.network/sdk": "3.8.1-nightly.
|
|
21
|
-
"@ours.network/tg-connector": "1.0.1-nightly.
|
|
11
|
+
"@ours.network/claude-code": "1.2.0-nightly.14",
|
|
12
|
+
"@ours.network/cli": "2.8.1-nightly.16",
|
|
13
|
+
"@ours.network/codex": "1.2.0-nightly.14",
|
|
14
|
+
"@ours.network/cowork": "1.3.4-nightly.20261013.e8a690f",
|
|
15
|
+
"@ours.network/daemon": "3.8.1-nightly.10",
|
|
16
|
+
"@ours.network/fleet": "1.2.0-nightly.61",
|
|
17
|
+
"@ours.network/mcp": "1.2.0-nightly.14",
|
|
18
|
+
"@ours.network/messenger-server": "1.0.31-nightly.18",
|
|
19
|
+
"@ours.network/notifications": "0.3.1-nightly.3",
|
|
20
|
+
"@ours.network/sdk": "3.8.1-nightly.18",
|
|
21
|
+
"@ours.network/tg-connector": "1.0.1-nightly.12"
|
|
22
22
|
}
|
|
23
23
|
},
|
|
24
24
|
"node_modules/@adapt-toolkit/sdk": {
|
|
@@ -391,9 +391,9 @@
|
|
|
391
391
|
}
|
|
392
392
|
},
|
|
393
393
|
"node_modules/@agentclientprotocol/claude-agent-acp/node_modules/zod": {
|
|
394
|
-
"version": "4.6.
|
|
395
|
-
"resolved": "https://registry.npmjs.org/zod/-/zod-4.6.
|
|
396
|
-
"integrity": "sha512-
|
|
394
|
+
"version": "4.6.7",
|
|
395
|
+
"resolved": "https://registry.npmjs.org/zod/-/zod-4.6.7.tgz",
|
|
396
|
+
"integrity": "sha512-g8W2D2kU6a8untc053fX1uVBKzM7yqAxW/3zwk83+6RyF2+SKOuV+c0wBDhUwzV1PaGapmZH+rmcUzPf+3CGwg==",
|
|
397
397
|
"license": "MIT",
|
|
398
398
|
"optional": true,
|
|
399
399
|
"funding": {
|
|
@@ -419,9 +419,9 @@
|
|
|
419
419
|
}
|
|
420
420
|
},
|
|
421
421
|
"node_modules/@agentclientprotocol/codex-acp/node_modules/zod": {
|
|
422
|
-
"version": "4.6.
|
|
423
|
-
"resolved": "https://registry.npmjs.org/zod/-/zod-4.6.
|
|
424
|
-
"integrity": "sha512-
|
|
422
|
+
"version": "4.6.7",
|
|
423
|
+
"resolved": "https://registry.npmjs.org/zod/-/zod-4.6.7.tgz",
|
|
424
|
+
"integrity": "sha512-g8W2D2kU6a8untc053fX1uVBKzM7yqAxW/3zwk83+6RyF2+SKOuV+c0wBDhUwzV1PaGapmZH+rmcUzPf+3CGwg==",
|
|
425
425
|
"license": "MIT",
|
|
426
426
|
"optional": true,
|
|
427
427
|
"funding": {
|
|
@@ -585,9 +585,9 @@
|
|
|
585
585
|
}
|
|
586
586
|
},
|
|
587
587
|
"node_modules/@fastify/ajv-compiler": {
|
|
588
|
-
"version": "4.0.
|
|
589
|
-
"resolved": "https://registry.npmjs.org/@fastify/ajv-compiler/-/ajv-compiler-4.0.
|
|
590
|
-
"integrity": "sha512-
|
|
588
|
+
"version": "4.0.7",
|
|
589
|
+
"resolved": "https://registry.npmjs.org/@fastify/ajv-compiler/-/ajv-compiler-4.0.7.tgz",
|
|
590
|
+
"integrity": "sha512-VP0yIfwlc1ohj733keYDqyHm1VWeP9VQxYomunhr90jkC4aNNibbkrRiaNgPgqj1ORxUenILR4qzA/ppYBNAtQ==",
|
|
591
591
|
"funding": [
|
|
592
592
|
{
|
|
593
593
|
"type": "github",
|
|
@@ -606,9 +606,9 @@
|
|
|
606
606
|
}
|
|
607
607
|
},
|
|
608
608
|
"node_modules/@fastify/ajv-compiler/node_modules/fast-uri": {
|
|
609
|
-
"version": "4.2.
|
|
610
|
-
"resolved": "https://registry.npmjs.org/fast-uri/-/fast-uri-4.2.
|
|
611
|
-
"integrity": "sha512-
|
|
609
|
+
"version": "4.2.2",
|
|
610
|
+
"resolved": "https://registry.npmjs.org/fast-uri/-/fast-uri-4.2.2.tgz",
|
|
611
|
+
"integrity": "sha512-EwVpUMzLVNOmcWW0zi5G3JJwkopB6XXjnVvNBGfqrMMsVew2hkQWl5e/pe/CfYUeS6jt4cIO2MnamEW7v/7wPw==",
|
|
612
612
|
"funding": [
|
|
613
613
|
{
|
|
614
614
|
"type": "github",
|
|
@@ -621,10 +621,26 @@
|
|
|
621
621
|
],
|
|
622
622
|
"license": "BSD-3-Clause"
|
|
623
623
|
},
|
|
624
|
+
"node_modules/@fastify/deepmerge": {
|
|
625
|
+
"version": "3.2.2",
|
|
626
|
+
"resolved": "https://registry.npmjs.org/@fastify/deepmerge/-/deepmerge-3.2.2.tgz",
|
|
627
|
+
"integrity": "sha512-155eqA/WMQdN6gUD4RrhS2K0Pcz2Ou9pQ86L0sipOpP9ONbTA6oYw/hW4VdBjR4egcDHqmWUK9x80oUX7S1mDQ==",
|
|
628
|
+
"funding": [
|
|
629
|
+
{
|
|
630
|
+
"type": "github",
|
|
631
|
+
"url": "https://github.com/sponsors/fastify"
|
|
632
|
+
},
|
|
633
|
+
{
|
|
634
|
+
"type": "opencollective",
|
|
635
|
+
"url": "https://opencollective.com/fastify"
|
|
636
|
+
}
|
|
637
|
+
],
|
|
638
|
+
"license": "MIT"
|
|
639
|
+
},
|
|
624
640
|
"node_modules/@fastify/error": {
|
|
625
|
-
"version": "4.2.
|
|
626
|
-
"resolved": "https://registry.npmjs.org/@fastify/error/-/error-4.2.
|
|
627
|
-
"integrity": "sha512-
|
|
641
|
+
"version": "4.2.1",
|
|
642
|
+
"resolved": "https://registry.npmjs.org/@fastify/error/-/error-4.2.1.tgz",
|
|
643
|
+
"integrity": "sha512-MYBumuIwP+5MIpXSyKm6/o1Eigcoij186lWUssX3LH5U8KWqU0ktZhzC4CErIX9EJeQeRGI+zJZQWakBlFbUcg==",
|
|
628
644
|
"funding": [
|
|
629
645
|
{
|
|
630
646
|
"type": "github",
|
|
@@ -638,9 +654,9 @@
|
|
|
638
654
|
"license": "MIT"
|
|
639
655
|
},
|
|
640
656
|
"node_modules/@fastify/fast-json-stringify-compiler": {
|
|
641
|
-
"version": "5.1.
|
|
642
|
-
"resolved": "https://registry.npmjs.org/@fastify/fast-json-stringify-compiler/-/fast-json-stringify-compiler-5.1.
|
|
643
|
-
"integrity": "sha512-
|
|
657
|
+
"version": "5.1.1",
|
|
658
|
+
"resolved": "https://registry.npmjs.org/@fastify/fast-json-stringify-compiler/-/fast-json-stringify-compiler-5.1.1.tgz",
|
|
659
|
+
"integrity": "sha512-pyxRKk7UpUnnrztP9pF4+ZYxusEQ4LifTyzRdiXmyql1QezNHxO02D25MVU2o4kMeAMYWAjG6RKRlojgkbiDAw==",
|
|
644
660
|
"funding": [
|
|
645
661
|
{
|
|
646
662
|
"type": "github",
|
|
@@ -657,9 +673,9 @@
|
|
|
657
673
|
}
|
|
658
674
|
},
|
|
659
675
|
"node_modules/@fastify/forwarded": {
|
|
660
|
-
"version": "3.
|
|
661
|
-
"resolved": "https://registry.npmjs.org/@fastify/forwarded/-/forwarded-3.
|
|
662
|
-
"integrity": "sha512-
|
|
676
|
+
"version": "3.1.1",
|
|
677
|
+
"resolved": "https://registry.npmjs.org/@fastify/forwarded/-/forwarded-3.1.1.tgz",
|
|
678
|
+
"integrity": "sha512-XfDtW2Icvhqi6DP1YHFK4q/E8WpNd3+raBdzAyVZxmTInbFTtnEEKvEAMMOVdFuRyv+ynYipaA9D8FvjPqACkw==",
|
|
663
679
|
"funding": [
|
|
664
680
|
{
|
|
665
681
|
"type": "github",
|
|
@@ -673,9 +689,9 @@
|
|
|
673
689
|
"license": "MIT"
|
|
674
690
|
},
|
|
675
691
|
"node_modules/@fastify/merge-json-schemas": {
|
|
676
|
-
"version": "0.2.
|
|
677
|
-
"resolved": "https://registry.npmjs.org/@fastify/merge-json-schemas/-/merge-json-schemas-0.2.
|
|
678
|
-
"integrity": "sha512-
|
|
692
|
+
"version": "0.2.2",
|
|
693
|
+
"resolved": "https://registry.npmjs.org/@fastify/merge-json-schemas/-/merge-json-schemas-0.2.2.tgz",
|
|
694
|
+
"integrity": "sha512-d/gx9sRbUCVgGRGzma46wLcwiY8noTqO2Nmjg/vbTARxHRE5bdh5PIL8s97Lt1X7ScRWRW52eVYxwIoPwIdVUA==",
|
|
679
695
|
"funding": [
|
|
680
696
|
{
|
|
681
697
|
"type": "github",
|
|
@@ -692,9 +708,9 @@
|
|
|
692
708
|
}
|
|
693
709
|
},
|
|
694
710
|
"node_modules/@fastify/proxy-addr": {
|
|
695
|
-
"version": "5.1.
|
|
696
|
-
"resolved": "https://registry.npmjs.org/@fastify/proxy-addr/-/proxy-addr-5.1.
|
|
697
|
-
"integrity": "sha512-
|
|
711
|
+
"version": "5.1.2",
|
|
712
|
+
"resolved": "https://registry.npmjs.org/@fastify/proxy-addr/-/proxy-addr-5.1.2.tgz",
|
|
713
|
+
"integrity": "sha512-uqB4QsgVoro0XDC+DIftIMGXHdBPn+lK6Ek3xXAIxPMCJfqxnbtyEoMCm2KPUVOuIosd7Cyw9HawEqMFM/UA+g==",
|
|
698
714
|
"funding": [
|
|
699
715
|
{
|
|
700
716
|
"type": "github",
|
|
@@ -733,9 +749,9 @@
|
|
|
733
749
|
}
|
|
734
750
|
},
|
|
735
751
|
"node_modules/@hono/node-server": {
|
|
736
|
-
"version": "2.1.
|
|
737
|
-
"resolved": "https://registry.npmjs.org/@hono/node-server/-/node-server-2.1.
|
|
738
|
-
"integrity": "sha512-
|
|
752
|
+
"version": "2.1.5",
|
|
753
|
+
"resolved": "https://registry.npmjs.org/@hono/node-server/-/node-server-2.1.5.tgz",
|
|
754
|
+
"integrity": "sha512-MgP/I06GdvsilDspMk/qmRzpk8LOUStP6jFAbSRi40W09DhoyUn+Mj7eyKICPqeYKybOjVFLVIAQzvu1bfIa7Q==",
|
|
739
755
|
"license": "MIT",
|
|
740
756
|
"engines": {
|
|
741
757
|
"node": ">=20"
|
|
@@ -908,14 +924,14 @@
|
|
|
908
924
|
}
|
|
909
925
|
},
|
|
910
926
|
"node_modules/@ours.network/claude-code": {
|
|
911
|
-
"version": "1.2.0-nightly.
|
|
912
|
-
"resolved": "https://registry.npmjs.org/@ours.network/claude-code/-/claude-code-1.2.0-nightly.
|
|
913
|
-
"integrity": "sha512-
|
|
927
|
+
"version": "1.2.0-nightly.14",
|
|
928
|
+
"resolved": "https://registry.npmjs.org/@ours.network/claude-code/-/claude-code-1.2.0-nightly.14.tgz",
|
|
929
|
+
"integrity": "sha512-yOUBUU4DE2pbyVLjvA58tZvZy3vkzTop1sGM/O/huO4rnJg7TZpxazDe7f4bAWia0axU1oT/gjChfiYvh6+/cA==",
|
|
914
930
|
"license": "FSL-1.1-Apache-2.0",
|
|
915
931
|
"dependencies": {
|
|
916
932
|
"@modelcontextprotocol/sdk": "^1.29.0",
|
|
917
|
-
"@ours.network/mcp": "1.2.0-nightly.
|
|
918
|
-
"@ours.network/sdk": "3.8.1-nightly.
|
|
933
|
+
"@ours.network/mcp": "1.2.0-nightly.14",
|
|
934
|
+
"@ours.network/sdk": "3.8.1-nightly.18",
|
|
919
935
|
"ws": "^8.21.0",
|
|
920
936
|
"zod": "^3.25.76"
|
|
921
937
|
},
|
|
@@ -924,12 +940,12 @@
|
|
|
924
940
|
}
|
|
925
941
|
},
|
|
926
942
|
"node_modules/@ours.network/cli": {
|
|
927
|
-
"version": "2.8.1-nightly.
|
|
928
|
-
"resolved": "https://registry.npmjs.org/@ours.network/cli/-/cli-2.8.1-nightly.
|
|
929
|
-
"integrity": "sha512-
|
|
943
|
+
"version": "2.8.1-nightly.16",
|
|
944
|
+
"resolved": "https://registry.npmjs.org/@ours.network/cli/-/cli-2.8.1-nightly.16.tgz",
|
|
945
|
+
"integrity": "sha512-yZ6+xIaPiPCNxy/JMgQ7Kjh6ulKRY4pv6kZtnho328nPxG6/l/S09GPJDPG3rUd3IbkIsCGaLEffrCKKdWLhzQ==",
|
|
930
946
|
"license": "FSL-1.1-Apache-2.0",
|
|
931
947
|
"dependencies": {
|
|
932
|
-
"@ours.network/sdk": "3.8.1-nightly.
|
|
948
|
+
"@ours.network/sdk": "3.8.1-nightly.18"
|
|
933
949
|
},
|
|
934
950
|
"bin": {
|
|
935
951
|
"ours": "dist/cli.js"
|
|
@@ -939,14 +955,14 @@
|
|
|
939
955
|
}
|
|
940
956
|
},
|
|
941
957
|
"node_modules/@ours.network/codex": {
|
|
942
|
-
"version": "1.2.0-nightly.
|
|
943
|
-
"resolved": "https://registry.npmjs.org/@ours.network/codex/-/codex-1.2.0-nightly.
|
|
944
|
-
"integrity": "sha512-
|
|
958
|
+
"version": "1.2.0-nightly.14",
|
|
959
|
+
"resolved": "https://registry.npmjs.org/@ours.network/codex/-/codex-1.2.0-nightly.14.tgz",
|
|
960
|
+
"integrity": "sha512-NAEMprDCpYVd1ppRsdkrraMtFfCiJvGcJZHQUldJRyCL/DFve2J9YDJw/o3eY9zPg4b8er/5NI0mzQ420KYDmA==",
|
|
945
961
|
"license": "FSL-1.1-Apache-2.0",
|
|
946
962
|
"dependencies": {
|
|
947
963
|
"@modelcontextprotocol/sdk": "^1.29.0",
|
|
948
|
-
"@ours.network/mcp": "1.2.0-nightly.
|
|
949
|
-
"@ours.network/sdk": "3.8.1-nightly.
|
|
964
|
+
"@ours.network/mcp": "1.2.0-nightly.14",
|
|
965
|
+
"@ours.network/sdk": "3.8.1-nightly.18",
|
|
950
966
|
"ws": "^8.21.0",
|
|
951
967
|
"zod": "^3.25.76"
|
|
952
968
|
},
|
|
@@ -959,12 +975,12 @@
|
|
|
959
975
|
}
|
|
960
976
|
},
|
|
961
977
|
"node_modules/@ours.network/cowork": {
|
|
962
|
-
"version": "1.3.
|
|
963
|
-
"resolved": "https://registry.npmjs.org/@ours.network/cowork/-/cowork-1.3.
|
|
964
|
-
"integrity": "sha512-
|
|
978
|
+
"version": "1.3.4-nightly.20261013.e8a690f",
|
|
979
|
+
"resolved": "https://registry.npmjs.org/@ours.network/cowork/-/cowork-1.3.4-nightly.20261013.e8a690f.tgz",
|
|
980
|
+
"integrity": "sha512-t0eQoyMcfp5ar/eXkvGwTHHkkwvuD119WMbcFffsRhknJkZtnQOeLcKgfIiajVwk1HZIEONNeA4Eibml5M0DGw==",
|
|
965
981
|
"license": "FSL-1.1-Apache-2.0",
|
|
966
982
|
"dependencies": {
|
|
967
|
-
"@ours.network/sdk": "3.8.1-nightly.
|
|
983
|
+
"@ours.network/sdk": "3.8.1-nightly.18",
|
|
968
984
|
"ajv": "8.20.0",
|
|
969
985
|
"better-sqlite3": "13.0.3",
|
|
970
986
|
"react": "18.3.1",
|
|
@@ -979,14 +995,14 @@
|
|
|
979
995
|
}
|
|
980
996
|
},
|
|
981
997
|
"node_modules/@ours.network/daemon": {
|
|
982
|
-
"version": "3.8.1-nightly.
|
|
983
|
-
"resolved": "https://registry.npmjs.org/@ours.network/daemon/-/daemon-3.8.1-nightly.
|
|
984
|
-
"integrity": "sha512-
|
|
998
|
+
"version": "3.8.1-nightly.10",
|
|
999
|
+
"resolved": "https://registry.npmjs.org/@ours.network/daemon/-/daemon-3.8.1-nightly.10.tgz",
|
|
1000
|
+
"integrity": "sha512-y+t9xiuDRs9d/TdCYYxqqvYB+KjkryiaztoFDW7GY9qJFjgalylxrNZtlk2ASJRVSF4+2Hp0vqhM0Wt0Wsub0g==",
|
|
985
1001
|
"license": "FSL-1.1-Apache-2.0",
|
|
986
1002
|
"dependencies": {
|
|
987
1003
|
"@adapt-toolkit/sdk": "0.12.1",
|
|
988
1004
|
"@adapt-toolkit/sdk-native": "0.12.1",
|
|
989
|
-
"@ours.network/sdk": "3.8.1-nightly.
|
|
1005
|
+
"@ours.network/sdk": "3.8.1-nightly.18",
|
|
990
1006
|
"ajv": "^8.20.0",
|
|
991
1007
|
"pg": "^8.16.3",
|
|
992
1008
|
"ws": "^8.22.0"
|
|
@@ -1002,16 +1018,16 @@
|
|
|
1002
1018
|
}
|
|
1003
1019
|
},
|
|
1004
1020
|
"node_modules/@ours.network/fleet": {
|
|
1005
|
-
"version": "1.2.0-nightly.
|
|
1006
|
-
"resolved": "https://registry.npmjs.org/@ours.network/fleet/-/fleet-1.2.0-nightly.
|
|
1007
|
-
"integrity": "sha512-
|
|
1021
|
+
"version": "1.2.0-nightly.61",
|
|
1022
|
+
"resolved": "https://registry.npmjs.org/@ours.network/fleet/-/fleet-1.2.0-nightly.61.tgz",
|
|
1023
|
+
"integrity": "sha512-ZdgbZoleOUoGBr8Si9Yp/TUE46qd6eiscProaXFupusPAX4VDWODpmyupvIjckJcp860d1qNRngY2Z2cWYHcpw==",
|
|
1008
1024
|
"license": "FSL-1.1-Apache-2.0",
|
|
1009
1025
|
"dependencies": {
|
|
1010
1026
|
"@agentclientprotocol/sdk": "^1.3.0",
|
|
1011
1027
|
"@fastify/websocket": "^11.2.0",
|
|
1012
|
-
"@ours.network/cli": "2.8.1-nightly.
|
|
1013
|
-
"@ours.network/mcp": "1.2.0-nightly.
|
|
1014
|
-
"@ours.network/sdk": "3.8.1-nightly.
|
|
1028
|
+
"@ours.network/cli": "2.8.1-nightly.16",
|
|
1029
|
+
"@ours.network/mcp": "1.2.0-nightly.14",
|
|
1030
|
+
"@ours.network/sdk": "3.8.1-nightly.18",
|
|
1015
1031
|
"commander": "^12.1.0",
|
|
1016
1032
|
"fastify": "^5.4.0",
|
|
1017
1033
|
"qrcode": "1.5.4",
|
|
@@ -1031,13 +1047,13 @@
|
|
|
1031
1047
|
}
|
|
1032
1048
|
},
|
|
1033
1049
|
"node_modules/@ours.network/mcp": {
|
|
1034
|
-
"version": "1.2.0-nightly.
|
|
1035
|
-
"resolved": "https://registry.npmjs.org/@ours.network/mcp/-/mcp-1.2.0-nightly.
|
|
1036
|
-
"integrity": "sha512
|
|
1050
|
+
"version": "1.2.0-nightly.14",
|
|
1051
|
+
"resolved": "https://registry.npmjs.org/@ours.network/mcp/-/mcp-1.2.0-nightly.14.tgz",
|
|
1052
|
+
"integrity": "sha512-Ja7lDKLK14tlduWBdD8vF7BS7+jd01U97UH6tyzbB8uMnBOBEQmmVlfEliat2ghgNMhuSCTpn4THp5eT58UTDQ==",
|
|
1037
1053
|
"license": "FSL-1.1-Apache-2.0",
|
|
1038
1054
|
"dependencies": {
|
|
1039
1055
|
"@modelcontextprotocol/sdk": "^1.29.0",
|
|
1040
|
-
"@ours.network/sdk": "3.8.1-nightly.
|
|
1056
|
+
"@ours.network/sdk": "3.8.1-nightly.18",
|
|
1041
1057
|
"zod": "^3.23.8"
|
|
1042
1058
|
},
|
|
1043
1059
|
"bin": {
|
|
@@ -1048,13 +1064,13 @@
|
|
|
1048
1064
|
}
|
|
1049
1065
|
},
|
|
1050
1066
|
"node_modules/@ours.network/messenger-server": {
|
|
1051
|
-
"version": "1.0.31-nightly.
|
|
1052
|
-
"resolved": "https://registry.npmjs.org/@ours.network/messenger-server/-/messenger-server-1.0.31-nightly.
|
|
1053
|
-
"integrity": "sha512-
|
|
1067
|
+
"version": "1.0.31-nightly.18",
|
|
1068
|
+
"resolved": "https://registry.npmjs.org/@ours.network/messenger-server/-/messenger-server-1.0.31-nightly.18.tgz",
|
|
1069
|
+
"integrity": "sha512-nHeQBmBPV7w5VhOkHD9960HrN70sPmLzuldQVJd6uuEhKL7htE+jb+mOZAYuZwEN3qENbi/i0J39szHvUED9iA==",
|
|
1054
1070
|
"license": "FSL-1.1-Apache-2.0",
|
|
1055
1071
|
"dependencies": {
|
|
1056
1072
|
"@eslint-community/regexpp": "4.12.2",
|
|
1057
|
-
"@ours.network/sdk": "3.8.1-nightly.
|
|
1073
|
+
"@ours.network/sdk": "3.8.1-nightly.18",
|
|
1058
1074
|
"parse5": "^8.0.1",
|
|
1059
1075
|
"web-push": "^3.6.7",
|
|
1060
1076
|
"ws": "^8.21.0"
|
|
@@ -1067,9 +1083,9 @@
|
|
|
1067
1083
|
}
|
|
1068
1084
|
},
|
|
1069
1085
|
"node_modules/@ours.network/notifications": {
|
|
1070
|
-
"version": "0.3.1-nightly.
|
|
1071
|
-
"resolved": "https://registry.npmjs.org/@ours.network/notifications/-/notifications-0.3.1-nightly.
|
|
1072
|
-
"integrity": "sha512-
|
|
1086
|
+
"version": "0.3.1-nightly.3",
|
|
1087
|
+
"resolved": "https://registry.npmjs.org/@ours.network/notifications/-/notifications-0.3.1-nightly.3.tgz",
|
|
1088
|
+
"integrity": "sha512-mt69E2LLkfwBMOJm7IP49wLIO9KtugBqh6nQpfrfbRuTlenjyrmZqcAuhW1CyI2R1H518B0Evxagnx9/V9fIig==",
|
|
1073
1089
|
"license": "FSL-1.1-Apache-2.0",
|
|
1074
1090
|
"dependencies": {
|
|
1075
1091
|
"web-push": "3.6.7",
|
|
@@ -1083,9 +1099,9 @@
|
|
|
1083
1099
|
}
|
|
1084
1100
|
},
|
|
1085
1101
|
"node_modules/@ours.network/sdk": {
|
|
1086
|
-
"version": "3.8.1-nightly.
|
|
1087
|
-
"resolved": "https://registry.npmjs.org/@ours.network/sdk/-/sdk-3.8.1-nightly.
|
|
1088
|
-
"integrity": "sha512-
|
|
1102
|
+
"version": "3.8.1-nightly.18",
|
|
1103
|
+
"resolved": "https://registry.npmjs.org/@ours.network/sdk/-/sdk-3.8.1-nightly.18.tgz",
|
|
1104
|
+
"integrity": "sha512-48ZuJEW+SxIf3rgwAHx3/kPc18kN/KOgxj9tAvlFXDossRDhthte9VTV3xu2/sM7nzDoPXeQFm+/WImJ7UqZqw==",
|
|
1089
1105
|
"license": "FSL-1.1-Apache-2.0",
|
|
1090
1106
|
"workspaces": [
|
|
1091
1107
|
".",
|
|
@@ -1096,12 +1112,12 @@
|
|
|
1096
1112
|
}
|
|
1097
1113
|
},
|
|
1098
1114
|
"node_modules/@ours.network/tg-connector": {
|
|
1099
|
-
"version": "1.0.1-nightly.
|
|
1100
|
-
"resolved": "https://registry.npmjs.org/@ours.network/tg-connector/-/tg-connector-1.0.1-nightly.
|
|
1101
|
-
"integrity": "sha512-
|
|
1115
|
+
"version": "1.0.1-nightly.12",
|
|
1116
|
+
"resolved": "https://registry.npmjs.org/@ours.network/tg-connector/-/tg-connector-1.0.1-nightly.12.tgz",
|
|
1117
|
+
"integrity": "sha512-wEao1Xo5mCs//cuaD3YcdnTRMfBcPQCCqsPH1IiP7mYmVp/OFjEzp7U3YawNl8NUXZEdJZ0kIEzkHKUdhygEZw==",
|
|
1102
1118
|
"license": "FSL-1.1-Apache-2.0",
|
|
1103
1119
|
"dependencies": {
|
|
1104
|
-
"@ours.network/sdk": "3.8.1-nightly.
|
|
1120
|
+
"@ours.network/sdk": "3.8.1-nightly.18",
|
|
1105
1121
|
"undici": "^7.28.0"
|
|
1106
1122
|
},
|
|
1107
1123
|
"bin": {
|
|
@@ -1244,9 +1260,9 @@
|
|
|
1244
1260
|
}
|
|
1245
1261
|
},
|
|
1246
1262
|
"node_modules/avvio": {
|
|
1247
|
-
"version": "9.3.
|
|
1248
|
-
"resolved": "https://registry.npmjs.org/avvio/-/avvio-9.3.
|
|
1249
|
-
"integrity": "sha512-
|
|
1263
|
+
"version": "9.3.1",
|
|
1264
|
+
"resolved": "https://registry.npmjs.org/avvio/-/avvio-9.3.1.tgz",
|
|
1265
|
+
"integrity": "sha512-QyTKW61/qlba+cUQBm/sT9X8lri4UdomqSDwCnrnj1IvLVDRRiXRkz4CgBRWB+/cmfC7SK5WQc8T1vSdGvaUcQ==",
|
|
1250
1266
|
"funding": [
|
|
1251
1267
|
{
|
|
1252
1268
|
"type": "github",
|
|
@@ -1840,9 +1856,9 @@
|
|
|
1840
1856
|
"license": "MIT"
|
|
1841
1857
|
},
|
|
1842
1858
|
"node_modules/fast-json-stringify": {
|
|
1843
|
-
"version": "7.0
|
|
1844
|
-
"resolved": "https://registry.npmjs.org/fast-json-stringify/-/fast-json-stringify-7.0.
|
|
1845
|
-
"integrity": "sha512-
|
|
1859
|
+
"version": "7.1.0",
|
|
1860
|
+
"resolved": "https://registry.npmjs.org/fast-json-stringify/-/fast-json-stringify-7.1.0.tgz",
|
|
1861
|
+
"integrity": "sha512-wAhAQ+es0aH+x5OofdCHlZZFdqwtiM6lpEosaRIwfg271WYeEQ/tPcXdu5vpzlqZpbJ4WNqaW4QR5UjfG4Dc2w==",
|
|
1846
1862
|
"funding": [
|
|
1847
1863
|
{
|
|
1848
1864
|
"type": "github",
|
|
@@ -1864,9 +1880,9 @@
|
|
|
1864
1880
|
}
|
|
1865
1881
|
},
|
|
1866
1882
|
"node_modules/fast-json-stringify/node_modules/fast-uri": {
|
|
1867
|
-
"version": "4.2.
|
|
1868
|
-
"resolved": "https://registry.npmjs.org/fast-uri/-/fast-uri-4.2.
|
|
1869
|
-
"integrity": "sha512-
|
|
1883
|
+
"version": "4.2.2",
|
|
1884
|
+
"resolved": "https://registry.npmjs.org/fast-uri/-/fast-uri-4.2.2.tgz",
|
|
1885
|
+
"integrity": "sha512-EwVpUMzLVNOmcWW0zi5G3JJwkopB6XXjnVvNBGfqrMMsVew2hkQWl5e/pe/CfYUeS6jt4cIO2MnamEW7v/7wPw==",
|
|
1870
1886
|
"funding": [
|
|
1871
1887
|
{
|
|
1872
1888
|
"type": "github",
|
|
@@ -1913,9 +1929,9 @@
|
|
|
1913
1929
|
"license": "BSD-3-Clause"
|
|
1914
1930
|
},
|
|
1915
1931
|
"node_modules/fastify": {
|
|
1916
|
-
"version": "5.12.
|
|
1917
|
-
"resolved": "https://registry.npmjs.org/fastify/-/fastify-5.12.
|
|
1918
|
-
"integrity": "sha512-
|
|
1932
|
+
"version": "5.12.7",
|
|
1933
|
+
"resolved": "https://registry.npmjs.org/fastify/-/fastify-5.12.7.tgz",
|
|
1934
|
+
"integrity": "sha512-v4pEPsTRPuqlDIYiQFB+BHjVN4SdHX9u0ABk0ZDUKbbdY1vsNryUd1j4Z+jQEZajvYIVk047Kimva9/AJ79GYw==",
|
|
1919
1935
|
"funding": [
|
|
1920
1936
|
{
|
|
1921
1937
|
"type": "github",
|
|
@@ -1946,9 +1962,9 @@
|
|
|
1946
1962
|
}
|
|
1947
1963
|
},
|
|
1948
1964
|
"node_modules/fastify-plugin": {
|
|
1949
|
-
"version": "6.0.
|
|
1950
|
-
"resolved": "https://registry.npmjs.org/fastify-plugin/-/fastify-plugin-6.0.
|
|
1951
|
-
"integrity": "sha512-
|
|
1965
|
+
"version": "6.0.1",
|
|
1966
|
+
"resolved": "https://registry.npmjs.org/fastify-plugin/-/fastify-plugin-6.0.1.tgz",
|
|
1967
|
+
"integrity": "sha512-4wW4RxSmvPXLrh5mgQEiu43qU3bw44N2ss4FTkTkQIbprUhE+/s43QX0j/ttcztdWK7PEkHqVthdc5GdEGDvjA==",
|
|
1952
1968
|
"funding": [
|
|
1953
1969
|
{
|
|
1954
1970
|
"type": "github",
|
|
@@ -1992,9 +2008,9 @@
|
|
|
1992
2008
|
}
|
|
1993
2009
|
},
|
|
1994
2010
|
"node_modules/find-my-way": {
|
|
1995
|
-
"version": "9.
|
|
1996
|
-
"resolved": "https://registry.npmjs.org/find-my-way/-/find-my-way-9.
|
|
1997
|
-
"integrity": "sha512-
|
|
2011
|
+
"version": "9.10.0",
|
|
2012
|
+
"resolved": "https://registry.npmjs.org/find-my-way/-/find-my-way-9.10.0.tgz",
|
|
2013
|
+
"integrity": "sha512-eru+uCPQ2g+nLBkf84MHP/KyNNMar0BDy0j+i8Fb72GF9/YHBZ58q7FODUtfVV7XU9nfRUHXSmaM8NmZcIbZ4Q==",
|
|
1998
2014
|
"license": "MIT",
|
|
1999
2015
|
"dependencies": {
|
|
2000
2016
|
"fast-deep-equal": "^3.1.3",
|
|
@@ -2207,9 +2223,9 @@
|
|
|
2207
2223
|
"license": "ISC"
|
|
2208
2224
|
},
|
|
2209
2225
|
"node_modules/ip-address": {
|
|
2210
|
-
"version": "10.7.
|
|
2211
|
-
"resolved": "https://registry.npmjs.org/ip-address/-/ip-address-10.7.
|
|
2212
|
-
"integrity": "sha512-
|
|
2226
|
+
"version": "10.7.4",
|
|
2227
|
+
"resolved": "https://registry.npmjs.org/ip-address/-/ip-address-10.7.4.tgz",
|
|
2228
|
+
"integrity": "sha512-DWBMKyeM25D70nrIiTkgQth59/G+naKOTep6huF9j+GmeK3DMD60Zvxg5d5qQnz+38AHgou6ean2LECX+lrKDg==",
|
|
2213
2229
|
"license": "MIT",
|
|
2214
2230
|
"engines": {
|
|
2215
2231
|
"node": ">= 12"
|
|
@@ -2334,9 +2350,9 @@
|
|
|
2334
2350
|
"license": "MIT"
|
|
2335
2351
|
},
|
|
2336
2352
|
"node_modules/json-schema-ref-resolver": {
|
|
2337
|
-
"version": "3.0.
|
|
2338
|
-
"resolved": "https://registry.npmjs.org/json-schema-ref-resolver/-/json-schema-ref-resolver-3.0.
|
|
2339
|
-
"integrity": "sha512-
|
|
2353
|
+
"version": "3.0.1",
|
|
2354
|
+
"resolved": "https://registry.npmjs.org/json-schema-ref-resolver/-/json-schema-ref-resolver-3.0.1.tgz",
|
|
2355
|
+
"integrity": "sha512-w+HwgljXpVwZ3IidoUR1qPZxSOQ+NRQWuVe6a5pe8XbHsNZE4UAwVPUvzZagn7yBKbJtt6UJnRFYbNTRPZI45Q==",
|
|
2340
2356
|
"funding": [
|
|
2341
2357
|
{
|
|
2342
2358
|
"type": "github",
|
|
@@ -2401,9 +2417,9 @@
|
|
|
2401
2417
|
}
|
|
2402
2418
|
},
|
|
2403
2419
|
"node_modules/light-my-request": {
|
|
2404
|
-
"version": "6.
|
|
2405
|
-
"resolved": "https://registry.npmjs.org/light-my-request/-/light-my-request-6.
|
|
2406
|
-
"integrity": "sha512-
|
|
2420
|
+
"version": "6.8.0",
|
|
2421
|
+
"resolved": "https://registry.npmjs.org/light-my-request/-/light-my-request-6.8.0.tgz",
|
|
2422
|
+
"integrity": "sha512-5Q8PjoSEdtGIB8fikZsTem5vgRo4F2mR6vUKTDW/H1g6MtAt8e3duQbg/QxL5yzg6BZhor2KOUm3hhWMWLTZwg==",
|
|
2407
2423
|
"funding": [
|
|
2408
2424
|
{
|
|
2409
2425
|
"type": "github",
|
|
@@ -2416,40 +2432,25 @@
|
|
|
2416
2432
|
],
|
|
2417
2433
|
"license": "BSD-3-Clause",
|
|
2418
2434
|
"dependencies": {
|
|
2419
|
-
"
|
|
2420
|
-
"
|
|
2421
|
-
"
|
|
2435
|
+
"@fastify/deepmerge": "^3.1.0",
|
|
2436
|
+
"cookie": "^2.0.0",
|
|
2437
|
+
"process-warning": "^5.0.0",
|
|
2438
|
+
"set-cookie-parser": "^3.0.1"
|
|
2422
2439
|
}
|
|
2423
2440
|
},
|
|
2424
2441
|
"node_modules/light-my-request/node_modules/cookie": {
|
|
2425
|
-
"version": "
|
|
2426
|
-
"resolved": "https://registry.npmjs.org/cookie/-/cookie-
|
|
2427
|
-
"integrity": "sha512-
|
|
2442
|
+
"version": "2.0.1",
|
|
2443
|
+
"resolved": "https://registry.npmjs.org/cookie/-/cookie-2.0.1.tgz",
|
|
2444
|
+
"integrity": "sha512-yuToqVvRrj6pfDXREyQAAv8SkAEk/8GS3jQRTiUMm66TVtBYmqQeoEjL2Lmq8Rpo6271vH76InTChTitEAm65w==",
|
|
2428
2445
|
"license": "MIT",
|
|
2429
2446
|
"engines": {
|
|
2430
|
-
"node": ">=
|
|
2447
|
+
"node": ">=22"
|
|
2431
2448
|
},
|
|
2432
2449
|
"funding": {
|
|
2433
2450
|
"type": "opencollective",
|
|
2434
2451
|
"url": "https://opencollective.com/express"
|
|
2435
2452
|
}
|
|
2436
2453
|
},
|
|
2437
|
-
"node_modules/light-my-request/node_modules/process-warning": {
|
|
2438
|
-
"version": "4.0.1",
|
|
2439
|
-
"resolved": "https://registry.npmjs.org/process-warning/-/process-warning-4.0.1.tgz",
|
|
2440
|
-
"integrity": "sha512-3c2LzQ3rY9d0hc1emcsHhfT9Jwz0cChib/QN89oME2R451w5fy3f0afAhERFZAwrbDU43wk12d0ORBpDVME50Q==",
|
|
2441
|
-
"funding": [
|
|
2442
|
-
{
|
|
2443
|
-
"type": "github",
|
|
2444
|
-
"url": "https://github.com/sponsors/fastify"
|
|
2445
|
-
},
|
|
2446
|
-
{
|
|
2447
|
-
"type": "opencollective",
|
|
2448
|
-
"url": "https://opencollective.com/fastify"
|
|
2449
|
-
}
|
|
2450
|
-
],
|
|
2451
|
-
"license": "MIT"
|
|
2452
|
-
},
|
|
2453
2454
|
"node_modules/locate-path": {
|
|
2454
2455
|
"version": "5.0.0",
|
|
2455
2456
|
"resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz",
|
|
@@ -2967,9 +2968,9 @@
|
|
|
2967
2968
|
}
|
|
2968
2969
|
},
|
|
2969
2970
|
"node_modules/process-warning": {
|
|
2970
|
-
"version": "5.1.
|
|
2971
|
-
"resolved": "https://registry.npmjs.org/process-warning/-/process-warning-5.1.
|
|
2972
|
-
"integrity": "sha512-
|
|
2971
|
+
"version": "5.1.1",
|
|
2972
|
+
"resolved": "https://registry.npmjs.org/process-warning/-/process-warning-5.1.1.tgz",
|
|
2973
|
+
"integrity": "sha512-oCkNVj4OKnKEcocVBcDfiIugN1/cE6rgfT3nCtzeqZPA8+rIxMaQ0xXzIkGP8Gj2qUaP1UR7uhJ1VD8lUCpzCg==",
|
|
2973
2974
|
"funding": [
|
|
2974
2975
|
{
|
|
2975
2976
|
"type": "github",
|
|
@@ -3219,9 +3220,9 @@
|
|
|
3219
3220
|
"license": "MIT"
|
|
3220
3221
|
},
|
|
3221
3222
|
"node_modules/safe-regex2": {
|
|
3222
|
-
"version": "5.1.
|
|
3223
|
-
"resolved": "https://registry.npmjs.org/safe-regex2/-/safe-regex2-5.1.
|
|
3224
|
-
"integrity": "sha512-
|
|
3223
|
+
"version": "5.1.2",
|
|
3224
|
+
"resolved": "https://registry.npmjs.org/safe-regex2/-/safe-regex2-5.1.2.tgz",
|
|
3225
|
+
"integrity": "sha512-tAtCGFPPP02VroDVzp4daGi6bC7jWG+41D47GKf18FeH/ubvKQHT9VmhAkvtjNOmJwqtApzWeUpEhkyEYULvmw==",
|
|
3225
3226
|
"funding": [
|
|
3226
3227
|
{
|
|
3227
3228
|
"type": "github",
|
|
@@ -3265,9 +3266,9 @@
|
|
|
3265
3266
|
}
|
|
3266
3267
|
},
|
|
3267
3268
|
"node_modules/secure-json-parse": {
|
|
3268
|
-
"version": "4.1.
|
|
3269
|
-
"resolved": "https://registry.npmjs.org/secure-json-parse/-/secure-json-parse-4.1.
|
|
3270
|
-
"integrity": "sha512-
|
|
3269
|
+
"version": "4.1.1",
|
|
3270
|
+
"resolved": "https://registry.npmjs.org/secure-json-parse/-/secure-json-parse-4.1.1.tgz",
|
|
3271
|
+
"integrity": "sha512-lnd81MQEZKjhW/Gd2TQqdd4XP6QYNdDW/EP+I7nTrFHP9y2LmaGPIHk9xsnzcOiEr1c39c/e84xFgGviQKBTRw==",
|
|
3271
3272
|
"funding": [
|
|
3272
3273
|
{
|
|
3273
3274
|
"type": "github",
|
|
@@ -3344,9 +3345,9 @@
|
|
|
3344
3345
|
"license": "ISC"
|
|
3345
3346
|
},
|
|
3346
3347
|
"node_modules/set-cookie-parser": {
|
|
3347
|
-
"version": "
|
|
3348
|
-
"resolved": "https://registry.npmjs.org/set-cookie-parser/-/set-cookie-parser-
|
|
3349
|
-
"integrity": "sha512-
|
|
3348
|
+
"version": "3.1.3",
|
|
3349
|
+
"resolved": "https://registry.npmjs.org/set-cookie-parser/-/set-cookie-parser-3.1.3.tgz",
|
|
3350
|
+
"integrity": "sha512-xletSdAI5efyVJjsatBbzDkXl3M/Zmad3xfnQe7ZXuBB0yNwW7C2WFsNGjdRNfZunmNHQuX79xs/ACMTLCdcew==",
|
|
3350
3351
|
"license": "MIT"
|
|
3351
3352
|
},
|
|
3352
3353
|
"node_modules/setprototypeof": {
|
package/assets/release.json
CHANGED
|
@@ -1,61 +1,61 @@
|
|
|
1
1
|
{
|
|
2
2
|
"schema": 1,
|
|
3
3
|
"channel": "nightly",
|
|
4
|
-
"installerVersion": "1.2.1-nightly.
|
|
4
|
+
"installerVersion": "1.2.1-nightly.45",
|
|
5
5
|
"packages": {
|
|
6
6
|
"@ours.network/sdk": {
|
|
7
|
-
"version": "3.8.1-nightly.
|
|
8
|
-
"integrity": "sha512-
|
|
7
|
+
"version": "3.8.1-nightly.18",
|
|
8
|
+
"integrity": "sha512-48ZuJEW+SxIf3rgwAHx3/kPc18kN/KOgxj9tAvlFXDossRDhthte9VTV3xu2/sM7nzDoPXeQFm+/WImJ7UqZqw=="
|
|
9
9
|
},
|
|
10
10
|
"@ours.network/cli": {
|
|
11
|
-
"version": "2.8.1-nightly.
|
|
12
|
-
"integrity": "sha512-
|
|
11
|
+
"version": "2.8.1-nightly.16",
|
|
12
|
+
"integrity": "sha512-yZ6+xIaPiPCNxy/JMgQ7Kjh6ulKRY4pv6kZtnho328nPxG6/l/S09GPJDPG3rUd3IbkIsCGaLEffrCKKdWLhzQ=="
|
|
13
13
|
},
|
|
14
14
|
"@ours.network/tg-connector": {
|
|
15
|
-
"version": "1.0.1-nightly.
|
|
16
|
-
"integrity": "sha512-
|
|
15
|
+
"version": "1.0.1-nightly.12",
|
|
16
|
+
"integrity": "sha512-wEao1Xo5mCs//cuaD3YcdnTRMfBcPQCCqsPH1IiP7mYmVp/OFjEzp7U3YawNl8NUXZEdJZ0kIEzkHKUdhygEZw=="
|
|
17
17
|
},
|
|
18
18
|
"@ours.network/cowork": {
|
|
19
|
-
"version": "1.3.
|
|
20
|
-
"integrity": "sha512-
|
|
19
|
+
"version": "1.3.4-nightly.20261013.e8a690f",
|
|
20
|
+
"integrity": "sha512-t0eQoyMcfp5ar/eXkvGwTHHkkwvuD119WMbcFffsRhknJkZtnQOeLcKgfIiajVwk1HZIEONNeA4Eibml5M0DGw=="
|
|
21
21
|
},
|
|
22
22
|
"@ours.network/messenger-server": {
|
|
23
|
-
"version": "1.0.31-nightly.
|
|
24
|
-
"integrity": "sha512-
|
|
23
|
+
"version": "1.0.31-nightly.18",
|
|
24
|
+
"integrity": "sha512-nHeQBmBPV7w5VhOkHD9960HrN70sPmLzuldQVJd6uuEhKL7htE+jb+mOZAYuZwEN3qENbi/i0J39szHvUED9iA=="
|
|
25
25
|
},
|
|
26
26
|
"@ours.network/notifications": {
|
|
27
|
-
"version": "0.3.1-nightly.
|
|
28
|
-
"integrity": "sha512-
|
|
27
|
+
"version": "0.3.1-nightly.3",
|
|
28
|
+
"integrity": "sha512-mt69E2LLkfwBMOJm7IP49wLIO9KtugBqh6nQpfrfbRuTlenjyrmZqcAuhW1CyI2R1H518B0Evxagnx9/V9fIig=="
|
|
29
29
|
},
|
|
30
30
|
"@ours.network/fleet": {
|
|
31
|
-
"version": "1.2.0-nightly.
|
|
32
|
-
"integrity": "sha512-
|
|
31
|
+
"version": "1.2.0-nightly.61",
|
|
32
|
+
"integrity": "sha512-ZdgbZoleOUoGBr8Si9Yp/TUE46qd6eiscProaXFupusPAX4VDWODpmyupvIjckJcp860d1qNRngY2Z2cWYHcpw=="
|
|
33
33
|
},
|
|
34
34
|
"@ours.network/mcp": {
|
|
35
|
-
"version": "1.2.0-nightly.
|
|
36
|
-
"integrity": "sha512
|
|
35
|
+
"version": "1.2.0-nightly.14",
|
|
36
|
+
"integrity": "sha512-Ja7lDKLK14tlduWBdD8vF7BS7+jd01U97UH6tyzbB8uMnBOBEQmmVlfEliat2ghgNMhuSCTpn4THp5eT58UTDQ=="
|
|
37
37
|
},
|
|
38
38
|
"@ours.network/codex": {
|
|
39
|
-
"version": "1.2.0-nightly.
|
|
40
|
-
"integrity": "sha512-
|
|
39
|
+
"version": "1.2.0-nightly.14",
|
|
40
|
+
"integrity": "sha512-NAEMprDCpYVd1ppRsdkrraMtFfCiJvGcJZHQUldJRyCL/DFve2J9YDJw/o3eY9zPg4b8er/5NI0mzQ420KYDmA=="
|
|
41
41
|
},
|
|
42
42
|
"@ours.network/claude-code": {
|
|
43
|
-
"version": "1.2.0-nightly.
|
|
44
|
-
"integrity": "sha512-
|
|
43
|
+
"version": "1.2.0-nightly.14",
|
|
44
|
+
"integrity": "sha512-yOUBUU4DE2pbyVLjvA58tZvZy3vkzTop1sGM/O/huO4rnJg7TZpxazDe7f4bAWia0axU1oT/gjChfiYvh6+/cA=="
|
|
45
45
|
},
|
|
46
46
|
"@ours.network/daemon": {
|
|
47
|
-
"version": "3.8.1-nightly.
|
|
48
|
-
"integrity": "sha512-
|
|
47
|
+
"version": "3.8.1-nightly.10",
|
|
48
|
+
"integrity": "sha512-y+t9xiuDRs9d/TdCYYxqqvYB+KjkryiaztoFDW7GY9qJFjgalylxrNZtlk2ASJRVSF4+2Hp0vqhM0Wt0Wsub0g=="
|
|
49
49
|
}
|
|
50
50
|
},
|
|
51
51
|
"hostCli": {
|
|
52
52
|
"@ours.network/sdk": {
|
|
53
|
-
"version": "3.8.1-nightly.
|
|
54
|
-
"integrity": "sha512-
|
|
53
|
+
"version": "3.8.1-nightly.18",
|
|
54
|
+
"integrity": "sha512-48ZuJEW+SxIf3rgwAHx3/kPc18kN/KOgxj9tAvlFXDossRDhthte9VTV3xu2/sM7nzDoPXeQFm+/WImJ7UqZqw=="
|
|
55
55
|
},
|
|
56
56
|
"@ours.network/cli": {
|
|
57
|
-
"version": "2.8.1-nightly.
|
|
58
|
-
"integrity": "sha512-
|
|
57
|
+
"version": "2.8.1-nightly.16",
|
|
58
|
+
"integrity": "sha512-yZ6+xIaPiPCNxy/JMgQ7Kjh6ulKRY4pv6kZtnho328nPxG6/l/S09GPJDPG3rUd3IbkIsCGaLEffrCKKdWLhzQ=="
|
|
59
59
|
}
|
|
60
60
|
}
|
|
61
61
|
}
|
package/assets/sources.json
CHANGED
|
@@ -2,108 +2,108 @@
|
|
|
2
2
|
"release": {
|
|
3
3
|
"schema": 1,
|
|
4
4
|
"channel": "nightly",
|
|
5
|
-
"installerVersion": "1.2.1-nightly.
|
|
5
|
+
"installerVersion": "1.2.1-nightly.45",
|
|
6
6
|
"packages": {
|
|
7
7
|
"@ours.network/sdk": {
|
|
8
|
-
"version": "3.8.1-nightly.
|
|
9
|
-
"integrity": "sha512-
|
|
8
|
+
"version": "3.8.1-nightly.18",
|
|
9
|
+
"integrity": "sha512-48ZuJEW+SxIf3rgwAHx3/kPc18kN/KOgxj9tAvlFXDossRDhthte9VTV3xu2/sM7nzDoPXeQFm+/WImJ7UqZqw=="
|
|
10
10
|
},
|
|
11
11
|
"@ours.network/cli": {
|
|
12
|
-
"version": "2.8.1-nightly.
|
|
13
|
-
"integrity": "sha512-
|
|
12
|
+
"version": "2.8.1-nightly.16",
|
|
13
|
+
"integrity": "sha512-yZ6+xIaPiPCNxy/JMgQ7Kjh6ulKRY4pv6kZtnho328nPxG6/l/S09GPJDPG3rUd3IbkIsCGaLEffrCKKdWLhzQ=="
|
|
14
14
|
},
|
|
15
15
|
"@ours.network/tg-connector": {
|
|
16
|
-
"version": "1.0.1-nightly.
|
|
17
|
-
"integrity": "sha512-
|
|
16
|
+
"version": "1.0.1-nightly.12",
|
|
17
|
+
"integrity": "sha512-wEao1Xo5mCs//cuaD3YcdnTRMfBcPQCCqsPH1IiP7mYmVp/OFjEzp7U3YawNl8NUXZEdJZ0kIEzkHKUdhygEZw=="
|
|
18
18
|
},
|
|
19
19
|
"@ours.network/cowork": {
|
|
20
|
-
"version": "1.3.
|
|
21
|
-
"integrity": "sha512-
|
|
20
|
+
"version": "1.3.4-nightly.20261013.e8a690f",
|
|
21
|
+
"integrity": "sha512-t0eQoyMcfp5ar/eXkvGwTHHkkwvuD119WMbcFffsRhknJkZtnQOeLcKgfIiajVwk1HZIEONNeA4Eibml5M0DGw=="
|
|
22
22
|
},
|
|
23
23
|
"@ours.network/messenger-server": {
|
|
24
|
-
"version": "1.0.31-nightly.
|
|
25
|
-
"integrity": "sha512-
|
|
24
|
+
"version": "1.0.31-nightly.18",
|
|
25
|
+
"integrity": "sha512-nHeQBmBPV7w5VhOkHD9960HrN70sPmLzuldQVJd6uuEhKL7htE+jb+mOZAYuZwEN3qENbi/i0J39szHvUED9iA=="
|
|
26
26
|
},
|
|
27
27
|
"@ours.network/notifications": {
|
|
28
|
-
"version": "0.3.1-nightly.
|
|
29
|
-
"integrity": "sha512-
|
|
28
|
+
"version": "0.3.1-nightly.3",
|
|
29
|
+
"integrity": "sha512-mt69E2LLkfwBMOJm7IP49wLIO9KtugBqh6nQpfrfbRuTlenjyrmZqcAuhW1CyI2R1H518B0Evxagnx9/V9fIig=="
|
|
30
30
|
},
|
|
31
31
|
"@ours.network/fleet": {
|
|
32
|
-
"version": "1.2.0-nightly.
|
|
33
|
-
"integrity": "sha512-
|
|
32
|
+
"version": "1.2.0-nightly.61",
|
|
33
|
+
"integrity": "sha512-ZdgbZoleOUoGBr8Si9Yp/TUE46qd6eiscProaXFupusPAX4VDWODpmyupvIjckJcp860d1qNRngY2Z2cWYHcpw=="
|
|
34
34
|
},
|
|
35
35
|
"@ours.network/mcp": {
|
|
36
|
-
"version": "1.2.0-nightly.
|
|
37
|
-
"integrity": "sha512
|
|
36
|
+
"version": "1.2.0-nightly.14",
|
|
37
|
+
"integrity": "sha512-Ja7lDKLK14tlduWBdD8vF7BS7+jd01U97UH6tyzbB8uMnBOBEQmmVlfEliat2ghgNMhuSCTpn4THp5eT58UTDQ=="
|
|
38
38
|
},
|
|
39
39
|
"@ours.network/codex": {
|
|
40
|
-
"version": "1.2.0-nightly.
|
|
41
|
-
"integrity": "sha512-
|
|
40
|
+
"version": "1.2.0-nightly.14",
|
|
41
|
+
"integrity": "sha512-NAEMprDCpYVd1ppRsdkrraMtFfCiJvGcJZHQUldJRyCL/DFve2J9YDJw/o3eY9zPg4b8er/5NI0mzQ420KYDmA=="
|
|
42
42
|
},
|
|
43
43
|
"@ours.network/claude-code": {
|
|
44
|
-
"version": "1.2.0-nightly.
|
|
45
|
-
"integrity": "sha512-
|
|
44
|
+
"version": "1.2.0-nightly.14",
|
|
45
|
+
"integrity": "sha512-yOUBUU4DE2pbyVLjvA58tZvZy3vkzTop1sGM/O/huO4rnJg7TZpxazDe7f4bAWia0axU1oT/gjChfiYvh6+/cA=="
|
|
46
46
|
},
|
|
47
47
|
"@ours.network/daemon": {
|
|
48
|
-
"version": "3.8.1-nightly.
|
|
49
|
-
"integrity": "sha512-
|
|
48
|
+
"version": "3.8.1-nightly.10",
|
|
49
|
+
"integrity": "sha512-y+t9xiuDRs9d/TdCYYxqqvYB+KjkryiaztoFDW7GY9qJFjgalylxrNZtlk2ASJRVSF4+2Hp0vqhM0Wt0Wsub0g=="
|
|
50
50
|
}
|
|
51
51
|
},
|
|
52
52
|
"hostCli": {
|
|
53
53
|
"@ours.network/sdk": {
|
|
54
|
-
"version": "3.8.1-nightly.
|
|
55
|
-
"integrity": "sha512-
|
|
54
|
+
"version": "3.8.1-nightly.18",
|
|
55
|
+
"integrity": "sha512-48ZuJEW+SxIf3rgwAHx3/kPc18kN/KOgxj9tAvlFXDossRDhthte9VTV3xu2/sM7nzDoPXeQFm+/WImJ7UqZqw=="
|
|
56
56
|
},
|
|
57
57
|
"@ours.network/cli": {
|
|
58
|
-
"version": "2.8.1-nightly.
|
|
59
|
-
"integrity": "sha512-
|
|
58
|
+
"version": "2.8.1-nightly.16",
|
|
59
|
+
"integrity": "sha512-yZ6+xIaPiPCNxy/JMgQ7Kjh6ulKRY4pv6kZtnho328nPxG6/l/S09GPJDPG3rUd3IbkIsCGaLEffrCKKdWLhzQ=="
|
|
60
60
|
}
|
|
61
61
|
}
|
|
62
62
|
},
|
|
63
63
|
"packages": {
|
|
64
64
|
"@ours.network/sdk": {
|
|
65
65
|
"type": "npm",
|
|
66
|
-
"version": "3.8.1-nightly.
|
|
66
|
+
"version": "3.8.1-nightly.18"
|
|
67
67
|
},
|
|
68
68
|
"@ours.network/cli": {
|
|
69
69
|
"type": "npm",
|
|
70
|
-
"version": "2.8.1-nightly.
|
|
70
|
+
"version": "2.8.1-nightly.16"
|
|
71
71
|
},
|
|
72
72
|
"@ours.network/tg-connector": {
|
|
73
73
|
"type": "npm",
|
|
74
|
-
"version": "1.0.1-nightly.
|
|
74
|
+
"version": "1.0.1-nightly.12"
|
|
75
75
|
},
|
|
76
76
|
"@ours.network/cowork": {
|
|
77
77
|
"type": "npm",
|
|
78
|
-
"version": "1.3.
|
|
78
|
+
"version": "1.3.4-nightly.20261013.e8a690f"
|
|
79
79
|
},
|
|
80
80
|
"@ours.network/messenger-server": {
|
|
81
81
|
"type": "npm",
|
|
82
|
-
"version": "1.0.31-nightly.
|
|
82
|
+
"version": "1.0.31-nightly.18"
|
|
83
83
|
},
|
|
84
84
|
"@ours.network/notifications": {
|
|
85
85
|
"type": "npm",
|
|
86
|
-
"version": "0.3.1-nightly.
|
|
86
|
+
"version": "0.3.1-nightly.3"
|
|
87
87
|
},
|
|
88
88
|
"@ours.network/fleet": {
|
|
89
89
|
"type": "npm",
|
|
90
|
-
"version": "1.2.0-nightly.
|
|
90
|
+
"version": "1.2.0-nightly.61"
|
|
91
91
|
},
|
|
92
92
|
"@ours.network/mcp": {
|
|
93
93
|
"type": "npm",
|
|
94
|
-
"version": "1.2.0-nightly.
|
|
94
|
+
"version": "1.2.0-nightly.14"
|
|
95
95
|
},
|
|
96
96
|
"@ours.network/codex": {
|
|
97
97
|
"type": "npm",
|
|
98
|
-
"version": "1.2.0-nightly.
|
|
98
|
+
"version": "1.2.0-nightly.14"
|
|
99
99
|
},
|
|
100
100
|
"@ours.network/claude-code": {
|
|
101
101
|
"type": "npm",
|
|
102
|
-
"version": "1.2.0-nightly.
|
|
102
|
+
"version": "1.2.0-nightly.14"
|
|
103
103
|
},
|
|
104
104
|
"@ours.network/daemon": {
|
|
105
105
|
"type": "npm",
|
|
106
|
-
"version": "3.8.1-nightly.
|
|
106
|
+
"version": "3.8.1-nightly.10"
|
|
107
107
|
}
|
|
108
108
|
}
|
|
109
109
|
}
|
package/lib/boot-readiness.mjs
CHANGED
|
@@ -1,3 +1,26 @@
|
|
|
1
|
+
import { warn } from './ui.mjs';
|
|
2
|
+
|
|
3
|
+
const NO_AUTOSTART = 'ours components that depend on Docker will not start automatically after a reboot until Docker is started';
|
|
4
|
+
const OPTIONAL = 'The installer does not change this for you.';
|
|
5
|
+
|
|
6
|
+
/** Persistent unit-file state only: `is-active`/a reachable Engine says nothing about the next boot. */
|
|
7
|
+
async function unitFileState(effects, scope) {
|
|
8
|
+
// `is-enabled` reads unit files offline, so it answers even where systemd is not the init
|
|
9
|
+
// system and its answer decides nothing. /run/systemd/system is sd_booted(3)'s own test.
|
|
10
|
+
if (!effects.exists('/run/systemd/system')) return 'unavailable';
|
|
11
|
+
try {
|
|
12
|
+
if (scope.length) await effects.run('systemctl', [...scope, 'show-environment']); // a user manager must be running
|
|
13
|
+
// 1 = disabled/masked, 4 = no such unit (older systemd reports that as 1 with empty output).
|
|
14
|
+
const state = (await effects.run('systemctl', [...scope, 'is-enabled', 'docker.service'], { allowCodes: [1, 4] })).stdout.trim().split('\n')[0];
|
|
15
|
+
if (state === 'enabled') return 'enabled';
|
|
16
|
+
// enabled-runtime lives in /run and is gone after the reboot it is supposed to cover.
|
|
17
|
+
if (state === 'disabled' || state === 'enabled-runtime') return 'disabled';
|
|
18
|
+
if (state === 'masked' || state === 'masked-runtime') return 'masked';
|
|
19
|
+
if (state === '' || state === 'not-found') return 'unavailable';
|
|
20
|
+
return 'unknown';
|
|
21
|
+
} catch { return 'unavailable'; } // no systemctl, or the host/session is not running systemd
|
|
22
|
+
}
|
|
23
|
+
|
|
1
24
|
/** Diagnose availability separately from boot enablement. Never alter host services. */
|
|
2
25
|
export async function reportBootReadiness(effects, record) {
|
|
3
26
|
const platform = effects.platform.platform;
|
|
@@ -16,28 +39,58 @@ export async function reportBootReadiness(effects, record) {
|
|
|
16
39
|
effects.out('Container recovery requires Docker Desktop to start at sign-in. Enable its startup setting; this installer does not arrange pre-login host boot on this platform.');
|
|
17
40
|
return;
|
|
18
41
|
}
|
|
42
|
+
let endpoint, rootless;
|
|
19
43
|
try {
|
|
20
44
|
const context = JSON.parse((await effects.run('docker', ['context', 'inspect'])).stdout);
|
|
21
|
-
|
|
22
|
-
|
|
45
|
+
// The CLI runs with this same environment and reports the endpoint it resolved from
|
|
46
|
+
// DOCKER_HOST/DOCKER_CONTEXT; their precedence differs between its documentation and releases.
|
|
47
|
+
endpoint = context[0]?.Endpoints?.docker?.Host;
|
|
48
|
+
if (!endpoint?.startsWith('unix://') || endpoint.includes('/.docker/desktop/')) {
|
|
23
49
|
effects.out('Container recovery requires the selected remote/Desktop Docker Engine to start independently; local systemd boot cannot be verified for this context.');
|
|
24
50
|
return;
|
|
25
51
|
}
|
|
26
52
|
const info = JSON.parse((await effects.run('docker', ['info', '--format', '{{json .SecurityOptions}}'])).stdout);
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
53
|
+
rootless = info.some(option => option.startsWith('name=rootless'));
|
|
54
|
+
} catch {
|
|
55
|
+
effects.out(warn(`Docker's start-at-boot setting could not be checked because the selected Docker Engine did not answer. If Docker is not set to start at boot, ${NO_AUTOSTART}.`));
|
|
56
|
+
return;
|
|
57
|
+
}
|
|
58
|
+
const sockets = rootless ? [`unix:///run/user/${process.getuid()}/docker.sock`] : ['unix:///var/run/docker.sock', 'unix:///run/docker.sock'];
|
|
59
|
+
if (!sockets.includes(endpoint)) {
|
|
60
|
+
effects.out('The selected custom Docker socket is reachable, but its boot service binding is unverified; enable and verify the service owning that Engine.');
|
|
61
|
+
return;
|
|
62
|
+
}
|
|
63
|
+
const scope = rootless ? ['--user'] : [];
|
|
64
|
+
const enable = `${rootless ? '' : 'sudo '}systemctl ${rootless ? '--user ' : ''}enable docker.service`;
|
|
65
|
+
const state = await unitFileState(effects, scope);
|
|
66
|
+
if (state === 'unavailable') {
|
|
67
|
+
// WSL with Docker Desktop integration, snap, OpenRC/runit and similar: a systemctl command would be wrong here.
|
|
68
|
+
effects.out(warn(`Docker is running now, but no running systemd${rootless ? ' user' : ''} manager with a docker.service was found, so its start-at-boot setting cannot be checked. If Docker is not set to start at boot, ${NO_AUTOSTART}. To start them automatically, enable start-at-boot in whatever manages this Docker Engine (Docker Desktop, snap, or your init system). ${OPTIONAL}`));
|
|
69
|
+
return;
|
|
70
|
+
}
|
|
71
|
+
if (state === 'unknown') {
|
|
72
|
+
effects.out(warn(`Docker is running now, but its systemd${rootless ? ' user' : ''} docker.service is neither plainly enabled nor disabled, so start at boot is not verified. If Docker does not start at boot, ${NO_AUTOSTART}. Check it with: systemctl ${rootless ? '--user ' : ''}status docker.service`));
|
|
73
|
+
return;
|
|
74
|
+
}
|
|
75
|
+
if (state === 'masked') {
|
|
76
|
+
effects.out(warn(`Docker is running now, but its systemd${rootless ? ' user' : ''} docker.service is masked, so it cannot start at boot: ${NO_AUTOSTART}. An administrator masked it deliberately; it must be unmasked before it can be enabled. ${OPTIONAL}`));
|
|
77
|
+
return;
|
|
78
|
+
}
|
|
79
|
+
if (state === 'disabled') {
|
|
80
|
+
effects.out(warn(`Docker is running now, but it is not enabled to start at boot: ${NO_AUTOSTART}. If you want them to start automatically, run: ${enable}${rootless ? ` (and, for startup before you log in, sudo loginctl enable-linger ${effects.username()})` : ''}. ${OPTIONAL}`));
|
|
81
|
+
return;
|
|
82
|
+
}
|
|
83
|
+
if (rootless) {
|
|
84
|
+
let linger = '';
|
|
85
|
+
try { linger = (await effects.run('loginctl', ['show-user', String(process.getuid()), '--property=Linger', '--value'])).stdout.trim(); } catch {}
|
|
86
|
+
if (linger === 'no') {
|
|
87
|
+
effects.out(warn(`Rootless Docker's user service is enabled, but user linger is off, so Docker starts only when you log in: ours components that depend on Docker will not start automatically after a reboot until then. If you want them to start at boot, run: sudo loginctl enable-linger ${effects.username()}. ${OPTIONAL}`));
|
|
31
88
|
return;
|
|
32
89
|
}
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
const linger = await effects.run('loginctl', ['show-user', String(process.getuid()), '--property=Linger', '--value']);
|
|
37
|
-
if (linger.stdout.trim() !== 'yes') throw new Error('rootless user linger is disabled');
|
|
90
|
+
if (linger !== 'yes') {
|
|
91
|
+
effects.out(warn(`Rootless Docker's user service is enabled, but user linger could not be checked. If linger is off, Docker starts only when you log in and ours components that depend on Docker will not start automatically after a reboot until then. Check it with: loginctl show-user ${effects.username()} --property=Linger`));
|
|
92
|
+
return;
|
|
38
93
|
}
|
|
39
|
-
effects.out(`Docker boot service is enabled${rootless ? ' with user linger' : ''}; managed containers recover when that Engine starts.`);
|
|
40
|
-
} catch {
|
|
41
|
-
effects.out('Docker is reachable, but automatic host boot is not verified. Ask the operator to enable the selected Docker Engine boot service (and user linger for rootless Docker); container restart policy cannot start an unavailable Engine.');
|
|
42
94
|
}
|
|
95
|
+
effects.out(`Docker boot service is enabled${rootless ? ' with user linger' : ''}; managed containers recover when that Engine starts.`);
|
|
43
96
|
}
|
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.45",
|
|
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",
|