4 Commits
Author SHA1 Message Date
Vijay Janapa Reddi a70aebd249 Move authoring tooling out of the repository
Removes content-authoring scripts, figure and data generators, and their working notes, which are not needed to build, check, or release the books and sites. The vault CLI drops the matching subcommands and doctor check; docs, comments, ignore rules, and the codegen hash are updated to match what remains.
2026-09-12 11:55:22 +02:00
Vijay Janapa Reddi 18ca89852a Replace hard-coded local paths with repository-relative ones
- The MLPerf EDU evidence run reports, LEGO audit reports, StaffML corpus
  stats, and one quiz metadata file recorded absolute paths under a home
  directory. They now record repo-relative paths (~ for caches outside the
  repo); no other values change. analyze_corpus.py writes repo-relative paths
  from now on.
- Five vol4 figure generators wrote into an old PhysicalAI-draft checkout or a
  figures worktree. They now write next to the chapter assets they produce,
  and remove_bg.py points at the current callout icon folder.
- Docs and plans name the worktree role instead of a local path.
2026-09-10 19:09:15 +02:00
Vijay Janapa Reddi 762e98ad69 Replace the remaining symlinks with real files
- kits, labs, and the MLSys·im docs: _quarto.yml was a symlink to
  config/_quarto-html.yml. The website config now lives at _quarto.yml.
  The kits PDF build copies config/_quarto-pdf.yml over it for the render
  and restores it afterwards, and the CI PDF job copies instead of linking.
- Book builds: the binder CLI wrote books/_quarto.yml and books/index.qmd
  as symlinks. ConfigManager.activate_config (formerly setup_symlink) now
  writes copies, and the first line of _quarto.yml names its source, which
  status, doctor, clean, and save_latex_log read. The mapped chapter
  harness snapshots and restores both files by content. The Linux container
  job copies index.qmd, as the Windows job already did.
- StaffML: releases/latest was a symlink to the current release directory.
  releases/latest.txt now holds the version and is replaced atomically on
  publish; vault doctor, release publish, and the paper macro script read
  it.

A worktree that still holds the old books/_quarto.yml or index.qmd symlink
is safe: the next build removes the link before writing, so the source
config and volume index are never overwritten through it.
2026-09-10 16:03:37 +02:00
Vijay Janapa Reddi f1ffe5b6fa Rename interviews/ to staffml/ and drop the repeated prefix inside it
interviews/ held StaffML and nothing else, so the directory now carries the
product's name. Three names inside it repeated that prefix, and now line up
with vault/, vault-cli/, and paper/:

  interviews/staffml/               -> staffml/app/
  interviews/staffml-vault-worker/  -> staffml/vault-worker/
  interviews/staffml-vault-types/   -> staffml/vault-types/

Every repository path moved with it: workflow paths: triggers and variable
fallbacks, pre-commit hooks, .gitignore, contributor tooling, vault-cli path
joins, the app's tsconfig mapping to the shared types, and the docs.

Left alone on purpose:
- the published /interviews/ redirect to /staffml/ and the gh-pages subsite
  lists that protect it; those are URLs, not repository paths
- package and worker names (staffml-vault-worker, @staffml/vault-types) and
  the vitest job name, which branch protection may key on
- question YAMLs and generated track JSON, which are content-addressed.
  Three questions carry an older corruption, "recall @interviews/vault/
  questions/...", that predates this change
- the applied D1 migration 0001 and the vault CHANGELOG, which are history

codegen-hashes.txt is re-recorded; the three pinned artifacts changed only in
path strings. vault-cli: 97 passed, codegen --check clean.

interviewer.py's __main__ loader was one parent short and pointed at a
corpus.json that never existed; it now resolves staffml/app/src/data/
corpus.json. tools/validate_playbook.py and generate_interview_flashcard.py
still expect per-track directories that no longer exist; they point at the
new root but remain dead.

The GitHub repository variables STAFFML_ROOT, VAULT_DIR, and VAULT_CLI_DIR
still name the old paths and must change when this reaches origin.
2026-09-10 14:48:04 +02:00