@vymalo/opencode-otel 0.14.0 → 0.14.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.
Files changed (2) hide show
  1. package/README.md +20 -1
  2. package/package.json +1 -1
package/README.md CHANGED
@@ -47,7 +47,10 @@ same dashboards. What it adds:
47
47
  - **All five token types** — `input`, `output`, `reasoning`, `cache_read`, `cache_write`. On a
48
48
  cached agentic session cache-read is routinely the majority of tokens, so summing input+output
49
49
  alone measures a different quantity.
50
- - **Permission decisions**, mapped from OpenCode's `permission.*` events.
50
+ - **Permission decisions**, including ones a config auto-resolved without asking (`permission.ask`
51
+ covers both; `opencode.permission.source` distinguishes `user` from `auto`).
52
+ - **Repository identity** — `vcs.repository.url.full`, `vcs.repository.name`, `vcs.owner.name`,
53
+ `vcs.provider.name`, `vcs.ref.head.*` — read straight off disk, credentials stripped.
51
54
  - **`opencode.json` configuration**, not just environment variables — required for
52
55
  `.well-known/opencode` distribution.
53
56
 
@@ -79,6 +82,22 @@ under Bun as well as Node, and `@grpc/grpc-js` is unreliable there. Put a collec
79
82
  backend needs gRPC. See
80
83
  [ADR-0009](https://github.com/ADORSYS-GIS/lightbridge-opencode-toolbeit/blob/main/docs/adr/0009-otel-otlp-http-not-grpc.md).
81
84
 
85
+ ## Short-lived credentials
86
+
87
+ A static `Authorization` header is read once at plugin load and never refreshed — fine for a
88
+ long-lived API key, wrong for a collector behind a short OIDC token. Set `tokenCommand` to an
89
+ executable that prints a fresh token on stdout; it is re-run before the token's `exp` claim (or
90
+ `tokenRefreshMs`, when there is none) expires. See
91
+ [docs/otel.md → Short-lived credentials](https://github.com/ADORSYS-GIS/lightbridge-opencode-toolbeit/blob/main/docs/otel.md#short-lived-credentials).
92
+
93
+ ## When exports fail
94
+
95
+ A rejected OTLP request — an expired credential, an unreachable collector — reaches the host log
96
+ stream as `otel_export_failed` (signal, HTTP status where known, `consecutiveFailures`); recovery is
97
+ reported once as `otel_export_recovered`. Previously this only went to the OTel SDK's own `diag`
98
+ channel, which nothing subscribed to, so telemetry could stop silently. See
99
+ [docs/otel.md → Troubleshooting](https://github.com/ADORSYS-GIS/lightbridge-opencode-toolbeit/blob/main/docs/otel.md#troubleshooting).
100
+
82
101
  ## Full reference
83
102
 
84
103
  - [`docs/otel.md`](https://github.com/ADORSYS-GIS/lightbridge-opencode-toolbeit/blob/main/docs/otel.md)
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@vymalo/opencode-otel",
3
- "version": "0.14.0",
3
+ "version": "0.14.1",
4
4
  "description": "OpenTelemetry plugin for OpenCode: exports developer interactions as OTLP traces, metrics and logs — real USD cost, all five token types (including cache read/write and reasoning), tool results, permission decisions, API errors and lines of code. Configurable from opencode.json or standard OTEL_* environment variables.",
5
5
  "license": "MIT",
6
6
  "author": "vymalo contributors",