Skip to content

Say in the Opting out table that an environment opt-out skips the file - #36

Merged
dmccoystephenson merged 1 commit into
mainfrom
feature/readme-env-optout-skips-file
Oct 31, 2026
Merged

dmccoystephenson merged 1 commit into
mainfrom
feature/readme-env-optout-skips-file

Conversation

@dmccoystephenson

Copy link
Copy Markdown
Member

Summary

  • The server-wide row of the README "Opting out" table said that build() creates plugins/trace/config.yml if it is missing. That is not true once an environment variable has opted out: the TraceClient(Builder) constructor uses ServerWideConfig.NONE when environmentDisables() is true, and readServerWideConfig (the only place that creates the file) is never called. The row now says "When the environment has already opted out, the file is neither read nor created."
  • The behaviour is already pinned by installId_aDisabledClientNeitherGeneratesNorWritesOne. No code changed; the Builder.serverWideConfig and readServerWideConfig Javadoc were already corrected in Say that an environment opt-out skips the server-wide file #35.

Closes #34

Merge gate

This PR edits the README "Opting out" section, which is user-facing disclosure wording on the do-not-auto-merge list. It is left open for maintainer approval rather than merged automatically.

Deferred issues

Test plan

  • README-only change; no source file touched, so the Maven anchor validates nothing in this diff (UNVERIFIED-not-applicable locally).
  • CI matrix (Java 8, 17, 21) green on the PR head.

This PR description was drafted during a Gardener session (https://github.com/Stephenson-Software/gardener).

🤖 Generated with Claude Code


drafted by Claude on behalf of Daniel Stephenson

The server-wide row said build() creates plugins/trace/config.yml if it
is missing. The constructor skips readServerWideConfig entirely once
TRACE_USAGE_REPORTING or DO_NOT_TRACK has opted out, so nothing is read
or created on disk in that case.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@dmccoystephenson

Copy link
Copy Markdown
Member Author

Self-review rubric (posted as a plain comment; not an independent review):

  • Scope: PASS — one line in README.md changed; no other file touched.
  • Tests-new: PASS (n/a) — no public method added.
  • Tests-fix: PASS (n/a) — documentation fix, no code change. The documented behaviour is already pinned by installId_aDisabledClientNeitherGeneratesNorWritesOne.
  • Sibling structure / renames: PASS (n/a) — no new file, no rename.
  • Docs: PASS — the README row now matches the TraceClient(Builder) constructor (builder.pluginsDirectory == null || environmentDisables() ? ServerWideConfig.NONE : readServerWideConfig(...), TraceClient.java:261) and the Builder.serverWideConfig Javadoc ("the file is neither read nor created", TraceClient.java:1128).
  • Issue resolution: PASS — README Opting out table says build() creates the server-wide file even when the environment has opted out #34 asks only for this README wording; the suggested sentence was added to the server-wide row.
  • CI: PASS — build (8), build (17), build (21) green on the PR head.
  • No dependencies / single file / Java 8 / never throws / bounded / environment seam / version agreement: PASS (n/a) — no source or pom.xml change.
  • Opt-out contract: PASS — no REASON_*, ENV_*, or precedence change; only the description of the file's side effects in the "Opting out" table was corrected.

Judgment call: README.md:192 — the new sentence sits between "appending a server-id: line…" and "It is read with a line regex". The following "It" still refers to the file, but placing the new sentence at the end of the row would read slightly more cleanly. Left as-is to keep the wording the issue proposed.

Merge gate: the diff touches the README "Opting out" section, which is on the do-not-auto-merge list (user-facing disclosure wording). The PR is left open for maintainer approval.

This comment was drafted during a Gardener session (https://github.com/Stephenson-Software/gardener).


drafted by Claude on behalf of Daniel Stephenson

@dmccoystephenson
dmccoystephenson merged commit 79bfa82 into main Oct 31, 2026
3 checks passed
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.

README Opting out table says build() creates the server-wide file even when the environment has opted out

1 participant