chore(claude): add onboard config — memory, tasks, audit, gitignore
Onboard scaffolding for the dotfiles repo: 5 memory registries, TODO backlog, onboard audit report, and .gitignore (ignores Oldconfig, vim swap, .claude/settings.local.json). Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 4.7
parent
3085b86828
commit
0f9b879afb
@@ -0,0 +1,9 @@
|
||||
# Blockers
|
||||
|
||||
Friction + root cause + status. Caveman + English.
|
||||
|
||||
## BLK-001 — vimrc GenerateClassC bare `name` var — OPEN
|
||||
2026-05-27. `vim/vimrc` func `GenerateClassC` uses `name` instead of `a:name` → vimscript E121
|
||||
undefined variable on `:ClassC Foo`. `GenerateClassH` correct (uses `a:name`). Not fixed —
|
||||
vim domain, out of onboard scope (user said fix install.sh only). Fix: prefix all with `a:`.
|
||||
Status: open, logged in TODO P2.
|
||||
@@ -0,0 +1,25 @@
|
||||
# Decisions
|
||||
|
||||
Design/architecture choices. Caveman + English.
|
||||
|
||||
## BDR-001 — Installer rewritten bash, not POSIX sh
|
||||
2026-05-27. `install.sh` used `#!/bin/sh` but `[ "$1" == "x" ]` (bashism) → breaks on dash.
|
||||
Switched shebang to `#!/usr/bin/env bash` + `set -euo pipefail`. Repo targets apt-get systems,
|
||||
bash always present. Alternative (stay POSIX, use `=`) rejected — bash gives brace expansion +
|
||||
arrays if needed later. Status: done.
|
||||
|
||||
## BDR-002 — Installer paths relative to SCRIPT_DIR
|
||||
2026-05-27. Old script mixed `/tmp/config/bash/...` (never populated) and relative `bash/...`.
|
||||
server + osx branches referenced nonexistent `/tmp/config` → silent fail. Now compute
|
||||
`SCRIPT_DIR` once, all paths relative to it. Works from any cwd. Status: done.
|
||||
|
||||
## BDR-003 — apt-get guarded by command -v
|
||||
2026-05-27. `apt-get` ran unconditionally even for `osx` target → fails on macOS.
|
||||
Wrapped in `if command -v apt-get`. osx skips system packages. Status: done.
|
||||
|
||||
## BDR-004 — remote-install.sh bootstrap: clone ~/config, idempotent pull
|
||||
2026-05-27. Added curl|bash bootstrap. Clones repo to `$HOME/config` (env-overridable
|
||||
REPO_URL/CLONE_DIR/BRANCH), pulls if exists, ensures git first, then `bash install.sh`.
|
||||
Alt rejected: temp-dir + tarball download (no git dep) — kept git path, simpler + repo
|
||||
needs git anyway. Risk noted: curl|bash runs unreviewed remote code (archetype pain point);
|
||||
mitigated by HTTPS + pinned branch + manual fallback in README, not eliminated. Status: done.
|
||||
@@ -0,0 +1,9 @@
|
||||
# Evals
|
||||
|
||||
Quality check of Claude output. Caveman + English.
|
||||
|
||||
## EVAL-001 — install.sh fix verified
|
||||
2026-05-27. Method: `shellcheck install.sh` (CLEAN) + `bash -n install.sh` (syntax OK).
|
||||
Not runtime-tested (would mutate ~/.vim, ~/.bashrc on this machine). Logic traced by hand:
|
||||
SCRIPT_DIR resolution, idempotent clones, target case map all correct. Anomaly: none.
|
||||
Action: safe to commit. Full runtime test deferred to next clean VM.
|
||||
@@ -0,0 +1,12 @@
|
||||
# Journal
|
||||
|
||||
3-5 lines/session. Caveman + English.
|
||||
|
||||
## 2026-05-27 — onboard (right-sized)
|
||||
Onboarded dotfiles repo. Archetype dotfiles-meta HAUTE. 8 files, ~405 lines, graphify skipped.
|
||||
Found + fixed install.sh: broken /tmp/config paths (server+osx silent fail), bashism under sh,
|
||||
missing cp -r nerdtree, redundant molokai clone, unquoted vars, no set -eu. shellcheck CLEAN.
|
||||
Created README, CLAUDE.md, .gitignore, .claude memory/tasks/audits. No secrets found.
|
||||
Open: vimrc GenerateClassC bug (BLK-001), bashrc backtick style nits.
|
||||
Then: install.sh arg dropped → uname OS-detect (Darwin→osx else linux). Deleted bashrc-server.
|
||||
Added remote-install.sh curl|bash bootstrap (BDR-004). shellcheck CLEAN. Docs synced.
|
||||
@@ -0,0 +1,13 @@
|
||||
# Learnings
|
||||
|
||||
Reusable patterns. Caveman + English.
|
||||
|
||||
## LRN-001 — Dotfiles installer idempotency pattern
|
||||
2026-05-27. Re-runnable installer: `rm -rf` target before each `git clone`, `mkdir -p` dirs,
|
||||
back up existing config to fixed `~/Oldconfig` (overwrite prev backup). Avoids "clone fails,
|
||||
dir exists" on second run. Apply to any provisioning script.
|
||||
|
||||
## LRN-002 — Redundant vim plugin fetch
|
||||
2026-05-27. molokai colorscheme committed in `vim/colors/` AND cloned to /tmp then copied.
|
||||
`cp -rupv vim/* ~/.vim/` already deploys it. Dropped the clone. Lesson: check what tracked
|
||||
files already cover before adding external fetch.
|
||||
Reference in New Issue
Block a user