Skip to content

docs(compass-agent): loop-OTel deployer contract + env reachability pin (RIG-2508 T2) - #654

Open
rigel-mintaka wants to merge 2 commits into
mainfrom
compass-agent/rig-2508-loop-otel-deployer-contract
Open

docs(compass-agent): loop-OTel deployer contract + env reachability pin (RIG-2508 T2)#654
rigel-mintaka wants to merge 2 commits into
mainfrom
compass-agent/rig-2508-loop-otel-deployer-contract

Conversation

@rigel-mintaka

@rigel-mintaka rigel-mintaka commented Aug 26, 2026

Copy link
Copy Markdown
Contributor

T2 of the frozen loop-OTel record. Two additive deliverables, no
production code-path change beyond T1.

  • Env reachability test (cli.test.ts): pins that all four loop-OTel keys
    the Runner materializes into $HOME/.compass/env -- OTEL_SERVICE_NAME,
    OTEL_EXPORTER_OTLP_TRACES_ENDPOINT, OTEL_RESOURCE_ATTRIBUTES,
    OTEL_INSTRUMENTATION_GENAI_CAPTURE_MESSAGE_CONTENT -- survive
    isReservedEnvKey filtering (none are HOME/COMPASS_*) and reach
    process.env before the registration point (cli.ts:838), via the
    env-merge loop (cli.ts:614-618) that runs earlier. Non-vacuous: a
    COMPASS_-prefixed or HOME key would be dropped, as the neighboring test
    pins for COMPASS_FUTURE_VAR.
  • deployer-contract.md: maintainer-facing reference for configuring a
    collector -- endpoint key, service-name override, content-capture
    opt-in + sensitivity warning, off-by-default guarantee, and the two
    asymmetries a deployer must know: F5 endpoint-gate (the loop honors
    OTEL_EXPORTER_OTLP_TRACES_ENDPOINT, the transport gates only on
    OTEL_EXPORTER_OTLP_ENDPOINT) and F1 service-name split (an
    OTEL_SERVICE_NAME override renames the loop signal only; the durable
    cross-signal join is compass.session.id, not service.name). All cites
    source-verified against @oh-my-pi/pi-coding-agent@16.5.2 and the frozen
    transport otel-layer.ts.

Doc lives under docs/designs/platform/ (ungoverned ledger root -> no
DECISIONS row). Stacked on #648 (T1).

Co-authored-by: Matt Wilkinson matt@rigel.build

@linear-code

linear-code Bot commented Aug 26, 2026

Copy link
Copy Markdown

RIG-2508

@github-actions

github-actions Bot commented Aug 26, 2026

Copy link
Copy Markdown

Compass engineering docs preview: https://compass-agent-rig-2508-loop-smmr.compass-eng-docs.pages.dev

Deployed from compass-agent/rig-2508-loop-otel-deployer-contract at 5db3779.

Changed pages:

Base automatically changed from compass-agent/rig-2508-loop-otel-activate to main August 26, 2026 14:44
rigel-mintaka and others added 2 commits August 26, 2026 10:50
…in (RIG-2508 T2)

T2 of the frozen loop-OTel record. Two additive deliverables, no
production code-path change beyond T1.

- Env reachability test (cli.test.ts): pins that all four loop-OTel keys
  the Runner materializes into $HOME/.compass/env -- OTEL_SERVICE_NAME,
  OTEL_EXPORTER_OTLP_TRACES_ENDPOINT, OTEL_RESOURCE_ATTRIBUTES,
  OTEL_INSTRUMENTATION_GENAI_CAPTURE_MESSAGE_CONTENT -- survive
  isReservedEnvKey filtering (none are HOME/COMPASS_*) and reach
  process.env before the registration point (cli.ts:838), via the
  env-merge loop (cli.ts:614-618) that runs earlier. Non-vacuous: a
  COMPASS_-prefixed or HOME key would be dropped, as the neighboring test
  pins for COMPASS_FUTURE_VAR.
- deployer-contract.md: maintainer-facing reference for configuring a
  collector -- endpoint key, service-name override, content-capture
  opt-in + sensitivity warning, off-by-default guarantee, and the two
  asymmetries a deployer must know: F5 endpoint-gate (the loop honors
  OTEL_EXPORTER_OTLP_TRACES_ENDPOINT, the transport gates only on
  OTEL_EXPORTER_OTLP_ENDPOINT) and F1 service-name split (an
  OTEL_SERVICE_NAME override renames the loop signal only; the durable
  cross-signal join is compass.session.id, not service.name). All cites
  source-verified against @oh-my-pi/pi-coding-agent@16.5.2 and the frozen
  transport otel-layer.ts.

Doc lives under docs/designs/platform/ (ungoverned ledger root -> no
DECISIONS row). Stacked on #648 (T1).

Co-authored-by: Matt Wilkinson <matt@rigel.build>
…ct sentinel (RIG-2508 T2)

The four-key loop-OTel reachability test wrote OTEL_SERVICE_NAME=compass-agent,
which is byte-identical to the activation's `??=` default (cli.ts:839). A
filter-drop regression (key wrongly reserved by isReservedEnvKey) would
re-default to the same value, leaving the assertion green. Swap to a distinct
sentinel (deployer-custom-name) so the key must genuinely survive the filter
and reach process.env for the assertion to pass; proven to red under a
simulated reserve of OTEL_SERVICE_NAME. The other three keys were already
non-vacuous.

Co-authored-by: Matt Wilkinson <matt@rigel.build>
@rigel-mintaka
rigel-mintaka force-pushed the compass-agent/rig-2508-loop-otel-deployer-contract branch from 6ccc0fd to 5db3779 Compare August 26, 2026 14:51
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant