Commit Graph
38 Commits
Author SHA1 Message Date
archvillainette d7704c5f68 Migrate parts data to assets repo 2026-05-17 13:46:09 +02:00
archvillainette 7d286551b3 Wrapper tool hardening and cleanup 2026-05-13 19:06:24 +02:00
archvillainette c7fd63a80c Music Pipeline Configuration Hardening 2026-05-08 11:22:57 +02:00
archvillainette 4732947db8 Compile pipeline fix 2026-05-08 09:05:06 +02:00
archvillainette 91c90793a2 Extraction Hardening 2026-05-08 01:26:41 +02:00
archvillainette fa4c9116ae Hardening audit
Key hardening changes:

  - Config validation now rejects paths.source: . and paths.assets: ., so source/asset roots cannot
    resolve to the repository root.
  - apply-hak-manifest now refuses to run when paths.source is unset or unsafe, instead of potentially
    writing under a root-level module/.
  - Inline flags across utility parsers now reject empty values consistently, e.g. --dataset=, --hak=,
    --endpoint=, --output=.
  - build-changelog now supports --flag=value inline syntax like the other utilities.
2026-05-08 00:31:17 +02:00
archvillainette 9f16aa8872 Fix paths asset regression 2026-05-08 00:23:41 +02:00
archvillainette d1b20684f5 Configuration hardening 2026-05-07 21:33:53 +02:00
archvillainette bba0d2fb45 Music Pipeline Refactor 2026-05-07 18:17:40 +02:00
archvillainette b39bdf13e8 Configuration Hardening 2
What changed:

  - Added visible runtime override reporting with masking for sensitive values.
  - Expanded effective config for build cleanup, script compiler discovery/env, extract layout/cleanup/
    HAK discovery, wiki deploy defaults, autogen cache policy, and release-source env names.
  - Wired configured values into build, script compiler resolution, extract, autogen cache refresh/max
    age, parts manifest release source, wiki generation/deploy, and TLK output naming.
  - Added config sources override output and validation-rule hints in config explain.
  - Added CONFIGURATION_HARDENING_AUDIT.md.
  - Updated README.md with config commands, schema defaults, and JSON artifact boundaries.
  - Added regression tests for override visibility/masking, compiler/extract/wiki/autogen config,
    configured HAK discovery, and config sources output.
2026-05-07 14:22:47 +02:00
archvillainette 7abcbf1a38 Log Refactor 2026-05-07 13:33:25 +02:00
archvillainette 13a615dbd7 Credits Caching Pipeline Test 2026-05-07 12:13:03 +02:00
archvillainette b717b9cce2 Panic Fix 2026-05-07 09:09:41 +02:00
archvillainette fa3dde4293 .cache used for credits 2026-05-07 09:04:20 +02:00
archvillainette f6bb4fe3d7 Music Pipeline Implementation 2026-05-07 08:51:42 +02:00
archvillainette 4009931fd0 Dev Testing + AutoGen Activation 2026-04-25 08:57:10 +02:00
archvillainette 831d3b47da Refactor build and topdata path resolution through project config 2026-04-24 19:11:10 +02:00
archvillainette f249108cf0 Changed sow-tools HAK split planning to preserve previous split membership 2026-04-18 18:39:15 +02:00
archvillainette 8e7ffd8f4f Resolve LFS objects from git common dir 2026-04-18 16:03:49 +02:00
archvillainette 6f6bf7080a Move Generation Destinations 2026-04-18 10:24:34 +02:00
archvillainette ab18baf067 build-haks now accepts --source-manifest <path>
When that flag is used, sow-tools:
- collects only the assets referenced by that manifest subset
- skips full-project chunk planning for the per-archive run
- reconstructs just the requested archive chunks from the manifest
2026-04-14 12:12:42 +02:00
archvillainette 9dbb533241 Parse LFS Pointers Quickly
sow-tools no longer relies on git lfs ls-files --json for planning. It
now parses the checked-out LFS pointer files directly, so split sizing
and content_hash use the real LFS oid and size.
2026-04-14 11:40:38 +02:00
archvillainette bf7c844f2e Build in /tmp and immediately discard 2026-04-14 09:49:36 +02:00
archvillainette b766ff1348 Pipeline Planning 2026-04-14 01:08:38 +02:00
archvillainette 471fbbb55e Allow optional hak releases 2026-04-13 12:41:14 +02:00
archvillainette 29ddf8e3c5 (Potentially Breaking Change) Git-Based Hak Chunk Ordering 2026-04-10 22:08:54 +02:00
archvillainette cecafa9c1f Script Compiler Pathing 2026-04-10 19:50:17 +02:00
archvillainette 543945f099 Fix type extensions 2 2026-04-10 08:43:06 +02:00
archvillainette 75c90de628 Seperate Module and Topdata Pipeline 2026-04-09 22:12:06 +02:00
archvillainette 68aea4ba00 Update BuildAndPackage 2026-04-09 17:23:00 +02:00
archvillainette 4f8bfc133a Native Workflow Support 2026-04-09 11:01:39 +02:00
archvillainette 99f9d29d7a Expect compiled .ncs 2026-04-04 13:23:08 +02:00
archvillainette bf87144688 Conservative build-haks
In build.go, build-haks now does conservative chunk reuse instead of
wiping all generated HAKs up front. It plans chunks as before, computes
a deterministic per-chunk content_hash, reuses an existing .hak only
when the prior manifest entry and on-disk archive still match, rebuilds
only changed chunks, and deletes only stale generated HAKs that fall out
of the new plan. I added coverage for unchanged reuse and selective
rebuilds in pipeline_test.go, and go test ./... passes in sow-tools.
2026-04-04 11:51:53 +02:00
archvillainette 9313769649 Force Check Duplicates 2026-04-04 09:34:36 +02:00
archvillainette 38ee1e21e0 Compile referenced NWScript during module builds 2026-04-02 22:04:58 +02:00
archvillainette af4d23ea48 Remove validation errors for missing .nss files 2026-04-02 20:15:01 +02:00
archvillainette 77b21081d7 Tool: Polish Pass 1
In sow-tools, extract now behaves like a real sync by default: it
overwrites changed extracted files, removes stale extracted files that
no longer exist in the built archives, and normalizes extracted resource
filenames to lowercase. I also made validation warn on uppercase
resource filenames so mixed-case names like I_ELVENCHAIN are surfaced
instead of quietly lingering. The extract command output now includes
overwritten and removed counts too.
2026-04-02 20:04:41 +02:00
archvillainette b7f188779a Initial sow-tools import 2026-04-02 17:19:23 +02:00