@openparachute/hub 0.7.5 → 0.7.6-rc.3

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.
Files changed (37) hide show
  1. package/package.json +1 -1
  2. package/src/__tests__/admin-module-token.test.ts +40 -3
  3. package/src/__tests__/api-modules-ops.test.ts +8 -3
  4. package/src/__tests__/api-modules.test.ts +26 -18
  5. package/src/__tests__/connections-store.test.ts +84 -0
  6. package/src/__tests__/doctor.test.ts +131 -0
  7. package/src/__tests__/git-notify.test.ts +29 -1
  8. package/src/__tests__/grants-store.test.ts +33 -1
  9. package/src/__tests__/hub-instance.test.ts +297 -0
  10. package/src/__tests__/hub-server.test.ts +169 -0
  11. package/src/__tests__/install.test.ts +28 -0
  12. package/src/__tests__/serve-boot.test.ts +60 -0
  13. package/src/__tests__/service-spec-discovery.test.ts +32 -9
  14. package/src/__tests__/setup.test.ts +64 -16
  15. package/src/__tests__/stale-module-units.test.ts +1 -1
  16. package/src/__tests__/status-supervisor.test.ts +112 -0
  17. package/src/admin-connections.ts +5 -1
  18. package/src/admin-module-token.ts +2 -2
  19. package/src/api-modules-ops.ts +3 -3
  20. package/src/api-modules.ts +13 -13
  21. package/src/commands/doctor.ts +167 -4
  22. package/src/commands/install.ts +29 -3
  23. package/src/commands/migrate.ts +5 -0
  24. package/src/commands/serve.ts +52 -0
  25. package/src/commands/setup.ts +10 -9
  26. package/src/commands/status.ts +42 -1
  27. package/src/connections-store.ts +15 -2
  28. package/src/git-notify.ts +34 -5
  29. package/src/grants-store.ts +15 -2
  30. package/src/help.ts +3 -3
  31. package/src/hub-instance.ts +365 -0
  32. package/src/hub-server.ts +89 -1
  33. package/src/install-source.ts +1 -1
  34. package/src/service-spec.ts +36 -44
  35. package/src/services-manifest.ts +1 -1
  36. package/src/stale-module-units.ts +2 -2
  37. package/src/well-known.ts +3 -3
@@ -124,7 +124,7 @@ const UI_AUDIENCE_VALUES: readonly UiAudience[] = ["public", "hub-users", "opera
124
124
  * one shot without touching its siblings.
125
125
  *
126
126
  * Backwards-compat: this is purely additive. Modules that don't use `uis`
127
- * (vault, scribe, notes, runner today) continue to render as flat rows;
127
+ * (vault, scribe, notes today) continue to render as flat rows;
128
128
  * the field is optional throughout the read + write paths.
129
129
  */
130
130
  export interface UiSubUnit {
@@ -22,7 +22,7 @@
22
22
  * SCOPE + OWNERSHIP SAFETY (the hard constraint): we ONLY ever disable a unit
23
23
  * whose name EXACTLY matches `parachute-<short>.service` (systemd) or
24
24
  * `computer.parachute.<short>` (launchd) for a KNOWN module short
25
- * (`knownServices()` — vault / scribe / runner / surface / notes / channel). We
25
+ * (`knownServices()` — vault / scribe / surface / notes / agent). We
26
26
  * NEVER disable an arbitrary or unrecognized unit — an unknown unit is invisible
27
27
  * to this sweep by construction (we look up exact names, never enumerate-and-
28
28
  * match-loosely). On top of that we EXPLICITLY exclude the units the supervised
@@ -98,7 +98,7 @@ function isProtectedLaunchdLabel(label: string): boolean {
98
98
  /**
99
99
  * The module shorts whose stale standalone autostart units the sweep targets.
100
100
  * Derived from `knownServices()` (the canonical FIRST_PARTY_FALLBACKS +
101
- * KNOWN_MODULES list — vault / scribe / runner / surface / notes / channel), so
101
+ * KNOWN_MODULES list — vault / scribe / surface / notes / agent), so
102
102
  * a future module is covered automatically. `hub` is deliberately NOT in that
103
103
  * list — the hub unit is the supervised model itself; we never disable it. As a
104
104
  * defensive double-check we also drop any short whose derived unit name lands in
package/src/well-known.ts CHANGED
@@ -88,7 +88,7 @@ export interface WellKnownServicesEntry {
88
88
  * Sub-units hosted under this module, surfaced as an array (the on-disk
89
89
  * shape is a map; the well-known shape is an array so consumers iterate
90
90
  * cleanly). Each entry promotes the map key into `name`. Absent on
91
- * modules that don't declare `uis` (vault, scribe, notes, runner today).
91
+ * modules that don't declare `uis` (vault, scribe, notes today).
92
92
  * See `UiSubUnit` in services-manifest.ts + parachute-app design doc §12.
93
93
  */
94
94
  uis?: WellKnownUiSubUnit[];
@@ -318,8 +318,8 @@ export function buildWellKnown(opts: BuildWellKnownOpts): WellKnownDocument {
318
318
  // an array of records so JS consumers iterate cleanly without a second
319
319
  // Object.entries round-trip. `name` promotes the map key into a field
320
320
  // — same convention as `WellKnownVaultEntry`. Absent on the parent
321
- // when the entry doesn't declare `uis`, so vault / notes / scribe /
322
- // runner rows stay byte-identical to their pre-#313 shape.
321
+ // when the entry doesn't declare `uis`, so vault / notes / scribe
322
+ // rows stay byte-identical to their pre-#313 shape.
323
323
  //
324
324
  // Emitted on every path of a multi-path entry — today only vault has
325
325
  // multi-path entries, and vault doesn't declare `uis` yet, so the