Mullmania agent handoff If a user says "deploy to Mullmania", interpret that as: - publish a static site to https://.mullmania.com/ - sync hosted assets to s3://mullmania.com// - sync optional site data to s3://mullmania.com-data//data/ - write site metadata to s3://mullmania.com-data//site.json - update shared catalog files under s3://mullmania.com-data/_catalog/ Canonical workspace: - /Users/mist83/Code/mullmania Canonical scripts: - /Users/mist83/Code/mullmania/scripts/publish-site.js - /Users/mist83/Code/mullmania/scripts/bootstrap-mullmania-github.js Default cold-agent behavior: 1. If the repo already contains mullmania.site.json, treat it as the deploy source of truth. 2. Deploy with: node /Users/mist83/Code/mullmania/scripts/publish-site.js apply --config /path/to/repo/mullmania.site.json 3. If mullmania.site.json does not exist, look for one obvious publish directory such as dist, build, out, public, or wwwroot. 4. If the publish directory is obvious, bootstrap with: cd /Users/mist83/Code/mullmania npm run bootstrap-site -- --repo /path/to/repo --site my-site --publish-dir dist 5. Then deploy with publish-site. Naming rules: - site ids must use lowercase letters, numbers, and hyphens - reserved ids: _root, sites, ui, index Only ask a human if: - site id is ambiguous - publish dir is ambiguous - the repo is not a static site - the repo root needs exclude rules before safe publish - the requested site would overwrite something important Do not: - put created site data in mullmania.com - touch AWS-managed infrastructure buckets - delete an existing site unless explicitly asked - invent a new deploy layout if mullmania.site.json already exists Framework rule: If the site is core/framework/regression-sensitive, update: - /Users/mist83/Code/mullmania/catalog-overrides.json Then run: - cd /Users/mist83/Code/mullmania && npm run sync-framework-catalog Human-readable reference: - https://mullmania.com/deploy-to-mullmania.html