@christiandoxa/prodex 0.2.127 → 0.2.129
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 +66 -3
- package/package.json +7 -7
package/README.md
CHANGED
|
@@ -62,13 +62,19 @@ Check your installed version:
|
|
|
62
62
|
prodex --version
|
|
63
63
|
```
|
|
64
64
|
|
|
65
|
-
The current local version in this repo is `0.2.
|
|
65
|
+
The current local version in this repo is `0.2.129`:
|
|
66
66
|
|
|
67
67
|
```bash
|
|
68
|
-
npm install -g @christiandoxa/prodex@0.2.
|
|
69
|
-
cargo install prodex --force --version 0.2.
|
|
68
|
+
npm install -g @christiandoxa/prodex@0.2.129
|
|
69
|
+
cargo install prodex --force --version 0.2.129
|
|
70
70
|
```
|
|
71
71
|
|
|
72
|
+
Dependency status in this repo:
|
|
73
|
+
|
|
74
|
+
- The npm runtime dependency is already at the latest published `@openai/codex` release: `0.118.0`
|
|
75
|
+
- `cargo update` currently produces no Rust lockfile changes on the Rust `1.94.1` compatible graph used by this project
|
|
76
|
+
- `generic-array` remains pinned transitively by `crypto-common`, and `sha2 0.11` would require a wider RustCrypto compatibility jump than this release
|
|
77
|
+
|
|
72
78
|
Switching from a Cargo-installed binary to npm?
|
|
73
79
|
|
|
74
80
|
```bash
|
|
@@ -209,10 +215,13 @@ prodex quota --all
|
|
|
209
215
|
prodex quota --all --once
|
|
210
216
|
prodex quota --profile main --detail
|
|
211
217
|
prodex info
|
|
218
|
+
prodex audit
|
|
219
|
+
prodex audit --tail 20 --component profile
|
|
212
220
|
prodex cleanup
|
|
213
221
|
prodex doctor
|
|
214
222
|
prodex doctor --quota
|
|
215
223
|
prodex doctor --runtime
|
|
224
|
+
prodex doctor --runtime --json
|
|
216
225
|
```
|
|
217
226
|
|
|
218
227
|
If a runtime session looks stalled, inspect the latest runtime log:
|
|
@@ -222,8 +231,62 @@ prodex doctor --runtime
|
|
|
222
231
|
tail -n 200 "$(cat /tmp/prodex-runtime-latest.path)"
|
|
223
232
|
```
|
|
224
233
|
|
|
234
|
+
That pointer path lives in `/tmp` only when you keep the default runtime log directory. If you override the runtime log directory through policy or environment, use `prodex doctor --runtime --json` to read the active `log_path` and live broker metrics.
|
|
235
|
+
|
|
225
236
|
Use `prodex cleanup` to remove stale local runtime logs, temporary login homes, dead broker leases and registries, plus old orphaned managed profile homes that are no longer tracked in state.
|
|
226
237
|
|
|
238
|
+
## Runtime Policy
|
|
239
|
+
|
|
240
|
+
Enterprise-style local deployments can pin runtime logging and proxy tuning in `$PRODEX_HOME/policy.toml` or `~/.prodex/policy.toml`.
|
|
241
|
+
|
|
242
|
+
```toml
|
|
243
|
+
version = 1
|
|
244
|
+
|
|
245
|
+
[runtime]
|
|
246
|
+
log_format = "json"
|
|
247
|
+
log_dir = "runtime-logs"
|
|
248
|
+
|
|
249
|
+
[secrets]
|
|
250
|
+
backend = "file"
|
|
251
|
+
# keyring_service = "prodex"
|
|
252
|
+
|
|
253
|
+
[runtime_proxy]
|
|
254
|
+
worker_count = 16
|
|
255
|
+
active_request_limit = 128
|
|
256
|
+
responses_active_limit = 96
|
|
257
|
+
http_connect_timeout_ms = 5000
|
|
258
|
+
stream_idle_timeout_ms = 300000
|
|
259
|
+
```
|
|
260
|
+
|
|
261
|
+
Notes:
|
|
262
|
+
|
|
263
|
+
* Environment variables still win over `policy.toml`.
|
|
264
|
+
* `prodex info` and `prodex doctor` show the active policy file, selected secret backend, and effective runtime log mode.
|
|
265
|
+
* The default runtime log format remains `text`; set `log_format = "json"` or `PRODEX_RUNTIME_LOG_FORMAT=json` when you want machine-readable runtime logs.
|
|
266
|
+
* Secret backend selection can be overridden with `PRODEX_SECRET_BACKEND` and `PRODEX_SECRET_KEYRING_SERVICE`.
|
|
267
|
+
* `prodex audit` reads the local append-only audit log and supports `--tail`, `--component`, `--action`, `--outcome`, and `--json`.
|
|
268
|
+
|
|
269
|
+
## Enterprise Hardening
|
|
270
|
+
|
|
271
|
+
The current hardening is still local-first, but it now includes:
|
|
272
|
+
|
|
273
|
+
- a secret-management abstraction for `auth.json` and exported profile bundles, plus global secret-backend selection via policy or environment
|
|
274
|
+
- a stable live broker snapshot at `GET /__prodex/runtime/metrics`
|
|
275
|
+
- a Prometheus scrape target at `GET /__prodex/runtime/metrics/prometheus`
|
|
276
|
+
- `prodex info` and `prodex doctor --runtime --json` surfacing live broker metrics targets and the selected secret backend
|
|
277
|
+
- enterprise audit logging for profile selection, rotation decisions, and admin-facing state changes, kept separate from transport behavior and discoverable via `prodex info` or `prodex doctor --runtime --json`
|
|
278
|
+
- `prodex audit` as a local read-only CLI surface for browsing recent append-only audit events
|
|
279
|
+
|
|
280
|
+
Current limitations:
|
|
281
|
+
|
|
282
|
+
- local `auth.json` remains the compatibility source of truth for current Codex flows even when a non-file backend is selected
|
|
283
|
+
- there is no keychain, Vault, or KMS-backed secret backend implementation yet
|
|
284
|
+
- audit logs follow the resolved runtime log directory by default, or `PRODEX_AUDIT_LOG_DIR` when set
|
|
285
|
+
- there is no central control plane, RBAC, SSO, or SCIM
|
|
286
|
+
- `prodex doctor --runtime --json` is operationally useful, but it is not a full observability stack
|
|
287
|
+
- the repo still assumes a per-host profile pool and local state ownership
|
|
288
|
+
- runtime-store modularization is still in progress, so persistence and audit/event handling remain implementation details rather than a public API
|
|
289
|
+
|
|
227
290
|
## Notes
|
|
228
291
|
|
|
229
292
|
* Managed profiles share persisted Codex state through Prodex-owned shared storage.
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@christiandoxa/prodex",
|
|
3
|
-
"version": "0.2.
|
|
3
|
+
"version": "0.2.129",
|
|
4
4
|
"description": "Safe multi-account auto-rotate for Codex CLI with isolated CODEX_HOME profiles",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"bin": {
|
|
@@ -16,12 +16,12 @@
|
|
|
16
16
|
"@openai/codex": "^0.118.0"
|
|
17
17
|
},
|
|
18
18
|
"optionalDependencies": {
|
|
19
|
-
"@christiandoxa/prodex-linux-x64": "0.2.
|
|
20
|
-
"@christiandoxa/prodex-linux-arm64": "0.2.
|
|
21
|
-
"@christiandoxa/prodex-darwin-x64": "0.2.
|
|
22
|
-
"@christiandoxa/prodex-darwin-arm64": "0.2.
|
|
23
|
-
"@christiandoxa/prodex-win32-x64": "0.2.
|
|
24
|
-
"@christiandoxa/prodex-win32-arm64": "0.2.
|
|
19
|
+
"@christiandoxa/prodex-linux-x64": "0.2.129",
|
|
20
|
+
"@christiandoxa/prodex-linux-arm64": "0.2.129",
|
|
21
|
+
"@christiandoxa/prodex-darwin-x64": "0.2.129",
|
|
22
|
+
"@christiandoxa/prodex-darwin-arm64": "0.2.129",
|
|
23
|
+
"@christiandoxa/prodex-win32-x64": "0.2.129",
|
|
24
|
+
"@christiandoxa/prodex-win32-arm64": "0.2.129"
|
|
25
25
|
},
|
|
26
26
|
"engines": {
|
|
27
27
|
"node": ">=18"
|