diff --git a/.claude-plugin/plugin.json b/.claude-plugin/plugin.json index 9f94fcc..ac3a9d1 100644 --- a/.claude-plugin/plugin.json +++ b/.claude-plugin/plugin.json @@ -2,7 +2,7 @@ "name": "darkroom", "displayName": "Darkroom Engineering", "description": "Darkroom Engineering AI coding standards. Layered config with portable AGENTS.md, progressive complexity, and two-tier knowledge system.", - "version": "11.30.1", + "version": "11.30.2", "author": { "name": "Darkroom Engineering", "url": "https://darkroom.engineering" diff --git a/CHANGELOG.md b/CHANGELOG.md index fd7e8e2..3d0a96a 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,6 +4,27 @@ All notable changes to cc-settings are documented here. > **Versioning** — cc-settings uses a single version number matching the installer (`src/setup.ts` `VERSION` constant, written to `~/.claude/.cc-settings-version` sentinel). Historical entries below 10.0 predate this unification; the jump from v8.x to v10.x in April 2026 realigned the product version with the installer version that was already ahead. +## [11.30.2] — 2026-06-26 + +Sync with Claude Code v2.1.193 (v2.1.192 was skipped upstream). Tracks two new environment variables in the manifest and docs; no schema, hook, or wiring changes. + +**Adopted:** +- `OTEL_LOG_ASSISTANT_RESPONSES` (v2.1.193) — added to `upstream/claude-code-manifest.json` `knownEnvVars` and the env table in `docs/settings-reference.md`. Controls whether the new `claude_code.assistant_response` OTEL log event carries the model's response text. **Privacy gotcha worth surfacing:** when the var is unset it inherits `OTEL_LOG_USER_PROMPTS`, so OTEL deployments already logging prompt content begin logging response content on upgrade — set `=0` to keep prompts-only. +- `CLAUDE_CODE_DISABLE_BG_SHELL_PRESSURE_REAP` (v2.1.193) — added to manifest `knownEnvVars` and the docs env table. Opt-out for the new automatic memory-pressure reaping of idle background shell commands. + +**Deletions / Native-now-redundant:** +- None this cycle. + +**Triage notes:** +- `autoMode.classifyAllShell` (v2.1.193) needs no change — the settings schema already accepts it via `autoMode: z.looseObject({})` (shape intentionally opaque) and the manifest already tracks the top-level `autoMode` key. +- Remaining entries are native client UX (auto-mode denial reasons, bash-mode path autocomplete, MCP-auth startup notice, `/add-dir` wording, plugin auto-rename) and bug fixes (`/model` stale-state after `/login`, backgrounding cancel/carry-over, pinned-agent re-prompt, phantom resumed subagent, agent-panel siblings, MCP `headersHelper` 401/403 reconnect) with no cc-settings surface. + +**Files changed:** +- upstream/claude-code-manifest.json +- docs/settings-reference.md +- src/setup.ts +- CHANGELOG.md + ## [11.30.1] — 2026-06-25 Sync with Claude Code v2.1.191. Pure upstream bug-fix and performance release — no new settings keys, hook events, MCP fields, env vars, or agent frontmatter. Manifest bump only; no cc-settings code touched. diff --git a/docs/settings-reference.md b/docs/settings-reference.md index e39007a..43e2f46 100644 --- a/docs/settings-reference.md +++ b/docs/settings-reference.md @@ -92,6 +92,8 @@ Environment variables injected into every Claude Code session. | `API_FORCE_IDLE_TIMEOUT` | `"0"` to opt out, unset for default | Restores a default 5-minute idle timeout on Vertex/Foundry so a stalled stream aborts instead of hanging; set `=0` to opt out (v2.1.169) | | `CLAUDE_CODE_MAX_RETRIES` | integer (string) | Max API retry attempts on transient failures; capped at `15` as of v2.1.186. For unattended sessions prefer `CLAUDE_CODE_RETRY_WATCHDOG` | | `CLAUDE_CODE_RETRY_WATCHDOG` | `"1"` or unset | Keeps retrying transient API failures past the `CLAUDE_CODE_MAX_RETRIES` cap for long unattended sessions (v2.1.186) | +| `OTEL_LOG_ASSISTANT_RESPONSES` | `"1"` / `"0"` / unset | Adds the model's response text to the `claude_code.assistant_response` OTEL log event. **Redacted unless `=1`; when unset it inherits `OTEL_LOG_USER_PROMPTS`** — so deployments already logging prompt content start logging response content on upgrade. Set `=0` to keep prompts-only (v2.1.193) | +| `CLAUDE_CODE_DISABLE_BG_SHELL_PRESSURE_REAP` | `"1"` or unset | Opt out of automatic memory-pressure reaping of idle background shell commands (v2.1.193) | > **Note on `ultracode` mode (v2.1.154+)**: `/effort ultracode` is a Claude Code session-only mode that sends `xhigh` to the model AND has Claude plan a [dynamic workflow](https://code.claude.com/docs/en/workflows) for each substantive task. It is **not** a valid value for `CLAUDE_CODE_EFFORT_LEVEL`, the `effortLevel` setting, or the `--effort` flag — set it via `/effort ultracode` in-session, or pass `"ultracode": true` through `--settings` or an Agent SDK control request. Disable workflows entirely with `CLAUDE_CODE_DISABLE_WORKFLOWS=1` or `"disableWorkflows": true`. diff --git a/src/setup.ts b/src/setup.ts index d89871f..3e9a9ca 100644 --- a/src/setup.ts +++ b/src/setup.ts @@ -53,7 +53,7 @@ import { gatherStatus } from "./lib/status.ts"; import { buildVersionDelta, readInstalledVersion } from "./lib/version-delta.ts"; import { Settings } from "./schemas/settings.ts"; -const VERSION = "11.30.1"; // sync with Claude Code v2.1.191: pure upstream bug-fix/perf release (no actionable settings/hooks/MCP/env/frontmatter changes); manifest bump only +const VERSION = "11.30.2"; // sync with Claude Code v2.1.193: track two new env vars (OTEL_LOG_ASSISTANT_RESPONSES, CLAUDE_CODE_DISABLE_BG_SHELL_PRESSURE_REAP) in manifest + docs; no schema/wiring changes // --- Arg parsing --------------------------------------------------------- diff --git a/upstream/claude-code-manifest.json b/upstream/claude-code-manifest.json index 6828728..8ef77e0 100644 --- a/upstream/claude-code-manifest.json +++ b/upstream/claude-code-manifest.json @@ -1,6 +1,6 @@ { - "lastScan": "2026-06-25T00:00:00.000Z", - "claudeCodeVersion": "2.1.191", + "lastScan": "2026-06-26T00:00:00.000Z", + "claudeCodeVersion": "2.1.193", "knownSettingsKeys": [ "$schema", "agent", @@ -153,6 +153,7 @@ "CLAUDE_CLIENT_PRESENCE_FILE", "CLAUDE_CODE_CERT_STORE", "CLAUDE_CODE_DISABLE_ALTERNATE_SCREEN", + "CLAUDE_CODE_DISABLE_BG_SHELL_PRESSURE_REAP", "CLAUDE_CODE_DISABLE_BUNDLED_SKILLS", "CLAUDE_CODE_DISABLE_NONSTREAMING_FALLBACK", "CLAUDE_CODE_EFFORT_LEVEL", @@ -189,6 +190,7 @@ "ENABLE_PROMPT_CACHING_1H", "ENABLE_TOOL_SEARCH", "FORCE_PROMPT_CACHING_5M", + "OTEL_LOG_ASSISTANT_RESPONSES", "OTEL_LOG_RAW_API_BODIES", "OTEL_LOG_TOOL_DETAILS", "OTEL_LOG_USER_PROMPTS"