@tridha643/hestia 1.1.0 → 1.2.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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tridha643/hestia",
3
- "version": "1.1.0",
3
+ "version": "1.2.0",
4
4
  "description": "Per-worktree isolated development stacks for humans and coding agents",
5
5
  "repository": {
6
6
  "type": "git",
@@ -198,6 +198,11 @@ issues, resolve the ones that are safe to resolve:
198
198
  `.gitignore`.
199
199
  - `orphan-mirror:<project>` for a worktree path that no longer exists —
200
200
  `hestia down --project <project>`.
201
+ - `tunnel:<name>:local-orphans` — Hestia-owned replicas whose argv still
202
+ contains `~/.hestia/tunnel/<uuid>/` after a lost pidfile. The daemon
203
+ sweep / next reconcile reaps them automatically; do **not** start another
204
+ `cloudflared`, and do **not** treat other Conductor worktrees as needing
205
+ their own connector (one machine-global connector serves every worktree).
201
206
  - `launchd` referencing a stale/missing binary path — `hestia daemon
202
207
  install` (idempotent; only rewrites the plist, doesn't touch running
203
208
  workloads).
@@ -212,15 +217,11 @@ issues, resolve the ones that are safe to resolve:
212
217
  exact `wildcardTarget` CNAME the human needs to add at their provider.
213
218
  - **Investigate, then ask before acting** (machine-wide, shared across other
214
219
  worktrees/repos, hard to reverse):
215
- - `tunnel:<uuid>:connectors` reporting N registered vs 0 run by Hestia
216
- this means foreign `cloudflared` processes (possibly from other active
217
- Conductor workspaces, or leaked from a different repo's own test suite,
218
- e.g. hestia's own e2e fixtures under `.../test/fixtures/tunnel-stub/`)
219
- are registered against the same tunnel. Identify them with `ps aux |
220
- grep cloudflared` and `cloudflared tunnel list`, but do **not** kill any
221
- of them without the user's explicit go-ahead — one of those processes
222
- may belong to another live workspace. Report the count, PIDs, and ages
223
- found, and let the human decide what to stop.
220
+ - `tunnel:<name>:connectors` reporting N registered vs 0/1 run by Hestia
221
+ **with no local-orphans row** — a truly foreign connector (argv lacks the
222
+ hestia tunnel path, e.g. `cloudflared tunnel run --token …` or a hand-run
223
+ `tunnel run`). Identify with `ps -Ao pid,lstart,command | grep cloudflared`
224
+ and ask the human before killing anything Hestia did not start.
224
225
 
225
226
  ## Inspect and finish
226
227
 
@@ -257,7 +258,7 @@ workloads can. Named volumes are retained unless `--destroy` is explicit.
257
258
  | `proc-ready-timeout` | inspect logs; use `--no-port` only for non-servers |
258
259
  | `stack-limit` | down an owned stack or retry with `--wait=120` |
259
260
  | `dns-route-required` | `cloudflared tunnel route dns <uuid> '*.<zone>'` once, then retry |
260
- | `tunnel-busy` | stop the foreign connector; do not kill processes Hestia did not start identify via `ps aux \| grep cloudflared` + `cloudflared tunnel list`, then confirm with the human before killing anything (see "Post-up health sweep") |
261
+ | `tunnel-busy` | stop the foreign connector; hestia-owned orphans (`~/.hestia/tunnel/<uuid>/` in argv) are auto-reapedonly confirm with the human before killing processes whose argv lacks that path |
261
262
  | `route-origin-unavailable` | restart the workload through Hestia |
262
263
  | `backend-not-stoppable` | use `hestia down` for Docker workloads |
263
264
  | `shared-not-found` | `hestia share list` for declared names; `expose <svc> --shared <name>` declares one |