@sebastienrousseau/dotfiles 0.2.500 → 0.2.502

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.
Files changed (237) hide show
  1. package/CHANGELOG.md +154 -0
  2. package/README.md +113 -45
  3. package/docs/.vitepress/reports/localization-readability-audit.md +4 -0
  4. package/docs/AI.md +8 -2
  5. package/docs/CNAME +1 -0
  6. package/docs/COPYRIGHT +1 -1
  7. package/docs/NAMING_CONVENTIONS.md +7 -0
  8. package/docs/README.md +4 -0
  9. package/docs/_config.yml +59 -0
  10. package/docs/adr/ADR-001-ci-cd-pipeline.md +17 -0
  11. package/docs/adr/ADR-002-shell-performance.md +9 -0
  12. package/docs/adr/ADR-003-security-first.md +18 -0
  13. package/docs/adr/ADR-004-cli-architecture.md +14 -0
  14. package/docs/adr/ADR-005-chezmoi-choice.md +10 -0
  15. package/docs/adr/ADR-006-shell-selection.md +9 -0
  16. package/docs/adr/ADR-007-multi-shell-parity.md +10 -1
  17. package/docs/adr/ADR-008-alias-system-architecture.md +10 -0
  18. package/docs/adr/ADR-009-wallpaper-driven-theming.md +131 -0
  19. package/docs/adr/ADR-010-starship-transient-prompt.md +144 -0
  20. package/docs/adr/ADR-011-nushell-tier3-keep.md +144 -0
  21. package/docs/adr/README.md +7 -0
  22. package/docs/architecture/ARCHITECTURE.md +4 -0
  23. package/docs/architecture/INTEROP.md +8 -0
  24. package/docs/architecture/REPO_LAYOUT.md +5 -1
  25. package/docs/architecture/WALKTHROUGH.md +4 -0
  26. package/docs/architecture/fleet-deployment.md +4 -0
  27. package/docs/archive/EUXIS_2026_REVIEW.md +11 -3
  28. package/docs/archive/LEGACY_ROADMAP.md +45 -27
  29. package/docs/archive/MILESTONE_v0.2.493.md +4 -0
  30. package/docs/archive/PLAN.md +46 -8
  31. package/docs/archive/REPO_AUDIT.md +8 -0
  32. package/docs/guides/INSTALL.md +4 -0
  33. package/docs/guides/NEOVIM_IDE_GUIDE.md +9 -0
  34. package/docs/guides/THEMING.md +8 -0
  35. package/docs/guides/TROUBLESHOOTING.md +28 -0
  36. package/docs/guides/WSL2_NIX_TROUBLESHOOTING.md +70 -1
  37. package/docs/index.md +6 -2
  38. package/docs/interop/A2A.md +7 -0
  39. package/docs/interop/POWERSHELL.md +102 -0
  40. package/docs/manual/00-introduction.md +5 -1
  41. package/docs/manual/01-concepts/01-architecture.md +4 -0
  42. package/docs/manual/01-concepts/02-trust-model.md +6 -2
  43. package/docs/manual/01-concepts/03-theme-engine.md +4 -0
  44. package/docs/manual/01-concepts/04-fleet.md +7 -1
  45. package/docs/manual/01-concepts/05-self-healing.md +8 -1
  46. package/docs/manual/02-tutorials/01-first-install.md +5 -0
  47. package/docs/manual/02-tutorials/02-add-wallpaper.md +5 -0
  48. package/docs/manual/02-tutorials/03-create-profile.md +6 -0
  49. package/docs/manual/02-tutorials/04-encrypt-secret.md +6 -0
  50. package/docs/manual/02-tutorials/05-deploy-fleet.md +5 -1
  51. package/docs/manual/03-reference/01-dot-cli.md +67 -45
  52. package/docs/manual/03-reference/02-config-files.md +8 -2
  53. package/docs/manual/03-reference/03-environment.md +4 -0
  54. package/docs/manual/03-reference/04-templates.md +7 -1
  55. package/docs/manual/03-reference/05-feature-flags.md +72 -3
  56. package/docs/manual/04-cookbook/01-recipes.md +4 -0
  57. package/docs/manual/04-cookbook/02-troubleshooting.md +32 -0
  58. package/docs/manual/04-cookbook/03-faq.md +8 -0
  59. package/docs/manual/05-appendices/A-platform-matrix.md +4 -0
  60. package/docs/manual/05-appendices/B-security-checklist.md +6 -0
  61. package/docs/manual/05-appendices/C-glossary.md +4 -0
  62. package/docs/manual/05-appendices/D-bibliography.md +5 -1
  63. package/docs/manual/05-appendices/E-license.md +4 -0
  64. package/docs/manual/_toc.yml +1 -1
  65. package/docs/manual/command-index.md +16 -8
  66. package/docs/manual/concept-index.md +4 -0
  67. package/docs/manual/index.md +66 -0
  68. package/docs/operations/ATTESTATION.md +5 -0
  69. package/docs/operations/CI_CADENCE.md +107 -0
  70. package/docs/operations/CI_COMPOSITES.md +156 -0
  71. package/docs/operations/COMPLETIONS.md +123 -0
  72. package/docs/operations/COVERAGE.md +182 -0
  73. package/docs/operations/DRIFT.md +107 -0
  74. package/docs/operations/HARD_AUDIT_2026.md +631 -0
  75. package/docs/operations/MAINTENANCE.md +5 -1
  76. package/docs/operations/MIGRATION.md +14 -6
  77. package/docs/operations/OPERATIONS.md +24 -0
  78. package/docs/operations/PERFORMANCE.md +133 -0
  79. package/docs/operations/REGISTRY.md +89 -0
  80. package/docs/operations/RELIABILITY.md +6 -0
  81. package/docs/operations/ROADMAP.md +36 -18
  82. package/docs/operations/ROADMAP_2026.md +665 -0
  83. package/docs/operations/TESTING.md +4 -0
  84. package/docs/operations/TRACEABILITY.md +7 -0
  85. package/docs/operations/TRUSTED_AGENT_WORKSTATION.md +4 -0
  86. package/docs/operations/VERSION_SYNC.md +54 -5
  87. package/docs/reference/ALIASES.md +7 -0
  88. package/docs/reference/ALIASES_CHEATSHEET.md +5 -1
  89. package/docs/reference/ALIASES_DEPRECATIONS.md +5 -1
  90. package/docs/reference/FEATURES.md +4 -0
  91. package/docs/reference/FONTS.md +4 -0
  92. package/docs/reference/POWERSHELL_PARITY.md +80 -0
  93. package/docs/reference/PROFILES.md +4 -0
  94. package/docs/reference/SCREENSHOTS.md +4 -0
  95. package/docs/reference/SCRIPTS.md +4 -0
  96. package/docs/reference/SUPPORT_MATRIX.md +10 -4
  97. package/docs/reference/THEMES.md +4 -0
  98. package/docs/reference/TOOLS.md +4 -0
  99. package/docs/reference/UTILS.md +16 -12
  100. package/docs/registry.json +6 -0
  101. package/docs/security/AI_ACT_COMPLIANCE.md +4 -0
  102. package/docs/security/AUDIT_BYPASS.md +103 -0
  103. package/docs/security/AUTOMATION_SECRETS.md +4 -0
  104. package/docs/security/CI_EGRESS_ALLOWLIST.md +127 -0
  105. package/docs/security/CI_PINNING.md +113 -0
  106. package/docs/security/COMMIT_SIGNING.md +138 -0
  107. package/docs/security/COMPLIANCE.md +5 -0
  108. package/docs/security/DEPS_DEV_EXCEPTIONS.md +86 -0
  109. package/docs/security/DISCLOSURE.md +130 -0
  110. package/docs/security/ENCRYPTION.md +5 -0
  111. package/docs/security/FMEA.md +4 -0
  112. package/docs/security/HISTORY_FILTERING.md +132 -0
  113. package/docs/security/INCIDENT_RESPONSE.md +4 -0
  114. package/docs/security/INSTALL_VERIFICATION.md +122 -0
  115. package/docs/security/KEYS.md +4 -0
  116. package/docs/security/KEY_ROTATION.md +85 -1
  117. package/docs/security/MCP_POLICY.md +9 -0
  118. package/docs/security/POLICY_RELEASES.md +4 -0
  119. package/docs/security/README.md +4 -0
  120. package/docs/security/SCORECARD.md +140 -0
  121. package/docs/security/SECRETS.md +12 -0
  122. package/docs/security/SECURITY.md +4 -0
  123. package/docs/security/SECURITY_CHECKLIST.md +11 -0
  124. package/docs/security/SHELL_EXEMPTIONS.md +145 -0
  125. package/docs/security/SOUP_REGISTER.md +4 -0
  126. package/docs/security/THREAT_MODEL.md +10 -0
  127. package/docs/security/VERIFICATION_VALIDATION.md +5 -1
  128. package/docs/security/security-pubkey.asc +15 -0
  129. package/docs/themes/README.md +4 -0
  130. package/docs/themes/VISUAL_INTEGRITY_REPORT.md +4 -0
  131. package/dot_config/ai/identity.md +3 -0
  132. package/dot_config/ai/patterns/architect.md +2 -0
  133. package/dot_config/ai/patterns/hardener.md +2 -0
  134. package/dot_config/ai/patterns/refactor.md +2 -0
  135. package/dot_config/alacritty/alacritty.toml.tmpl +3 -3
  136. package/dot_config/atuin/config.toml.tmpl +47 -0
  137. package/dot_config/dotfiles/agent-card.json +1 -1
  138. package/dot_config/dotfiles/boot/README.md +2 -0
  139. package/dot_config/dotfiles/grub/README.md +2 -0
  140. package/dot_config/dotfiles/lock/README.md +2 -0
  141. package/dot_config/fish/conf.d/direnv.fish +4 -0
  142. package/dot_config/fish/conf.d/init.fish.tmpl +21 -0
  143. package/dot_config/fish/conf.d/mise-activate.fish +5 -0
  144. package/dot_config/fish/functions/_cached_eval.fish +84 -11
  145. package/dot_config/fish/functions/_cached_eval_clear.fish +17 -0
  146. package/dot_config/foot/foot.ini.tmpl +3 -3
  147. package/dot_config/fuzzel/fuzzel.ini.tmpl +2 -2
  148. package/dot_config/ghostty/config.tmpl +3 -3
  149. package/dot_config/git/hooks/executable_commit-msg +146 -0
  150. package/dot_config/goose/config.yaml +2 -2
  151. package/dot_config/gtk-3.0/gtk.css.tmpl +2 -2
  152. package/dot_config/gtk-3.0/settings.ini.tmpl +2 -2
  153. package/dot_config/gtk-4.0/gtk.css.tmpl +2 -2
  154. package/dot_config/gtk-4.0/settings.ini.tmpl +2 -2
  155. package/dot_config/kitty/kitty.conf.tmpl +3 -3
  156. package/dot_config/mise/config.toml +1 -1
  157. package/dot_config/niri/config.kdl.tmpl +2 -2
  158. package/dot_config/nushell/cached_eval.nu +80 -0
  159. package/dot_config/nushell/env.nu.tmpl +21 -13
  160. package/dot_config/shell/00-core-paths.sh.tmpl +9 -1
  161. package/dot_config/shell/05-core-safety.sh +1 -0
  162. package/dot_config/shell/10-secrets.sh +1 -0
  163. package/dot_config/shell/40-fzf-defaults.sh.tmpl +1 -0
  164. package/dot_config/shell/40-ls-colors.sh +1 -0
  165. package/dot_config/shell/50-logic-functions-core.sh.tmpl +1 -0
  166. package/dot_config/shell/50-logic-functions.sh.tmpl +1 -0
  167. package/dot_config/shell/51-logic-functions-extra.sh.tmpl +1 -0
  168. package/dot_config/shell/90-ux-aliases.sh.tmpl +1 -0
  169. package/dot_config/shell/91-ux-aliases-lazy.sh.tmpl +1 -0
  170. package/dot_config/shell/README.md +25 -8
  171. package/dot_config/starship.toml.tmpl +2 -2
  172. package/dot_config/tmux/tmux.conf.tmpl +3 -3
  173. package/dot_config/user-dirs.dirs +1 -0
  174. package/dot_config/vscode/settings.json.tmpl +2 -2
  175. package/dot_config/waybar/config.jsonc.tmpl +2 -2
  176. package/dot_config/waybar/style.css.tmpl +2 -2
  177. package/dot_config/wezterm/wezterm.lua.tmpl +3 -3
  178. package/dot_config/zsh/dot_zshrc.tmpl +207 -17
  179. package/dot_config/zsh/rc.d/00-alias-shims.zsh +28 -6
  180. package/dot_config/zsh/rc.d/30-options.zsh.tmpl +27 -7
  181. package/dot_local/bin/executable_bm +2 -0
  182. package/dot_local/bin/executable_dot +56 -9
  183. package/dot_local/bin/executable_dot-bootstrap +0 -1
  184. package/dot_local/bin/executable_dot-load-benchmark +1 -1
  185. package/dot_local/bin/executable_dot-theme-sync +8 -8
  186. package/dot_local/bin/executable_notify +2 -0
  187. package/dot_local/bin/executable_open +2 -0
  188. package/dot_local/bin/executable_tour +4 -2
  189. package/dot_local/bin/executable_up +3 -1
  190. package/dot_local/share/man/man1/dot.1 +1 -1
  191. package/dot_local/share/zsh/completions/_dot +4 -0
  192. package/install.sh +53 -38
  193. package/package.json +1 -1
  194. package/scripts/ci/check-dangerous-chmod.sh +19 -0
  195. package/scripts/ci/check-deps-dev.sh +236 -0
  196. package/scripts/ci/check-insecure-tls.sh +61 -0
  197. package/scripts/ci/check-regression-traceability.sh +67 -0
  198. package/scripts/ci/check-shell-preamble.sh +106 -0
  199. package/scripts/ci/dot-cli-startup-bench.sh +126 -0
  200. package/scripts/ci/install-chezmoi-verified.sh +4 -1
  201. package/scripts/ci/lint-reusable-pins.sh +78 -0
  202. package/scripts/ci/run-coverage.sh +451 -0
  203. package/scripts/ci/validate-chezmoidata.sh +25 -0
  204. package/scripts/ci/windows-smoke-test.ps1 +136 -0
  205. package/scripts/diagnostics/doctor.sh +203 -5
  206. package/scripts/diagnostics/drift-dashboard.sh +177 -13
  207. package/scripts/diagnostics/health.sh +21 -4
  208. package/scripts/diagnostics/perf.sh +304 -77
  209. package/scripts/diagnostics/workstation-attestation.sh +6 -1
  210. package/scripts/dot/commands/agent.sh +33 -27
  211. package/scripts/dot/commands/agents.sh +325 -0
  212. package/scripts/dot/commands/ai.sh +75 -10
  213. package/scripts/dot/commands/aliases.sh +10 -8
  214. package/scripts/dot/commands/core.sh +10 -4
  215. package/scripts/dot/commands/fleet.sh +278 -3
  216. package/scripts/dot/commands/init.sh +184 -0
  217. package/scripts/dot/commands/meta.sh +7 -4
  218. package/scripts/dot/commands/registry.sh +263 -0
  219. package/scripts/dot/commands/tools.sh +49 -1
  220. package/scripts/dot/lib/bento.sh +2 -1
  221. package/scripts/dot/lib/log.sh +6 -0
  222. package/scripts/dot/lib/platform.sh +22 -8
  223. package/scripts/dot/lib/ui.sh +145 -2
  224. package/scripts/dot/lib/utils.sh +6 -1
  225. package/scripts/git-hooks/pre-commit-audit.sh +1 -1
  226. package/scripts/git-hooks/pre-push +66 -3
  227. package/scripts/lib/secrets_provider.sh +32 -6
  228. package/scripts/ops/heal-chezmoi.sh +41 -6
  229. package/scripts/ops/rollback.sh +14 -0
  230. package/scripts/qa/powershell-contract.ps1 +95 -0
  231. package/scripts/security/check-disclosure-key-expiry.sh +110 -0
  232. package/scripts/security/lock-configs.sh +11 -2
  233. package/scripts/theme/merge-wallpaper.sh +4 -0
  234. package/scripts/theme/switch.sh +20 -10
  235. package/scripts/version-sync.sh +3 -0
  236. package/dot_config/atuin/config.toml +0 -40
  237. package/dot_local/bin/__pycache__/executable_dot-load-benchmark-ptycpython-312.pyc +0 -0
@@ -1,3 +1,7 @@
1
+ ---
2
+ render_with_liquid: false
3
+ ---
4
+
1
5
  # Behavioral Traceability
2
6
 
3
7
  This matrix ties core internal behaviors to implementation files, automated tests, and prose documentation.
@@ -29,3 +33,6 @@ It is enforced by `bash ./scripts/qa/traceability-coverage.sh`.
29
33
  | BT-21 | WSL parity contract | `scripts/qa/wsl-contract.sh` | `tests/unit/misc/test_qa_reliability.sh` | `docs/operations/RELIABILITY.md`, `docs/reference/SUPPORT_MATRIX.md` |
30
34
  | BT-22 | Internal behavior traceability contract | `scripts/qa/traceability-coverage.sh` | `tests/unit/misc/test_qa_traceability_coverage.sh` | `docs/operations/TRACEABILITY.md`, `docs/operations/RELIABILITY.md` |
31
35
  | BT-23 | Multi-format Manual pipeline | `scripts/docs/build-manual.sh`, `scripts/docs/check-manual.sh`, `scripts/dot/commands/manual.sh` | `tests/unit/docs/test_build_manual.sh`, `tests/unit/docs/test_check_manual.sh`, `tests/unit/dot-cli/test_dot_commands_manual.sh` | `docs/manual/`, `docs/README.md`, `README.md` |
36
+ | BT-24 | Multi-harness AI agent context (AGENTS.md generator) | `scripts/dot/commands/agents.sh` | `tests/unit/auto/test_auto_dot_driver.sh` | `AGENTS.md`, `CLAUDE.md`, `docs/operations/HARD_AUDIT_2026.md` |
37
+ | BT-25 | Bootstrap foreign dotfiles repo through chezmoi harness | `scripts/dot/commands/init.sh` | `tests/unit/auto/test_auto_dot_driver.sh` | `docs/operations/ROADMAP_2026.md`, `docs/manual/03-reference/01-dot-cli.md` |
38
+ | BT-26 | Module registry discovery and install scaffold | `scripts/dot/commands/registry.sh` | `tests/unit/auto/test_auto_dot_driver.sh` | `docs/operations/REGISTRY.md`, `docs/registry.json` |
@@ -1,3 +1,7 @@
1
+ ---
2
+ render_with_liquid: false
3
+ ---
4
+
1
5
  # Trusted Agent Workstation
2
6
 
3
7
  This repository is more than shell setup.
@@ -1,3 +1,7 @@
1
+ ---
2
+ render_with_liquid: false
3
+ ---
4
+
1
5
  # Version Synchronization System
2
6
 
3
7
  The version synchronization system ensures that all version references across the repository remain consistent with the version specified in `package.json`.
@@ -5,7 +9,9 @@ The version synchronization system ensures that all version references across th
5
9
  ## Overview
6
10
 
7
11
  ### Problem Statement
12
+
8
13
  Large repositories often have version numbers scattered across multiple files:
14
+
9
15
  - README badges
10
16
  - Documentation headers
11
17
  - Feature version stamps
@@ -14,7 +20,9 @@ Large repositories often have version numbers scattered across multiple files:
14
20
  Manually keeping these synchronized is error-prone and time-consuming.
15
21
 
16
22
  ### Solution Architecture
23
+
17
24
  This system provides automated version synchronization through:
25
+
18
26
  1. **CI/CD Workflow** (`.github/workflows/sync-versions.yml`) - Automated synchronization on version changes
19
27
  2. **Local Script** (`scripts/version-sync.sh`) - Manual synchronization and verification
20
28
  3. **Verification System** - Ensures all references remain consistent
@@ -26,17 +34,20 @@ This system provides automated version synchronization through:
26
34
  **Location**: `.github/workflows/sync-versions.yml`
27
35
 
28
36
  **Triggers**:
37
+
29
38
  - Push to `master` branch when `package.json` changes
30
39
  - Pull requests affecting `package.json`
31
40
  - Manual dispatch with optional target version
32
41
 
33
42
  **Process**:
43
+
34
44
  1. **Detect Changes** - Compares current vs previous `package.json` version
35
45
  2. **Sync Versions** - Updates all markdown files with version references
36
46
  3. **Verify Consistency** - Ensures all references match target version
37
47
  4. **Commit & Push** - Automatically commits changes (except on PRs)
38
48
 
39
49
  **Features**:
50
+
40
51
  - Backup creation before changes
41
52
  - Comprehensive change reporting
42
53
  - PR comment integration
@@ -47,6 +58,7 @@ This system provides automated version synchronization through:
47
58
  **Location**: `scripts/version-sync.sh`
48
59
 
49
60
  **Usage**:
61
+
50
62
  ```bash
51
63
  # Sync to current package.json version
52
64
  ./scripts/version-sync.sh
@@ -62,6 +74,7 @@ This system provides automated version synchronization through:
62
74
  ```
63
75
 
64
76
  **Options**:
77
+
65
78
  - `--dry-run` - Preview changes without applying
66
79
  - `--verify` - Check version consistency only
67
80
  - `--backup` / `--no-backup` - Control backup creation
@@ -72,15 +85,17 @@ This system provides automated version synchronization through:
72
85
  The system recognizes and updates these patterns:
73
86
 
74
87
  #### README.md
88
+
75
89
  ```markdown
76
- [![Version](https://img.shields.io/badge/Version-v0.2.500-blue?style=for-the-badge)]
90
+ [![Version](https://img.shields.io/badge/Version-v0.2.501-blue?style=for-the-badge)]
77
91
  ```
78
92
 
79
93
  #### Documentation Files
94
+
80
95
  ```markdown
81
- **Version**: v0.2.500
82
- **Dotfiles Version**: v0.2.500
83
- Version: v0.2.500
96
+ **Version**: v0.2.502
97
+ **Dotfiles Version**: v0.2.502
98
+ Version: v0.2.502
84
99
  version 0.2.485
85
100
  ```
86
101
 
@@ -126,6 +141,7 @@ Version changes in `package.json` automatically trigger synchronization:
126
141
  ## Workflow Examples
127
142
 
128
143
  ### Scenario 1: Version Bump
144
+
129
145
  ```bash
130
146
  # Developer updates package.json version
131
147
  npm version patch
@@ -141,6 +157,7 @@ git push origin master
141
157
  ```
142
158
 
143
159
  ### Scenario 2: PR Review
160
+
144
161
  ```bash
145
162
  # PR with package.json changes
146
163
  # GitHub Actions automatically:
@@ -151,6 +168,7 @@ git push origin master
151
168
  ```
152
169
 
153
170
  ### Scenario 3: Manual Sync
171
+
154
172
  ```bash
155
173
  # Local development
156
174
  ./scripts/version-sync.sh --dry-run # Preview changes
@@ -161,19 +179,25 @@ git push origin master
161
179
  ## File Detection Logic
162
180
 
163
181
  ### Automatic Discovery
182
+
164
183
  The system automatically discovers files containing version references:
184
+
165
185
  ```bash
166
186
  rg -l "v?[0-9]+\.[0-9]+\.[0-9]+" --type md
167
187
  ```
168
188
 
169
189
  ### Known Files
190
+
170
191
  These files are always included even if they don't currently contain versions:
192
+
171
193
  - `README.md`
172
194
  - `docs/reference/FEATURES.md`
173
195
  - Any file matching version patterns
174
196
 
175
197
  ### Exclusions
198
+
176
199
  Files that are intentionally excluded:
200
+
177
201
  - `CHANGELOG.md` - May contain historical versions
178
202
  - `package.json` - Source of truth
179
203
  - `docs/security/COMPLIANCE.md` - Includes external compliance spec versions
@@ -191,26 +215,33 @@ Files that are intentionally excluded:
191
215
  ### Common Issues
192
216
 
193
217
  #### Version Mismatch
218
+
194
219
  ```text
195
220
  ❌ Found inconsistent release in docs/reference/FEATURES.md: vX.Y.Z (expected: vA.B.C)
196
221
  ```
222
+
197
223
  **Solution**: Run `./scripts/version-sync.sh` to fix
198
224
 
199
225
  #### Missing Dependencies
226
+
200
227
  ```text
201
228
  ❌ jq is required but not installed
202
229
  ```
230
+
203
231
  **Solution**: Install dependencies (`jq`, `rg`)
204
232
 
205
233
  #### Permission Issues
234
+
206
235
  ```text
207
236
  ❌ Permission denied writing to README.md
208
237
  ```
238
+
209
239
  **Solution**: Check file permissions and Git status
210
240
 
211
241
  ### Recovery Procedures
212
242
 
213
243
  #### Rollback Changes
244
+
214
245
  ```bash
215
246
  # Restore from backup
216
247
  cp .version-sync-backup/README.md.*.backup README.md
@@ -220,6 +251,7 @@ git checkout HEAD~1 -- README.md
220
251
  ```
221
252
 
222
253
  #### Force Resync
254
+
223
255
  ```bash
224
256
  ./scripts/version-sync.sh --force
225
257
  ```
@@ -227,19 +259,23 @@ git checkout HEAD~1 -- README.md
227
259
  ## Monitoring & Maintenance
228
260
 
229
261
  ### Health Checks
262
+
230
263
  ```bash
231
264
  # Daily verification (add to cron)
232
265
  ./scripts/version-sync.sh --verify || echo "Version drift detected"
233
266
  ```
234
267
 
235
268
  ### Metrics Tracking
269
+
236
270
  The GitHub Actions workflow provides metrics:
271
+
237
272
  - Files scanned
238
273
  - Files updated
239
274
  - Verification status
240
275
  - Processing time
241
276
 
242
277
  ### Backup Strategy
278
+
243
279
  - Local backups in `.version-sync-backup/`
244
280
  - GitHub Actions artifacts (30-day retention)
245
281
  - Git history for rollback
@@ -247,6 +283,7 @@ The GitHub Actions workflow provides metrics:
247
283
  ## Security Considerations
248
284
 
249
285
  ### Token Permissions
286
+
250
287
  ```yaml
251
288
  permissions:
252
289
  contents: write # Required for commits
@@ -254,11 +291,13 @@ permissions:
254
291
  ```
255
292
 
256
293
  ### Validation
294
+
257
295
  - Version format validation (`x.y.z` pattern)
258
296
  - File path validation (no directory traversal)
259
297
  - Change verification before commit
260
298
 
261
299
  ### Audit Trail
300
+
262
301
  - All changes logged in Git history
263
302
  - GitHub Actions run history
264
303
  - Backup preservation
@@ -266,16 +305,19 @@ permissions:
266
305
  ## Performance Optimization
267
306
 
268
307
  ### Caching Strategy
308
+
269
309
  - Git operations use shallow fetch when possible
270
310
  - Pattern compilation cached
271
311
  - File discovery optimized with `ripgrep`
272
312
 
273
313
  ### Parallel Processing
314
+
274
315
  - File processing is sequential but optimized
275
316
  - Git operations batched
276
317
  - Verification runs concurrently with updates
277
318
 
278
319
  ### Resource Usage
320
+
279
321
  - Typical run time: 30-60 seconds
280
322
  - Memory usage: <100MB
281
323
  - Network usage: Minimal (only Git operations)
@@ -283,6 +325,7 @@ permissions:
283
325
  ## Future Enhancements
284
326
 
285
327
  ### Planned Features
328
+
286
329
  1. **Smart Version Detection** - Semantic version awareness
287
330
  2. **Template Support** - Custom version patterns
288
331
  3. **Multi-Format Support** - YAML, JSON, TOML files
@@ -290,6 +333,7 @@ permissions:
290
333
  5. **Integration Testing** - End-to-end workflow tests
291
334
 
292
335
  ### Extension Points
336
+
293
337
  - Custom pattern definitions
294
338
  - File-specific update rules
295
339
  - Pre/post-sync hooks
@@ -298,12 +342,14 @@ permissions:
298
342
  ## Troubleshooting
299
343
 
300
344
  ### Debug Mode
345
+
301
346
  ```bash
302
347
  # Enable verbose output
303
348
  DEBUG=1 ./scripts/version-sync.sh --dry-run
304
349
  ```
305
350
 
306
351
  ### Common Solutions
352
+
307
353
  | Issue | Solution |
308
354
  |-------|----------|
309
355
  | Script not executable | `chmod +x scripts/version-sync.sh` |
@@ -313,6 +359,7 @@ DEBUG=1 ./scripts/version-sync.sh --dry-run
313
359
  | Changes not committed | Check branch protection rules |
314
360
 
315
361
  ### Log Analysis
362
+
316
363
  ```bash
317
364
  # View GitHub Actions logs
318
365
  gh run list --workflow=sync-versions.yml
@@ -322,6 +369,7 @@ gh run view <run-id> --log
322
369
  ## Contributing
323
370
 
324
371
  ### Testing Changes
372
+
325
373
  ```bash
326
374
  # Test local changes
327
375
  ./scripts/version-sync.sh --dry-run
@@ -331,6 +379,7 @@ gh workflow run sync-versions.yml --ref feature-branch
331
379
  ```
332
380
 
333
381
  ### Adding New Patterns
382
+
334
383
  1. Update pattern regex in script
335
384
  2. Add test cases
336
385
  3. Update documentation
@@ -339,6 +388,6 @@ gh workflow run sync-versions.yml --ref feature-branch
339
388
  ---
340
389
 
341
390
  **Last Updated**: 2026-02-15
342
- **Version**: v0.2.500
391
+ **Version**: v0.2.502
343
392
  **Maintainer**: Principal Automation Engineer
344
393
  **Status**: Production Ready ✅
@@ -1,3 +1,7 @@
1
+ ---
2
+ render_with_liquid: false
3
+ ---
4
+
1
5
  # Aliases
2
6
 
3
7
  Shell aliases provided by the dotfiles, organized by category in `~/.dotfiles/.chezmoitemplates/aliases/`.
@@ -107,11 +111,13 @@ Shell aliases provided by the dotfiles, organized by category in `~/.dotfiles/.c
107
111
  ## Adding custom aliases
108
112
 
109
113
  1. Create a new file in the appropriate category:
114
+
110
115
  ```bash
111
116
  vim ~/.dotfiles/.chezmoitemplates/aliases/mycategory/mycategory.aliases.sh
112
117
  ```
113
118
 
114
119
  2. Define your aliases:
120
+
115
121
  ```bash
116
122
  # shellcheck shell=bash
117
123
  # My Custom Aliases
@@ -119,6 +125,7 @@ Shell aliases provided by the dotfiles, organized by category in `~/.dotfiles/.c
119
125
  ```
120
126
 
121
127
  3. Apply changes:
128
+
122
129
  ```bash
123
130
  chezmoi apply
124
131
  ```
@@ -1,3 +1,7 @@
1
+ ---
2
+ render_with_liquid: false
3
+ ---
4
+
1
5
  # Alias Cheatsheet
2
6
 
3
7
  Auto-generated from the alias manifest.
@@ -10,7 +14,7 @@ Auto-generated from the alias manifest.
10
14
  | `q` | `quit` |
11
15
  | `e` | `${EDITOR:-nano}` |
12
16
  | `h` | `history` |
13
- | `_` | `sudo ` |
17
+ | `_` | `sudo` |
14
18
  | `i` | `epoch` |
15
19
  | `l` | `dot_ls` |
16
20
  | `ll` | `dot_ll` |
@@ -1,9 +1,13 @@
1
+ ---
2
+ render_with_liquid: false
3
+ ---
4
+
1
5
  # Alias Deprecations
2
6
 
3
7
  This file tracks aliases that we've kept temporarily for backwards compatibility.
4
8
 
5
9
  | Alias | Replacement | Remove In | Note |
6
10
  |-------|-------------|-----------|------|
7
- | `dlogsf` | `dklf` | `v0.2.500` | Removed duplicate logs-follow alias |
11
+ | `dlogsf` | `dklf` | `v0.2.501` | Removed duplicate logs-follow alias |
8
12
 
9
13
  Use `dot aliases why <alias>` to check deprecation status from the CLI.
@@ -1,3 +1,7 @@
1
+ ---
2
+ render_with_liquid: false
3
+ ---
4
+
1
5
  # Feature Flags Reference
2
6
 
3
7
  Feature flags let you turn parts of the dotfiles on or off. All flags live in `.chezmoidata.toml` under `[features]`. Set a flag to `true` to enable it, or `false` to disable it. Changes take effect after you run `dot apply`.
@@ -1,3 +1,7 @@
1
+ ---
2
+ render_with_liquid: false
3
+ ---
4
+
1
5
  # Font configuration
2
6
 
3
7
  How fonts are set up, rendered, and installed in these dotfiles.
@@ -0,0 +1,80 @@
1
+ ---
2
+ render_with_liquid: false
3
+ title: "PowerShell parity matrix"
4
+ description: "What works on Windows-native PowerShell 7.4 LTS / 7.5+ vs the bash surface."
5
+ ---
6
+
7
+ # PowerShell parity matrix
8
+
9
+ This document tracks what is supported on Windows-native PowerShell 7.4 LTS / 7.5+ compared to the bash/zsh surface that ships on macOS and Linux. The repo's positioning has shifted (per [ROADMAP_2026 §6.9](../operations/ROADMAP_2026.md)) to call PowerShell a first-class target rather than "best effort." This page is the contract.
10
+
11
+ ## Support tiers
12
+
13
+ | Tier | Meaning | Examples |
14
+ |---|---|---|
15
+ | **Full** | Native PowerShell path; tested in CI on `windows-latest`. | `dot version`, `dot help`, `dot agents check` (via WSL-bash fallback). |
16
+ | **WSL-bridged** | Runs under WSL2 bash with the same UX as Linux. | All `dot` subcommands, the test suite, the cold-start bench. |
17
+ | **Stub** | The command exists as a PowerShell entry-point but delegates to bash. | `dot init`, `dot fleet apply` (require chezmoi/ssh; both Windows-installable). |
18
+ | **N/A** | The command targets a Unix-only surface and is not exposed on PowerShell. | Wallpaper-driven theming via macOS `defaults`; Linux-only `lock-configs.sh`. |
19
+
20
+ ## Command-by-command matrix
21
+
22
+ | Command | Windows-native | WSL2 | macOS | Linux |
23
+ |---|---|---|---|---|
24
+ | `dot version` | Full | Full | Full | Full |
25
+ | `dot help` | Full | Full | Full | Full |
26
+ | `dot doctor` | Full (subset of checks; some Unix-only checks return N/A) | Full | Full | Full |
27
+ | `dot init <user>` | Full (requires `chezmoi` on PATH — install via `scoop install chezmoi`) | Full | Full | Full |
28
+ | `dot agents render` / `check` / `list` | Stub (bash-bridged — requires bash on PATH; the smoke test calls `bash dot agents check` from pwsh) | Full | Full | Full |
29
+ | `dot fleet status` / `drift` / `events` | Full | Full | Full | Full |
30
+ | `dot fleet apply` | Stub (bash-bridged + requires Windows OpenSSH `ssh.exe` on PATH; no native pwsh-side test in CI yet — tracked in ROADMAP §C5 follow-up) | Full | Full | Full |
31
+ | `dot fleet namespace set` | Full | Full | Full | Full |
32
+ | `dot registry list` / `search` / `info` | Full | Full | Full | Full |
33
+ | `dot registry install <name>` | Scaffold (no behavior yet on any platform) | Scaffold | Scaffold | Scaffold |
34
+ | `dot agent` / `dot mode` | Full | Full | Full | Full |
35
+ | `dot ai` / `dot ai-setup` / `dot ai-query` | Full | Full | Full | Full |
36
+ | AI bridges (`cl`, `codex`, `copilot`, `gemini`, `goose`, etc.) | Full when the underlying AI CLI is installed (scoop / winget / native) | Full | Full | Full |
37
+ | `dot lint` | WSL-bridged (shellcheck/shfmt are Unix-native) | Full | Full | Full |
38
+ | `dot perf` | Full (uses pwsh `Measure-Command` on the PS path) | Full | Full | Full |
39
+ | `dot health` | Full | Full | Full | Full |
40
+ | `dot tools` | Full (uses winget/scoop on Windows; brew/apt elsewhere) | Full | Full | Full |
41
+ | `dot theme` (wallpaper-driven) | Stub (Windows wallpaper API needs additional work) | Stub (X11 only — Wayland support pending) | Full | Full (X11 only) |
42
+ | `dot wallpaper` | Stub | Stub | Full | Full |
43
+ | `dot security firewall` | Full (Windows Defender Firewall via `Set-NetFirewallProfile`) | N/A | Full (pf) | Full (ufw/firewalld) |
44
+ | `dot security lock-configs` | N/A (Windows ACL model differs; tracked) | N/A | Full (`chflags uchg`) | Full (`chattr +i`) |
45
+ | Shell startup integration | Full (`Microsoft.PowerShell_profile.ps1` ships) | Full (zsh, bash, fish) | Full (zsh, bash, fish, nu) | Full (zsh, bash, fish, nu) |
46
+
47
+ ## What CI verifies
48
+
49
+ | Check | Platforms |
50
+ |---|---|
51
+ | `dot version` exits 0 | windows-latest, ubuntu-latest, macos-latest, macos-14 |
52
+ | `dot help` exits 0 | windows-latest, ubuntu-latest, macos-latest, macos-14 |
53
+ | `dot agents check` exits 0 | windows-latest (via bash on PATH), ubuntu-latest, macos-latest, macos-14 |
54
+ | PowerShell ≥ 7.4 | windows-latest (smoke test at `scripts/ci/windows-smoke-test.ps1`) |
55
+ | PSScriptAnalyzer Error-level findings | windows-latest |
56
+ | `chezmoi --version` exits 0 | windows-latest (via scoop), all Unix matrices |
57
+ | `bash scripts/ci/dot-cli-startup-bench.sh` median < 200ms | macos-latest |
58
+ | `bash scripts/ci/dot-cli-startup-bench.sh` median < 150ms | ubuntu-latest |
59
+
60
+ ## Known parity gaps (deferred to follow-up PRs)
61
+
62
+ These are scoped in [`ROADMAP_2026 §C5`](../operations/ROADMAP_2026.md) but not in this PR's scope:
63
+
64
+ 1. **Native PowerShell `dot.ps1` dispatcher.** Today the Windows path either uses `bash dot` (when bash is on PATH via Git for Windows / WSL) or shells out via `pwsh -Command`. A truly idiomatic PowerShell dispatcher with native cmdlet semantics (verb-noun naming, `[CmdletBinding()]`, pipeline support) is a separate effort.
65
+ 2. **Wallpaper-driven theming on Windows.** Requires SystemParametersInfo W32 API or `Set-ItemProperty HKCU:\Control Panel\Desktop`. macOS-native today.
66
+ 3. **`dot security lock-configs` for Windows.** Needs an ACL/EFS-based equivalent of `chattr +i` / `chflags uchg`. Not in this PR's scope; documented here so it doesn't get re-discovered.
67
+ 4. **Native Windows installer signing.** The repo signs the bootstrap tarball via Cosign keyless; a SignTool-signed `install.ps1` for code-signing-enforced enterprises is a future enhancement.
68
+
69
+ ## Source-of-truth files
70
+
71
+ - `.github/workflows/ci.yml` — `test-windows` job (pwsh + scoop + chezmoi + smoke)
72
+ - `scripts/ci/windows-smoke-test.ps1` — the actual gate
73
+ - `dot_config/powershell/Microsoft.PowerShell_profile.ps1` — the deployed PowerShell profile (if present)
74
+ - `scripts/dot/lib/platform.sh` — the dot_path_to_unix/native bridge (H9 audit fix)
75
+
76
+ ## Why this matters
77
+
78
+ The 2026 trend brief flagged Windows-as-first-class as the highest-leverage move post-Codex-Windows-GA (launched 2026-03-04 with 500k waitlist → 2M WAU in 4 weeks). PowerShell 7.4 LTS retires 2026-11-10, so the gate sits at "7.4+" today and will tighten to "7.5+" in November. Documented here so the gate change is not a surprise.
79
+
80
+ Generated 2026-05-16 alongside the round-2 hard audit. Maintained: when adding a `dot` subcommand, update this matrix in the same PR.
@@ -1,3 +1,7 @@
1
+ ---
2
+ render_with_liquid: false
3
+ ---
4
+
1
5
  # Profiles and Machine Setup
2
6
 
3
7
  ## Profile System
@@ -1,3 +1,7 @@
1
+ ---
2
+ render_with_liquid: false
3
+ ---
4
+
1
5
  # Screenshots Gallery
2
6
 
3
7
  Here's how the dotfiles look across different themes and configurations.
@@ -1,3 +1,7 @@
1
+ ---
2
+ render_with_liquid: false
3
+ ---
4
+
1
5
  # Script Catalog
2
6
 
3
7
  Exhaustive catalog of user-facing executables installed from `dot_local/bin/`.
@@ -1,3 +1,7 @@
1
+ ---
2
+ render_with_liquid: false
3
+ ---
4
+
1
5
  # Support Matrix
2
6
 
3
7
  Tested platform and tool combinations for the dotfiles distribution.
@@ -31,10 +35,12 @@ Tested platform and tool combinations for the dotfiles distribution.
31
35
  | Terminal | Status | Notes |
32
36
  |----------|--------|-------|
33
37
  | Ghostty | Supported | Primary, custom config in `dot_config/ghostty/` |
34
- | iTerm2 | Supported | macOS, profile config included |
35
- | Alacritty | Supported | Config in `dot_config/alacritty/` |
36
- | Kitty | Supported | Config in `dot_config/kitty/` |
37
- | WezTerm | Supported | Config in `dot_config/wezterm/` |
38
+ | iTerm2 | Supported | macOS only; auto-installed Dynamic Profile via `run_onchange_22-iterm2-profile.sh.tmpl` (pick "dotfiles" profile in iTerm2) |
39
+ | Alacritty | Supported | Theme-driven, config in `dot_config/alacritty/` |
40
+ | Kitty | Supported | Theme-driven, config in `dot_config/kitty/` |
41
+ | WezTerm | Supported | Theme-driven, config in `dot_config/wezterm/` |
42
+ | Foot | Supported | Linux/Wayland, gated by `features.foot`, config in `dot_config/foot/` |
43
+ | Warp | Supported | Theme-driven, deploys to `~/.warp/themes/dotfiles.yaml`; pick "dotfiles" in Warp Settings → Appearance → Themes |
38
44
  | Windows Terminal | Supported | WSL2 profile |
39
45
  | tmux | Supported | Config in `dot_config/tmux/` |
40
46
 
@@ -1,3 +1,7 @@
1
+ ---
2
+ render_with_liquid: false
3
+ ---
4
+
1
5
  # Themes
2
6
 
3
7
  Themes are auto-generated from wallpapers. K-Means clustering in CIELAB color space extracts dominant colors. Every theme is WCAG AAA compliant.
@@ -1,3 +1,7 @@
1
+ ---
2
+ render_with_liquid: false
3
+ ---
4
+
1
5
  # Tools
2
6
 
3
7
  Integrated tools organized by role in the workflow.
@@ -1,3 +1,7 @@
1
+ ---
2
+ render_with_liquid: false
3
+ ---
4
+
1
5
  # Utilities
2
6
 
3
7
  Aliases, functions, and the `dot` CLI provide day-to-day tooling across macOS, Linux, and WSL.
@@ -34,31 +38,31 @@ The `dot` command is the main interface for managing dotfiles. Run `dot version`
34
38
 
35
39
  | Command | Description |
36
40
  |---------|-------------|
37
- | `dot doctor` | Run system health checks (`--score|-s`, `--heal|-H`) |
38
- | `dot health` | Run the health dashboard (`--verbose|-v`, `--json|-j`, `--fix|-f`, `--force|-F`) |
39
- | `dot heal` | Auto-repair missing tools, chezmoi drift, broken symlinks, and critical files (`--dry-run|-n`, `--force|-f`) |
41
+ | `dot doctor` | Run system health checks (`--score/-s`,`--heal/-H`) |
42
+ | `dot health` | Run the health dashboard (`--verbose/-v`,`--json/-j`,`--fix/-f`,`--force/-F`) |
43
+ | `dot heal` | Auto-repair missing tools, chezmoi drift, broken symlinks, and critical files (`--dry-run/-n`,`--force/-f`) |
40
44
  | `dot smoke-test` | Verify toolchains (Rust, Go, AI CLIs) |
41
- | `dot verify` | Run security and integrity verification (`--security|-s`) |
45
+ | `dot verify` | Run security and integrity verification (`--security/-s`) |
42
46
  | `dot chaos` | Simulate config corruption to test self-healing |
43
47
  | `dot rollback` | Roll back dotfiles to the previous known-good state |
44
48
  | `dot drift` | Detailed configuration drift dashboard |
45
- | `dot benchmark` | Measure shell startup time (`--detailed|-d`, `--profile|-p`, `--compare|-c`, `--waterfall|-w`) |
46
- | `dot perf` | Show performance mode + quick timing (`--json|-j`, `--profile|-p`, `--runs|-r`, `--target|-t`) |
49
+ | `dot benchmark` | Measure shell startup time (`--detailed/-d`,`--profile/-p`,`--compare/-c`,`--waterfall/-w`) |
50
+ | `dot perf` | Show performance mode + quick timing (`--json/-j`,`--profile/-p`,`--runs/-r`,`--target/-t`) |
47
51
  | `dot score` | Show the high-level system health and security scorecard |
48
52
  | `dot metrics` | Show recent observability metrics |
49
53
  | `dot load-bench` | Measure heavy-layer readiness |
50
- | `dot mcp` | Validate MCP policy and registry (`--strict|-s`, `--json|-j`) |
51
- | `dot attest` | Export workstation evidence (`--json|-j`, `--write|-w`, `--fleet-store|-F`) |
54
+ | `dot mcp` | Validate MCP policy and registry (`--strict/-s`,`--json/-j`) |
55
+ | `dot attest` | Export workstation evidence (`--json/-j`,`--write/-w`,`--fleet-store/-F`) |
52
56
  | `dot history` | Analyse shell history |
53
- | `dot security-score` | Score workstation security (`--verbose|-v`, `--quiet|-q`, `--json|-j`) |
54
- | `dot snapshot` | Capture workstation state (`--baseline|-b`, `--force|-f`) |
57
+ | `dot security-score` | Score workstation security (`--verbose/-v`,`--quiet/-q`,`--json/-j`) |
58
+ | `dot snapshot` | Capture workstation state (`--baseline/-b`,`--force/-f`) |
55
59
  | `dot ai` | Show categorized AI CLI status and launch an installed provider |
56
60
  | `dot ai-setup` | Bootstrap supported AI CLIs interactively |
57
61
  | `dot ai-query` | Run context-aware AI queries over the repo |
58
62
  | `dot mode` | Show or switch the active agent profile |
59
63
  | `dot agent` | Inspect agent metadata, logs, checkpoints, and conformance |
60
64
  | `dot agent checkpoint` | Save, list, show, and replay bounded agent checkpoints |
61
- | `dot agent conformance` | Validate A2A discovery and agent card conformance (`--strict|-s`, `--json|-j`) |
65
+ | `dot agent conformance` | Validate A2A discovery and agent card conformance (`--strict/-s`,`--json/-j`) |
62
66
 
63
67
  ### Tools
64
68
 
@@ -74,7 +78,7 @@ The `dot` command is the main interface for managing dotfiles. Run `dot version`
74
78
  | `dot learn` | Start the guided onboarding tour |
75
79
  | `dot docs` | Show the main repository documentation |
76
80
  | `dot log-rotate` | Rotate `~/.local/share/dotfiles.log` |
77
- | `dot lint` | Lint shell scripts (`--check|-c`, `--fix|-f`) |
81
+ | `dot lint` | Lint shell scripts (`--check/-c`,`--fix/-f`) |
78
82
 
79
83
  ## Universal Scripts
80
84
 
@@ -0,0 +1,6 @@
1
+ {
2
+ "version": 1,
3
+ "updated": "2026-05-15T16:30:00Z",
4
+ "registry": "sebastienrousseau/dotfiles",
5
+ "modules": []
6
+ }
@@ -1,3 +1,7 @@
1
+ ---
2
+ render_with_liquid: false
3
+ ---
4
+
1
5
  # EU AI Act Compliance Assessment
2
6
 
3
7
  This document maps the dotfiles project against the EU Artificial Intelligence Act (Regulation (EU) 2024/1689) to confirm compliance posture and applicable obligations.