@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 +9 -18
- package/dist/cli.js +834 -1644
- package/dist/cli.js.map +1 -1
- package/package.json +3 -3
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
|
-
- `
|
|
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`
|
|
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+
|