validate-dsca-stage3.js: read-only harness that, for every staged DSCA original
we have ground truth for (2806 across 126 models), looks up the DB record,
renders it through the live path, and content-compares. GATE = the FINAL TEST
RESULTS section (rule lines canonicalized, whitespace collapsed — so the deferred
column-spacing cosmetic doesn't register); accuracy-section diffs reported
separately as informational.
First run verdict (report attached):
- 68 models FINAL-TEST CONTENT-CLEAN (0 mismatch over compared certs).
- 2123/2316 certs match the Final-Test content exactly (91.7%).
- 26 models show measured-value last-digit diffs only — structure (names, specs,
row alignment, statuses) is correct. Two root causes, neither structural:
* rounding-mode: JS double toFixed vs QB single-precision half-up
(e.g. raw 9.9995 code3 -> "9.999" here, "10.000" in golden). Fixable but
float-precision-sensitive; risks regressing currently-clean values.
* data vintage: staged .TXT is a different test run than the DB latest-wins
record (Fix 3) — e.g. Supply Current 19.6 vs 20.3, 0.7 apart. Not a render
bug; can't be reconciled against an older staged sheet.
- ~32 models render null (count-guard): DSCA33-*, DSCA45-*, DSCA49-* families
whose raw_data carries load points the template omits -> need per-subtype slot
mapping (the canonical-slot approach) before they can render.
Still NOT published: service not restarted, nothing re-pushed to Hoffman.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
ClaudeTools Bootstrap / Reinstall Guide
Complete instructions for backing up and restoring a ClaudeTools development environment on Windows 11.
Pre-Reinstall: Creating the Archive
Before wiping or reinstalling Windows, create a backup archive.
Option A: Automated Archive (Recommended)
Run the bootstrap script in archive mode:
cd D:\ClaudeTools\bootstrap
.\bootstrap.ps1 -Archive
This creates D:\ClaudeTools-backup.zip containing:
- The full ClaudeTools repository (excluding
node_modules,__pycache__,venv) - Claude configuration and memory from
C:\Users\<you>\.claude\
To specify a custom output path:
.\bootstrap.ps1 -Archive -ArchivePath "E:\Backups\claudetools-2026-03-17.zip"
Option B: Manual Archive
If the script is unavailable, manually zip these locations:
- ClaudeTools repository:
D:\ClaudeTools\(entire directory) - Claude memory and config:
C:\Users\<you>\.claude\(entire directory)
Copy the archive(s) to external storage (USB, NAS, cloud) before proceeding with the Windows reinstall.
What Does NOT Need Archiving
These are restored automatically by the bootstrap script:
- Git, Node.js, Python, Ollama (reinstalled via winget)
- npm global packages (reinstalled)
- Python pip packages (reinstalled)
- Ollama models (re-pulled)
- MCP server virtual environments (recreated)
Post-Reinstall: Running the Bootstrap
Step 1: Prepare the D: Drive
If D:\ClaudeTools was on a separate partition that survived the reinstall, skip to Step 2.
Otherwise, extract your archive:
# Extract the ClaudeTools repo to D:\
Expand-Archive -Path "E:\Backups\claudetools-2026-03-17.zip" -DestinationPath "D:\"
# Extract Claude config to your user profile
# (The archive contains a 'claude-config' folder - copy it to the right place)
Copy-Item -Path "D:\claude-config\*" -Destination "$env:USERPROFILE\.claude\" -Recurse -Force
Step 2: Run the Bootstrap Script
Open an elevated PowerShell (Run as Administrator):
Set-ExecutionPolicy Bypass -Scope Process -Force
D:\ClaudeTools\bootstrap\bootstrap.ps1
The script runs 9 phases and takes approximately 15-30 minutes depending on download speeds and Ollama model sizes.
Step 3: Advanced Usage
Run a single phase:
.\bootstrap.ps1 -OnlyPhase 4 # Only install Python packages
Skip specific phases:
.\bootstrap.ps1 -SkipPhase 5 # Skip Ollama model pulls (slow)
.\bootstrap.ps1 -SkipPhase 4,5 # Skip Python packages and Ollama models
Phase Reference
| Phase | What It Does | Duration |
|---|---|---|
| 1 | Install Git, Node.js, Python 3.13, Ollama via winget | 2-5 min |
| 2 | Install Claude Code CLI + global npm packages | 1-2 min |
| 3 | Clone or configure ClaudeTools git repository | <1 min |
| 4 | Install all Python pip packages globally | 3-5 min |
| 5 | Pull Ollama models (nomic-embed-text, llama3.1:8b, qwen2.5-coder:7b) | 5-15 min |
| 6 | Create MCP server venv and install dependencies | 1-2 min |
| 7 | Write Claude Code settings.json, copy commands, create directories | <1 min |
| 8 | Initialize GrepAI | <1 min |
| 9 | Verify all components are installed and working | <1 min |
Manual Steps (Cannot Be Automated)
These steps require interactive authentication or browser actions:
1. Authenticate Claude Code
claude
Follow the prompts to enter your Anthropic API key or log in via browser.
2. GitHub Personal Access Token
Edit D:\ClaudeTools\.mcp.json and set the GITHUB_PERSONAL_ACCESS_TOKEN value:
"env": {
"GITHUB_PERSONAL_ACCESS_TOKEN": "ghp_your_token_here"
}
Generate a new token at: https://github.com/settings/tokens
3. Claude-in-Chrome Extension
Install the Chrome extension manually:
- Open Chrome and navigate to the Chrome Web Store
- Search for "Claude in Chrome" (or install from the MCP extension source)
- Configure the extension to connect to your local MCP server
4. Restore Memory Files (If Needed)
If the bootstrap reports memory files are missing:
# Copy from your archive
Copy-Item -Path "E:\Backups\claude-config\projects\D--ClaudeTools\memory\*" `
-Destination "$env:USERPROFILE\.claude\projects\D--ClaudeTools\memory\" `
-Recurse -Force
5. Git Credentials
When you first git pull or git push to Gitea, you will be prompted for credentials. Use the Gitea username and password from credentials.md.
Verification Checklist
After bootstrap completes, verify manually:
git --versionreturns a versionnode --versionreturns v24.x or laterpython --versionreturns 3.13.xclaude --versionreturns a versionollama listshows all 3 modelsD:\ClaudeToolsexists and has.gitdirectoryD:\ClaudeTools\.mcp.jsonexistsD:\ClaudeTools\grepai.exeexistsC:\Users\<you>\.claude\settings.jsonexistsC:\Users\<you>\.claude\commands\has command files- Run
claudefromD:\ClaudeToolsand confirm MCP servers connect - Claude-in-Chrome extension is installed and responsive
Troubleshooting
winget not found
Install "App Installer" from the Microsoft Store. It ships with Windows 11 but may need updating.
Node.js/Python not on PATH after install
Close and reopen your terminal, or run:
$env:Path = [System.Environment]::GetEnvironmentVariable("Path", "Machine") + ";" + [System.Environment]::GetEnvironmentVariable("Path", "User")
Ollama models fail to pull
Ensure the Ollama service is running:
ollama serve
Then retry:
.\bootstrap.ps1 -OnlyPhase 5
pip install fails for specific packages
Some packages (pywin32, opencv-python, pyzbar) require Visual C++ Build Tools. Install if needed:
winget install Microsoft.VisualStudio.2022.BuildTools
Then re-run Phase 4:
.\bootstrap.ps1 -OnlyPhase 4
GrepAI init requires interaction
Run manually:
cd D:\ClaudeTools
.\grepai.exe init
Select Ollama as the provider and nomic-embed-text as the embedding model.
SSL certificate errors with Gitea
The bootstrap configures http.sslVerify false automatically. If you still see errors:
cd D:\ClaudeTools
git config http.sslVerify false