@tutti-os/nexight-devops 0.5.4 → 0.6.1

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 CHANGED
@@ -39,8 +39,6 @@ nexight-devops datafinder dashboard export --count 100
39
39
  nexight-devops datafinder query shared-agent-summary --count 100
40
40
  nexight-devops datafinder query p2p-health --count 100
41
41
  nexight-devops datafinder query exec ./query.mjs -- arg1 arg2
42
- nexight-devops diagnose shared-agent --room-id <room-id> --at '2026-08-12T12:00:00+08:00'
43
- nexight-devops diagnose shared-agent --room-id <room-id> --at '2026-08-12T12:00:00+08:00' --json
44
42
  nexight-devops ppe-lane deploy
45
43
  nexight-devops ppe-lane destroy
46
44
  nexight-devops ppe-lane status
@@ -50,6 +48,10 @@ nexight-devops release hotfix
50
48
  nexight-devops release approve
51
49
  nexight-devops release rollback
52
50
  nexight-devops release rollback tutti-server
51
+ nexight-devops release rollback platform-web
52
+ nexight-devops release rollback platform-web --previous --yes --reason "entry failure"
53
+ nexight-devops release rollback platform-web --version-id <uuid> --yes
54
+ nexight-devops release rollback platform-web --probe
53
55
  ```
54
56
 
55
57
  ### Function overview
@@ -64,12 +66,12 @@ nexight-devops release rollback tutti-server
64
66
  - `admin computer logs` resolves an online Computer and bundles recall, polling, and temporary download into one Agent-friendly workflow.
65
67
  - `admin computer log-recall` exposes the lower-level task operations for troubleshooting and recovery.
66
68
  - `datafinder` validates access, reads dashboards/reports, runs trusted local JavaScript queries, and exposes fixed reliability queries.
67
- - `diagnose shared-agent` runs a bounded, read-only CloudWatch playbook that correlates room descriptor results, Owner lease observations, client version, and HTTP failures. It verifies the production AWS account before querying and supports stable `--json` output.
68
- - `ppe-lane deploy` deploys selected backend repositories, including `tutti-server`, and the optional `zk-web/canvas` staging artifact to a PPE lane.
69
+ - `ppe-lane deploy` deploys selected backend repositories to a PPE lane. Supported targets are `tutti-server`, `zk-admin-server`, `account`, and `zk-websocket`.
69
70
  - `ppe-lane destroy` checks existing lane instances and triggers destroy workflows after a lane-name confirmation. `tutti-server` must be selected explicitly for destruction.
70
71
  - `ppe-lane status` queries AWS Cloud Map for one lane, or all lanes with `--all`, including `tutti-server`.
71
72
  - `release prepare`, `release hotfix`, and `release approve` run the controlled release lifecycle through GitHub Actions and approval issues.
72
- - `release rollback` lets you choose `tutti-server` interactively; `release rollback tutti-server` selects it directly. The command reads the current production image and up to ten recent Helm deployments directly when local read access to the production cluster is available. Otherwise it retrieves the verified list through GitHub Actions. The selected image is always revalidated and restored by GitHub Actions, followed by health checks. Use `--revision <number> --yes` with the explicit repository for scripted selection and confirmation.
73
+ - `release rollback` lets you choose `tutti-server` or `platform-web` interactively. For `tutti-server`, the command reads the current production image and up to ten recent Helm deployments directly when local cluster read access is available, otherwise through GitHub Actions. The selected image is revalidated and restored by GitHub Actions, followed by health checks. Use `--revision <number> --yes` for scripted selection.
74
+ - `release rollback platform-web` restores a retained, previously deployed Cloudflare Worker version through Tutti's lightweight `platform-web-rollback.yml`. It does not build, test, install packages, upload assets, or roll back ingress/storage. The interactive flow binds your confirmation to the displayed deployment ID; if production changes, execution refuses the stale selection. `--previous --yes` starts only one workflow and selects the latest eligible previous version from live history under the writer lock, excluding versions withdrawn by earlier recorded rollbacks. `--version-id <uuid> --yes` explicitly selects a previously deployed version, including a withdrawn version. `--yes` skips confirmation only. `--reason` records up to 200 UTF-8 bytes; missing historical SHA/run mappings remain unknown. Results distinguish deployment switching, public entry/assets, version/content identity, and unverified Room behavior, and include queue/setup, switch, verification, and total timings. `--probe` measures the same read-only production checks without changing traffic. The CLI needs GitHub access; Cloudflare credentials remain in the production environment's GitHub Secrets.
73
75
 
74
76
  ## Controlled Release
75
77
 
@@ -83,6 +85,8 @@ nexight-devops release approve
83
85
  - `release hotfix` starts a controlled hotfix flow and supports an explicit override when release-branch patches have not yet been absorbed by `main`.
84
86
  - `release approve` posts the approval command to the pending release issue and advances the release.
85
87
 
88
+ The controlled release targets are `account`, `zk-admin-server`, and `zk-websocket` in `zk-org-test`.
89
+
86
90
  ## Management Backend
87
91
 
88
92
  `admin auth login` stores the verified token in the CLI config with `0600` permissions. The API origin defaults to `https://tutti.sh`; an `admin.tutti.sh` page URL is normalized automatically. For CI or temporary access, use `NEXIGHT_ADMIN_TOKEN` or `TUTTI_ADMIN_TOKEN`, and optionally `NEXIGHT_ADMIN_URL` or `TUTTI_ADMIN_URL`.
@@ -127,19 +131,6 @@ nexight-devops admin computer log-recall get --computer-id <computer-id> --task-
127
131
  nexight-devops admin computer log-recall download --computer-id <computer-id> --task-id <task-id>
128
132
  ```
129
133
 
130
- ## Shared Agent diagnosis
131
-
132
- ```bash
133
- nexight-devops diagnose shared-agent \
134
- --room-id <room-id> \
135
- --at '2026-08-12T12:00:00+08:00' \
136
- --shared-agent-id <shared-agent-id>
137
- ```
138
-
139
- The default query window is 30 minutes centered on `--at`, capped at the current time. Use `--window-minutes` to change it; the command rejects windows over 24 hours. When an issued descriptor exposes the Owner device, the playbook derives the same pseudonymous reference as `tsh-server` and joins sampled Owner lease evidence without requiring an Owner diagnostics bundle. `--owner-device-id` or `--authority-id` can provide the join key when it is already known.
140
-
141
- The command is read-only. It returns partial results and explicit missing-evidence reasons when a secondary query fails or the Owner identity cannot be derived. Raw log lines are not included in the result.
142
-
143
134
  ## Development
144
135
 
145
136
  - Node.js 20+