Skip to content

Commit d2ba55e

Browse files
committed
v1.14.2: Fix feature schema validation, docs sidebar readability
- Remove "proposals" from 6 feature.json files (mutually exclusive with "enum" in spec schema) - Fix active sidebar item: increase background opacity, add font-weight and accent-high color - Backfill v1.14.0 release (tag + GitHub release created)
1 parent 7a38e25 commit d2ba55e

File tree

10 files changed

+55
-35
lines changed

10 files changed

+55
-35
lines changed

.devcontainer/CHANGELOG.md

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,24 @@
11
# CodeForge Devcontainer Changelog
22

3-
## [v1.14.1] - 2026-02-24
3+
## [v1.14.2] - 2026-02-24
44

55
### Fixed
66

7-
#### CI: Release Workflow
7+
#### CI: Release Workflow (v1.14.1)
88
- **test.js** — settings.json path updated from `config/settings.json` to `config/defaults/settings.json` to match config externalization refactor
99
- **test.js** — Test 5 (executable check) result now included in exit condition; previously a failure was logged but did not affect the exit code
1010
- **setup.js** — file permissions changed from 644 to 755 (executable) to match shebang and `bin` declaration in package.json
1111

12-
#### CI: Publish DevContainer Features Workflow
12+
#### CI: Publish DevContainer Features Workflow (v1.14.1)
1313
- **features/README.md** — removed from features directory; `devcontainers/action@v1` treated it as a feature subdirectory and failed looking for `README.md/devcontainer-feature.json`
1414
- **11 devcontainer-feature.json files** — removed `"maintainer"` field (not in the DevContainer Feature spec schema, causing strict validation failure): ast-grep, ccburn, ccms, ccstatusline, ccusage, chromaterm, claude-monitor, claude-session-dashboard, lsp-servers, mcp-qdrant, tree-sitter
1515

16+
#### CI: Publish DevContainer Features Workflow (v1.14.2)
17+
- **6 devcontainer-feature.json files** — removed `"proposals"` field that coexisted with `"enum"` on the same option (spec schema treats them as mutually exclusive via `anyOf`): ccburn, ccusage, claude-monitor, claude-session-dashboard, mcp-qdrant, tree-sitter
18+
19+
#### Docs
20+
- **Active sidebar item** — increased background opacity from 0.08 to 0.14, added `font-weight: 600` and `color: var(--sl-color-accent-high)` for readable contrast against inactive items
21+
1622
## [v1.14.0] - 2026-02-24
1723

1824
### Fixed (CodeRabbit review)

.devcontainer/features/ccburn/devcontainer-feature.json

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -18,11 +18,6 @@
1818
"bash",
1919
"zsh",
2020
"both"
21-
],
22-
"proposals": [
23-
"bash",
24-
"zsh",
25-
"both"
2621
]
2722
},
2823
"username": {

.devcontainer/features/ccusage/devcontainer-feature.json

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -18,11 +18,6 @@
1818
"bash",
1919
"zsh",
2020
"both"
21-
],
22-
"proposals": [
23-
"bash",
24-
"zsh",
25-
"both"
2621
]
2722
},
2823
"username": {

.devcontainer/features/claude-monitor/devcontainer-feature.json

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -18,11 +18,6 @@
1818
"uv",
1919
"pipx",
2020
"pip"
21-
],
22-
"proposals": [
23-
"uv",
24-
"pipx",
25-
"pip"
2621
]
2722
},
2823
"username": {

.devcontainer/features/claude-session-dashboard/devcontainer-feature.json

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,8 +19,7 @@
1919
"type": "string",
2020
"description": "Which shells to configure aliases in (bash, zsh, or both)",
2121
"default": "both",
22-
"enum": ["bash", "zsh", "both"],
23-
"proposals": ["bash", "zsh", "both"]
22+
"enum": ["bash", "zsh", "both"]
2423
},
2524
"username": {
2625
"type": "string",

.devcontainer/features/mcp-qdrant/devcontainer-feature.json

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -39,12 +39,6 @@
3939
"BAAI/bge-small-en-v1.5",
4040
"sentence-transformers/all-mpnet-base-v2",
4141
"BAAI/bge-base-en-v1.5"
42-
],
43-
"proposals": [
44-
"all-MiniLM-L6-v2",
45-
"BAAI/bge-small-en-v1.5",
46-
"sentence-transformers/all-mpnet-base-v2",
47-
"BAAI/bge-base-en-v1.5"
4842
]
4943
},
5044
"username": {

.devcontainer/features/tree-sitter/devcontainer-feature.json

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -19,12 +19,6 @@
1919
"python",
2020
"both",
2121
"none"
22-
],
23-
"proposals": [
24-
"node",
25-
"python",
26-
"both",
27-
"none"
2822
]
2923
},
3024
"installCli": {

docs/src/content/docs/reference/changelog.md

Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -47,10 +47,39 @@ For minor and patch updates, you can usually just rebuild the container. Check t
4747

4848
## Version History
4949

50+
## v1.14.2
51+
52+
**Release date:** 2026-02-24
53+
54+
### Fixed
55+
56+
#### CI: Release Workflow (v1.14.1)
57+
- **test.js** — settings.json path updated from `config/settings.json` to `config/defaults/settings.json` to match config externalization refactor
58+
- **test.js** — Test 5 (executable check) result now included in exit condition; previously a failure was logged but did not affect the exit code
59+
- **setup.js** — file permissions changed from 644 to 755 (executable) to match shebang and `bin` declaration in package.json
60+
61+
#### CI: Publish DevContainer Features Workflow (v1.14.1)
62+
- **features/README.md** — removed from features directory; `devcontainers/action@v1` treated it as a feature subdirectory and failed looking for `README.md/devcontainer-feature.json`
63+
- **11 devcontainer-feature.json files** — removed `"maintainer"` field (not in the DevContainer Feature spec schema, causing strict validation failure): ast-grep, ccburn, ccms, ccstatusline, ccusage, chromaterm, claude-monitor, claude-session-dashboard, lsp-servers, mcp-qdrant, tree-sitter
64+
65+
#### CI: Publish DevContainer Features Workflow (v1.14.2)
66+
- **6 devcontainer-feature.json files** — removed `"proposals"` field that coexisted with `"enum"` on the same option (spec schema treats them as mutually exclusive via `anyOf`): ccburn, ccusage, claude-monitor, claude-session-dashboard, mcp-qdrant, tree-sitter
67+
68+
#### Docs
69+
- **Active sidebar item** — increased background opacity from 0.08 to 0.14, added `font-weight: 600` and `color: var(--sl-color-accent-high)` for readable contrast against inactive items
70+
5071
## v1.14.0
5172

5273
**Release date:** 2026-02-24
5374

75+
### Fixed (CodeRabbit review)
76+
- **chromaterm/install.sh** — username auto-detection now resets to empty before candidate loop, so `${USERNAME:-root}` fallback works correctly
77+
- **biome/install.sh** — nvm.sh sourcing wrapped in `set +u` / `set -u` to prevent unbound variable abort under `set -euo pipefail`
78+
- **setup.js**`ccstatusline-settings.json` added to DEFAULT_PRESERVE so user customizations survive `--force` package updates
79+
- **docs agent-system.md** — spec-writer moved from Full-Access to Read-Only agents table (matches its `permissionMode: plan` definition)
80+
- **guard-readonly-bash.py** — docstring corrected from "Returns JSON on stdout" to "Outputs block reason to stderr"
81+
- **git-forensics/SKILL.md** — misleading "Blame through renames" comment fixed to "Show patch history through renames"
82+
5483
### Added
5584

5685
#### Nuclear Workspace Scope Enforcement
@@ -94,8 +123,19 @@ For minor and patch updates, you can usually just rebuild the container. Check t
94123
- **ChromaTerm wrapper** in setup-aliases.sh — `cc`/`claude`/`ccw` aliases pipe through `ct` when available
95124
- **`package.json` scripts** — added `prepublishOnly`, `docs:dev`, `docs:build`, `docs:preview`
96125

126+
#### ccstatusline Config Externalization
127+
- **Widget config extracted** from inline `jq -n` generation in `install.sh` into `config/defaults/ccstatusline-settings.json` — editable JSON file, single source of truth
128+
- **File-manifest deployment** — two new entries deploy the config to `~/.config/ccstatusline/settings.json` (if-changed) and `/usr/local/share/ccstatusline/settings.template.json` (always)
129+
- **`${HOME}` variable expansion** added to `setup-config.sh` — enables manifest entries targeting user home directory paths
130+
131+
#### Development Rules
132+
- **CLAUDE.md** (project root) — added changelog and documentation update rules: all changes must have a changelog entry and update relevant docs
133+
97134
### Changed
98135

136+
#### ccstatusline Feature
137+
- `install.sh` simplified — removed ~90 lines of inline JSON config generation, validation, and template creation. Config deployment now handled by file-manifest system
138+
99139
#### Workspace Scope Guard
100140
- Reads (Read, Glob, Grep) now **hard-blocked** outside scope — upgraded from warning (exit 0) to block (exit 2)
101141
- Allowlist trimmed to `/workspaces/.claude/` and `/tmp/` only — removed `/workspaces/.devcontainer/`, `/workspaces/.tmp/`, `/home/vscode/`

docs/src/styles/global.css

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -266,13 +266,15 @@ body header {
266266
Sidebar Refinements
267267
============================================ */
268268

269-
/* Active sidebar link — ember left-border accent with background */
269+
/* Active sidebar link — ember left-border accent with visible background */
270270
nav[aria-label="Main"] a[aria-current="page"],
271271
.sidebar-content a[aria-current="page"] {
272272
border-inline-start: 2px solid var(--sl-color-accent);
273273
padding-inline-start: calc(1rem - 2px);
274-
background: hsla(25, 80%, 50%, 0.08);
274+
background: hsla(25, 80%, 50%, 0.14);
275275
border-radius: 0 6px 6px 0;
276+
font-weight: 600;
277+
color: var(--sl-color-accent-high);
276278
}
277279

278280
/* ============================================

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "codeforge-dev",
3-
"version": "1.14.1",
3+
"version": "1.14.2",
44
"description": "Complete development container that sets up Claude Code with modular devcontainer features, modern dev tools, and persistent configurations. Drop it into any project and get a production-ready AI development environment in minutes.",
55
"main": "setup.js",
66
"bin": {

0 commit comments

Comments
 (0)