jekyll-theme-zer0 1.13.0 → 1.13.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.
- checksums.yaml +4 -4
- data/CHANGELOG.md +11 -0
- data/README.md +4 -4
- data/_data/backlog.yml +26 -4
- data/_plugins/sanitize_config_filter.rb +37 -0
- metadata +2 -1
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 8ad83858a690a41ecdcffeb9d1666bdb477c74f5dc0e203bc0059a56e7ed68a2
|
|
4
|
+
data.tar.gz: 88b906b270107cc25861394ff63b9772b9b1758c39315a2758bbe45f42ec00cc
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: a24b1b809afaff0913078bbdbf5ba74799c757d330203ef54f0bccc21e8d4fe82920430ce3d981a540bcea0ac89f8e31b1284eb92db60d0f89c3986b16891126
|
|
7
|
+
data.tar.gz: 01dd7a1a0ae1ab4f82936db64ecd509280c76714e80ae55be46c0f67dbca6c59efd5f7590960d11f46237380b6b680873f816e6bb72845d7726c24137b57e4c6
|
data/CHANGELOG.md
CHANGED
|
@@ -5,6 +5,17 @@ All notable changes to this project will be documented in this file.
|
|
|
5
5
|
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
|
|
6
6
|
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
7
7
|
|
|
8
|
+
## [1.13.1] - 2026-06-11
|
|
9
|
+
|
|
10
|
+
### Changed
|
|
11
|
+
- Version bump: patch release
|
|
12
|
+
|
|
13
|
+
### Commits in this release
|
|
14
|
+
- 583fa997 fix(infra): sanitize sensitive config keys before DOM injection (T-009) (#141)
|
|
15
|
+
|
|
16
|
+
### Security
|
|
17
|
+
- **Admin config page sanitization (T-009)**: the hidden `<pre id="cfg-full-yaml">` element on the admin config page now has values masked for keys matching `api_key`, `secret`, `password`, `token`, and `phc_` (PostHog) prefixes via a new `sanitize_config_yaml` Liquid filter (`_plugins/sanitize_config_filter.rb`); the corresponding Playwright regression guard (`test/visual/security.spec.js`) is promoted from `test.fixme` to a live test
|
|
18
|
+
|
|
8
19
|
## [1.13.0] - 2026-06-11
|
|
9
20
|
|
|
10
21
|
### Changed
|
data/README.md
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
title: zer0-mistakes
|
|
3
3
|
sub-title: AI-Native Jekyll Theme
|
|
4
4
|
description: AI-native Jekyll theme for GitHub Pages — Docker-first development, AI-powered installation, multi-agent integration (Copilot, Codex, Cursor, Claude), AI preview-image generation, and AIEO content optimization with Bootstrap 5.3.
|
|
5
|
-
version: 1.13.
|
|
5
|
+
version: 1.13.1
|
|
6
6
|
layout: landing
|
|
7
7
|
tags:
|
|
8
8
|
- jekyll
|
|
@@ -20,7 +20,7 @@ categories:
|
|
|
20
20
|
- bootstrap
|
|
21
21
|
- ai-tooling
|
|
22
22
|
created: 2024-02-10T23:51:11.480Z
|
|
23
|
-
lastmod: 2026-06-
|
|
23
|
+
lastmod: 2026-06-11T21:37:24.000Z
|
|
24
24
|
draft: false
|
|
25
25
|
permalink: /
|
|
26
26
|
slug: zer0
|
|
@@ -909,7 +909,7 @@ git push origin feature/awesome-feature
|
|
|
909
909
|
|
|
910
910
|
| Metric | Value |
|
|
911
911
|
|--------|-------|
|
|
912
|
-
| **Current Version** | 1.13.
|
|
912
|
+
| **Current Version** | 1.13.1 ([RubyGems](https://rubygems.org/gems/jekyll-theme-zer0), [CHANGELOG](/CHANGELOG)) |
|
|
913
913
|
| **Documented Features** | 43 ([Feature Registry](https://github.com/bamr87/zer0-mistakes/blob/main/_data/features.yml)) |
|
|
914
914
|
| **Setup Time** | 2-5 minutes ([install.sh benchmarks](https://github.com/bamr87/zer0-mistakes/blob/main/install.sh)) |
|
|
915
915
|
| **Documentation Pages** | 70+ ([browse docs](https://zer0-mistakes.com/pages/)) |
|
|
@@ -964,6 +964,6 @@ And these AI partners that make zer0-mistakes truly AI-native:
|
|
|
964
964
|
|
|
965
965
|
**Built with ❤️ — and a little help from our AI partners — for the Jekyll community**
|
|
966
966
|
|
|
967
|
-
**v1.13.
|
|
967
|
+
**v1.13.1** • [Changelog](CHANGELOG.md) • [License](LICENSE) • [Contributing](CONTRIBUTING.md) • [AI Agent Guide](AGENTS.md)
|
|
968
968
|
|
|
969
969
|
|
data/_data/backlog.yml
CHANGED
|
@@ -55,8 +55,8 @@
|
|
|
55
55
|
|
|
56
56
|
meta:
|
|
57
57
|
title: "zer0-mistakes Backlog"
|
|
58
|
-
updated: 2026-06-
|
|
59
|
-
next_id:
|
|
58
|
+
updated: 2026-06-11
|
|
59
|
+
next_id: 18
|
|
60
60
|
|
|
61
61
|
tasks:
|
|
62
62
|
# --- Housekeeping (seeded so the loop has work on day one) ------------------
|
|
@@ -213,7 +213,7 @@ tasks:
|
|
|
213
213
|
|
|
214
214
|
- id: T-009
|
|
215
215
|
title: "Sanitize sensitive config keys from admin config-page DOM injection"
|
|
216
|
-
status:
|
|
216
|
+
status: done
|
|
217
217
|
priority: P1
|
|
218
218
|
area: infra
|
|
219
219
|
risk: standard
|
|
@@ -231,7 +231,7 @@ tasks:
|
|
|
231
231
|
- "The visible config display in the admin UI is unaffected (only the raw hidden element is sanitised)."
|
|
232
232
|
links: { issue: null, pr: null, roadmap: null }
|
|
233
233
|
created: 2026-06-01
|
|
234
|
-
updated: 2026-06-
|
|
234
|
+
updated: 2026-06-11
|
|
235
235
|
|
|
236
236
|
- id: T-010
|
|
237
237
|
title: "Complete v1.9 quickstart docs rewrite with getting-started guide and screenshots"
|
|
@@ -403,3 +403,25 @@ tasks:
|
|
|
403
403
|
created: 2026-06-10
|
|
404
404
|
updated: 2026-06-10
|
|
405
405
|
|
|
406
|
+
- id: T-017
|
|
407
|
+
title: "Fix yamllint violations in .github/workflows/version-bump.yml"
|
|
408
|
+
status: open
|
|
409
|
+
priority: P2
|
|
410
|
+
area: lint
|
|
411
|
+
risk: low
|
|
412
|
+
effort: S
|
|
413
|
+
source: audit
|
|
414
|
+
summary: >-
|
|
415
|
+
`.github/workflows/version-bump.yml` has ~30 trailing-space lines, two
|
|
416
|
+
indentation errors, and one brackets error that cause the `auto-version`
|
|
417
|
+
integration test (which runs yamllint) to fail in CI on every PR. Discovered
|
|
418
|
+
while babysitting PR #141 — the file was unchanged by that PR, confirming
|
|
419
|
+
the failures are pre-existing.
|
|
420
|
+
acceptance:
|
|
421
|
+
- "`yamllint -c .github/config/.yamllint.yml .github/workflows/version-bump.yml` exits 0."
|
|
422
|
+
- "`./scripts/test/integration/auto-version` passes the 'version-bump workflow syntax' check."
|
|
423
|
+
- "No functional change to the workflow logic."
|
|
424
|
+
links: { issue: null, pr: null, roadmap: null }
|
|
425
|
+
created: 2026-06-11
|
|
426
|
+
updated: 2026-06-11
|
|
427
|
+
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
# File: sanitize_config_filter.rb
|
|
4
|
+
# Path: _plugins/sanitize_config_filter.rb
|
|
5
|
+
# Purpose: Liquid filter that masks sensitive key-value pairs in raw YAML
|
|
6
|
+
# before the content is injected into the DOM. Used by the admin
|
|
7
|
+
# config page to sanitize <pre id="cfg-full-yaml">.
|
|
8
|
+
#
|
|
9
|
+
# Masked patterns:
|
|
10
|
+
# Key names: api_key, apikey, secret, password, token (case-insensitive)
|
|
11
|
+
# Value prefix: phc_ (PostHog project API keys)
|
|
12
|
+
|
|
13
|
+
module Jekyll
|
|
14
|
+
module SanitizeConfigFilter
|
|
15
|
+
# Matches YAML lines whose key name is a common secret identifier.
|
|
16
|
+
SENSITIVE_KEY_RE = /\A(\s*(?:api[_-]?key|secret|password|token)\s*:)/i.freeze
|
|
17
|
+
# Matches PostHog project API key values anywhere on a line.
|
|
18
|
+
PHC_VALUE_RE = /phc_[A-Za-z0-9]+/.freeze
|
|
19
|
+
|
|
20
|
+
def sanitize_config_yaml(input)
|
|
21
|
+
return input unless input.is_a?(String)
|
|
22
|
+
|
|
23
|
+
input.each_line.map do |line|
|
|
24
|
+
if SENSITIVE_KEY_RE.match?(line)
|
|
25
|
+
# Keep the key name and colon; replace everything after with [REDACTED]
|
|
26
|
+
line.sub(/(:\s*).*$/, '\1[REDACTED]')
|
|
27
|
+
elsif PHC_VALUE_RE.match?(line)
|
|
28
|
+
line.gsub(PHC_VALUE_RE, '[REDACTED]')
|
|
29
|
+
else
|
|
30
|
+
line
|
|
31
|
+
end
|
|
32
|
+
end.join
|
|
33
|
+
end
|
|
34
|
+
end
|
|
35
|
+
end
|
|
36
|
+
|
|
37
|
+
Liquid::Template.register_filter(Jekyll::SanitizeConfigFilter)
|
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: jekyll-theme-zer0
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 1.13.
|
|
4
|
+
version: 1.13.1
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Amr Abdel
|
|
@@ -220,6 +220,7 @@ files:
|
|
|
220
220
|
- _plugins/content_statistics_generator.rb
|
|
221
221
|
- _plugins/obsidian_links.rb
|
|
222
222
|
- _plugins/preview_image_generator.rb
|
|
223
|
+
- _plugins/sanitize_config_filter.rb
|
|
223
224
|
- _plugins/search_and_sitemap_generator.rb
|
|
224
225
|
- _plugins/theme_version.rb
|
|
225
226
|
- _sass/components/_back-to-top.scss
|