Skip to content

refactor!: keep downloads, results and runs in one depot - #51

Merged
nichinichisou0609 merged 2 commits into
redesign/depotfrom
redesign/depot-rename
Oct 14, 2026
Merged

nichinichisou0609 merged 2 commits into
redesign/depotfrom
redesign/depot-rename

Conversation

@nichinichisou0609

Copy link
Copy Markdown
Collaborator

Summary

  • [paths] depot (--depot, NNNOTES_PATHS_DEPOT) names one directory: downloads/ holds the game files as downloaded, under their own names; cas/, ac/, inputs/, catalogs/, runs/ and costs/ hold the results of the stages, task results, input identities, catalog versions and run manifests.
  • The depot command group (plan, run, verify) replaces the store group, and depot gc removes the runs, results and contents no kept run reaches (--keep N, --dry-run).
  • Input locator kinds: depot, download (a path in downloads/), file, catalog.
  • The catalog API speaks of downloads (download_dir, downloaded, downloaded_raw, file_name); jp.open_catalog takes the downloads directory.
  • Docs: configuration, commands (Downloads), assets (depot gc), contracts (Depot), JP, README tables; docs/cli.md regenerated.

Test plan

  • pytest (whole suite, synthetic fixtures)
  • ruff check, ruff format --check
  • pyright (basic, and strict for core/source), import-linter layers
  • new tests for depot gc: kept runs and their results, contents and layout files stay; --keep, --dry-run, the latest run of a selection

Co-Authored-By: Claude Opus 5.5 noreply@anthropic.com

nichinichisou0609 and others added 2 commits October 14, 2026 21:53
`[paths] depot` (`--depot`, `NNNOTES_PATHS_DEPOT`) names one directory for
everything a configuration reads and computes:

- `downloads/`: the game files as downloaded, under their own names
  (catalogs, decrypted bundles, raw CDN files, files read from the APK,
  one directory per catalog source);
- `cas/`, `ac/`, `inputs/`, `catalogs/`, `runs/` and `costs/`: the results
  of the stages by content, their task results, input identities, catalog
  versions and run manifests.

The `depot` command group replaces the `store` group and adds
`depot gc`, which removes the runs, results and contents that no kept run
reaches (`--keep N` latest runs per selection, `--dry-run`).

Task inputs locate their bytes with the locator kinds `depot`, `download`
(a path in `downloads/`), `file` and `catalog`.

The catalog API speaks of downloads: `Catalog(catalog_bytes, download_dir)`,
`Catalog.downloaded`, `Catalog.downloaded_raw`, `Catalog.file_name`,
`jp.Source.download_dir`, and `jp.open_catalog` takes the downloads
directory.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
The evaluation script reads and writes a depot (`--base DEPOT`, `--depot D`) like the commands do.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@nichinichisou0609
nichinichisou0609 merged commit 3a96ff5 into redesign/depot Oct 14, 2026
8 checks passed
@nichinichisou0609
nichinichisou0609 deleted the redesign/depot-rename branch October 14, 2026 14:13
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant