@catalyst-cloud/cli 0.16.3 → 0.16.6
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 +8 -0
- package/dist/onboard-next.js +1 -0
- package/dist/onboard-runner-custody.js +680 -0
- package/dist/onboard-runner.js +181 -45
- package/package.json +4 -4
- package/skills/catalyst-github/SKILL.md +1 -1
- package/skills/catalyst-linear/SKILL.md +1 -1
- package/skills/catalyst-onboard/SKILL.md +2 -1
- package/skills/catalyst-onboard/references/preserving-runner-replacement.md +26 -0
- package/skills/run-this-project/SKILL.md +1 -1
- package/skills/unstick/SKILL.md +1 -1
- package/skills/what-needs-me/SKILL.md +1 -1
- package/skills/what-this-repo-needs/SKILL.md +1 -1
- package/skills/whats-happening/SKILL.md +1 -1
- package/vendor/self-host/compose.darwin-thoughts.yaml +18 -0
- package/vendor/self-host/compose.yaml +21 -3
- package/vendor/self-host/darwin-thoughts-custody/manifest.json +18 -0
- package/vendor/self-host/darwin-thoughts-custody/producer.mjs +1202 -0
- package/vendor/self-host/darwin-thoughts-custody/service.plist.in +21 -0
- package/vendor/self-host/darwin-thoughts-custody/verifier.d.mts +157 -0
- package/vendor/self-host/darwin-thoughts-custody/verifier.mjs +755 -0
- package/vendor/self-host/darwin-thoughts-custody/watchdog-deadline.mjs +39 -0
- package/vendor/self-host/darwin-thoughts-custody/watchdog.mjs +85 -0
- package/vendor/self-host/provenance.json +10 -2
|
@@ -60,6 +60,8 @@ services:
|
|
|
60
60
|
# The host journal and outbox. Never authoritative: deleting it costs undelivered evidence and
|
|
61
61
|
# never blocks a start (docs/design/disposable-host-contracts.md, "The host journal").
|
|
62
62
|
- supervisor-state:/var/lib/catalyst/supervisor
|
|
63
|
+
# Atomic host-native samples; the VM cannot measure the Mac backing Docker.raw.
|
|
64
|
+
- ${CATALYST_HOST_DISK_SAMPLE_DIR:-./host-disk}:/var/lib/catalyst/host-disk:ro
|
|
63
65
|
# The per-host credential and the tenant's runner org key (CATALYST_ORG_KEY_FILE), on their own
|
|
64
66
|
# volume so the delete-the-state-directory test (removing supervisor-state) never costs an
|
|
65
67
|
# enrollment. The supervisor replaces the credential by rename, so the directory stays writable.
|
|
@@ -68,9 +70,9 @@ services:
|
|
|
68
70
|
# engine resolves a bind source on the HOST. A path that exists only inside this container
|
|
69
71
|
# mounts an empty directory into the phase.
|
|
70
72
|
- ${CATALYST_SLOTS_DIR:-/srv/catalyst/slots}:${CATALYST_SLOTS_DIR:-/srv/catalyst/slots}
|
|
71
|
-
#
|
|
72
|
-
#
|
|
73
|
-
# runs under thoughts.lock. The supervisor keeps one subdirectory per tenant under each root,
|
|
73
|
+
# Shared tenant thoughts and pool locks. Native Linux sessions use a read-write checkout.
|
|
74
|
+
# Darwin custody sessions expose a read-only model alias and a protected root publisher alias.
|
|
75
|
+
# Every thoughts sync runs under thoughts.lock. The supervisor keeps one subdirectory per tenant under each root,
|
|
74
76
|
# so two projects on one engine never share a checkout or a lock. Same path on both sides for
|
|
75
77
|
# the same reason as the slots: the supervisor binds these into session containers, and the
|
|
76
78
|
# engine resolves bind sources on the host. Never mounted into a setup container.
|
|
@@ -94,13 +96,29 @@ services:
|
|
|
94
96
|
CATALYST_HOST_CREDENTIAL_FILE: ${CATALYST_HOST_CREDENTIAL_FILE:-/var/lib/catalyst/host-credential/credential}
|
|
95
97
|
CATALYST_DISK_BUDGET_GIB: ${CATALYST_DISK_BUDGET_GIB:-60}
|
|
96
98
|
CATALYST_WORKSPACE_STORAGE: ${CATALYST_WORKSPACE_STORAGE:-}
|
|
99
|
+
CATALYST_WORKSPACE_RETENTION_HOURS: ${CATALYST_WORKSPACE_RETENTION_HOURS:-2}
|
|
100
|
+
CATALYST_HOST_FREE_FLOOR_GIB: ${CATALYST_HOST_FREE_FLOOR_GIB:-25}
|
|
101
|
+
CATALYST_HOST_DISK_SAMPLE_FILE: ${CATALYST_HOST_DISK_SAMPLE_FILE:-}
|
|
97
102
|
CATALYST_THOUGHTS_DIR: ${CATALYST_THOUGHTS_DIR:-/srv/catalyst/thoughts}
|
|
103
|
+
CATALYST_THOUGHTS_CUSTODY_AUTHORITY: ${CATALYST_THOUGHTS_CUSTODY_AUTHORITY:-}
|
|
98
104
|
CATALYST_POOL_LOCK_DIR: ${CATALYST_POOL_LOCK_DIR:-/srv/catalyst/locks}
|
|
99
105
|
CATALYST_ORG_KEY_FILE: ${CATALYST_ORG_KEY_FILE:-/var/lib/catalyst/host-credential/org-key}
|
|
106
|
+
# `attempt`: sessions use their grant's own credential and the host holds no org key (CTC-4921).
|
|
107
|
+
# Unset keeps an existing install on the org key until it opts in.
|
|
108
|
+
CATALYST_SESSION_CREDENTIAL: ${CATALYST_SESSION_CREDENTIAL:-org-key}
|
|
100
109
|
# Every setup and session container joins this network. It must exist before the supervisor
|
|
101
110
|
# takes work: missing or not isolated is not-ready, never the default bridge.
|
|
102
111
|
CATALYST_SESSION_NETWORK: ${CATALYST_SESSION_NETWORK:-catalyst-session-v1}
|
|
103
112
|
CATALYST_SESSION_EGRESS_ATTESTATION: ${CATALYST_SESSION_EGRESS_ATTESTATION:-/var/lib/catalyst/session-egress/attestation.json}
|
|
113
|
+
# CTC-4265: the deadline for each primary workspace clone, in integer milliseconds. Empty is
|
|
114
|
+
# 180000; outside 1000-600000 the supervisor refuses to start. It forwards the value into each
|
|
115
|
+
# session container.
|
|
116
|
+
CATALYST_GIT_CLONE_TIMEOUT_MS: ${CATALYST_GIT_CLONE_TIMEOUT_MS:-}
|
|
117
|
+
# CTC-4265: the root of operator-prepared bare Git references. Empty means no reference and a
|
|
118
|
+
# direct clone every time. This file mounts nothing for it: setting it also needs the opt-in
|
|
119
|
+
# override, `docker compose -f compose.yaml -f compose.git-reference.yaml up -d`, which mounts
|
|
120
|
+
# the root read-only at the same path. Without the override every launch logs a cache miss.
|
|
121
|
+
CATALYST_GIT_REFERENCE_DIR: ${CATALYST_GIT_REFERENCE_DIR:-}
|
|
104
122
|
# SIGTERM re-adopts on the next start instead of stopping phases, so the supervisor needs only
|
|
105
123
|
# long enough to flush its journal.
|
|
106
124
|
stop_grace_period: 30s
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 1,
|
|
3
|
+
"generator": "bun",
|
|
4
|
+
"inputs": {
|
|
5
|
+
"packages/host-isolation/src/darwin-thoughts-producer.ts": "038fb63d8121fb1665ec31869f45604aedd96dd7d9b15a415d578fea9a0ad507",
|
|
6
|
+
"packages/protocol/src/darwin-thoughts-custody.ts": "3515efc22b0a3cfb512ff1acaf649c6eafb978b894c724fabb01c325aea51075",
|
|
7
|
+
"packages/host-isolation/src/darwin-thoughts-custody.ts": "5d65d59d71205e2ce5551e99b4ad33364d53cbdd29993cf2f164fc214b83baf8",
|
|
8
|
+
"deploy/self-host/darwin-thoughts-custody/producer-entry.ts": "27c8ff591c8dc4d1a4c65dd154157df5191ead1fb0af673bfd7099d5226d37bc",
|
|
9
|
+
"deploy/self-host/darwin-thoughts-custody/verifier-entry.ts": "80bc1e72943e43bc33d76ba205bd79751f58ca34d622e35f7e50e3b661f65464",
|
|
10
|
+
"deploy/self-host/darwin-thoughts-custody/generate.ts": "bfe1bef175fa8243be0558e1ddee6ddbcfbd622922e3a5df850e8621f18e7b26",
|
|
11
|
+
"deploy/self-host/darwin-thoughts-custody/watchdog.mjs": "6b5c7204aacd296c85a216d4f1b3adbe2084024fe37200ec1d24dfc2dec2e12d",
|
|
12
|
+
"deploy/self-host/darwin-thoughts-custody/watchdog-deadline.mjs": "a642e6d8968f56f635056d3b258e5c4ad186c638a273c26b4528e85b7d2a6346",
|
|
13
|
+
"deploy/self-host/darwin-thoughts-custody/service.plist.in": "66e9a2c175d2500b1f7130e7c04a5ed07f22bc7425661777f514fa3f2a816496"
|
|
14
|
+
},
|
|
15
|
+
"artifactSha256": "0e0f1bbdac23813e8ee57b6eb4ae3dfd24c3f1c51ebe0c3d119a1448734ea05e",
|
|
16
|
+
"verifierSha256": "2d8c9b5c35e38a25a45098b7606a216109557fb0466113098f503e9d6c8f6b4c",
|
|
17
|
+
"verifierDeclarationsSha256": "624428ced2eb18b045b761b49e20b7f52c0fc6c3132689571103ece7b4a1083f"
|
|
18
|
+
}
|