@christiandoxa/prodex 0.2.128 → 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.
Files changed (2) hide show
  1. package/README.md +60 -3
  2. package/package.json +7 -7
package/README.md CHANGED
@@ -62,11 +62,11 @@ Check your installed version:
62
62
  prodex --version
63
63
  ```
64
64
 
65
- The current local version in this repo is `0.2.128`:
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.128
69
- cargo install prodex --force --version 0.2.128
68
+ npm install -g @christiandoxa/prodex@0.2.129
69
+ cargo install prodex --force --version 0.2.129
70
70
  ```
71
71
 
72
72
  Dependency status in this repo:
@@ -215,10 +215,13 @@ prodex quota --all
215
215
  prodex quota --all --once
216
216
  prodex quota --profile main --detail
217
217
  prodex info
218
+ prodex audit
219
+ prodex audit --tail 20 --component profile
218
220
  prodex cleanup
219
221
  prodex doctor
220
222
  prodex doctor --quota
221
223
  prodex doctor --runtime
224
+ prodex doctor --runtime --json
222
225
  ```
223
226
 
224
227
  If a runtime session looks stalled, inspect the latest runtime log:
@@ -228,8 +231,62 @@ prodex doctor --runtime
228
231
  tail -n 200 "$(cat /tmp/prodex-runtime-latest.path)"
229
232
  ```
230
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
+
231
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.
232
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
+
233
290
  ## Notes
234
291
 
235
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.128",
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.128",
20
- "@christiandoxa/prodex-linux-arm64": "0.2.128",
21
- "@christiandoxa/prodex-darwin-x64": "0.2.128",
22
- "@christiandoxa/prodex-darwin-arm64": "0.2.128",
23
- "@christiandoxa/prodex-win32-x64": "0.2.128",
24
- "@christiandoxa/prodex-win32-arm64": "0.2.128"
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"