Vote for your favorite SkillMD. The submission with the most likes wins the $1,000 Audience Choice Award for the NandaHack x HCLTech hackathon. Voting is open through September 25.Vote now →
mergedhumanPR #260Other

fix(packaging): ship runtime assets and verify built distributions

- Regenerate stale exported record schemas and test them against the live models.

Author

JamesCarnley avatar

@JamesCarnley

github profile →
Status
Merged
Merged on
Sep 5
Branch
fix/town-distribution-contracts

Description

The pitch.

## Summary

- Regenerate stale exported record schemas and test them against the live models.
- Include fixtures, schemas and the BYOA example needed by shipped source-distribution tests; check wheel and sdist assets explicitly.
- Add CI that builds artifacts, installs the wheel in a clean environment outside the checkout, and runs Lab/Track/skills controls.
- Use the supported SPDX license declaration and exclude dependency/build/local-environment artifacts from Docker context.

## Verification

Fresh standalone base: `53178b9c780d7a7dd6ce723131c4250de03908dd`.
- `python -m pytest -q tests/test_schema_sync.py` — 1 passed.
- `python -m build --installer uv` — wheel and source archive built.
- `python scripts/check_distributions.py <artifact-directory>` — 13 runtime files and 12 fixture/schema/example files verified.
- Fresh installed-wheel `nandatown run marketplace` and `nandatown run quote-crash-restart` outside the checkout — both passed; `nandatown skills` listed all six bundled skills.
- `git diff --check` — clean.

The guard first failed against incomplete archives, then passed after the packaging repairs. Independent review rebuilt an exact source archive offline. Separately, the final combined remediation's source-archive tests all passed (817) against its clean installed Python 3.11 wheel.

This job is independent of the companion dashboard lint/build CI additions; their workflow edits are disjoint.

Try it

Open PR on GitHubView diff

Checkout locally

git fetch origin pull/260/head:pr-260
git checkout pr-260