Commit Graph
21 Commits
Author SHA1 Message Date
jason.woltje e3f64c79d9 chore: move gateway default port from 4000 to 14242 (#375) 2026-04-04 20:17:40 +00:00
jason.woltje cbd5e8c626 fix: scope Gitea registry to @mosaic packages only (#374) 2026-04-04 19:09:14 +00:00
jason.woltje 7560c7dee7 fix: gateway install uses Gitea registry instead of npmjs (#373) 2026-04-04 18:59:40 +00:00
jason.woltje 982a0e8f83 chore: bump @mosaic/mosaic and @mosaic/cli to 0.0.11 (#372) 2026-04-04 18:47:03 +00:00
jason.woltje fc7fa11923 feat: local tier gateway with PGlite + Gitea-only publishing (#371) 2026-04-04 18:39:20 +00:00
jason.woltje acfb31f8f6 fix: quality-rails Commander version mismatch + installer defaults (#364) 2026-04-03 02:40:02 +00:00
jason.woltje d4c5797a65 fix: installer copies default framework files (AGENTS.md) to mosaicHome (#363) 2026-04-03 02:34:43 +00:00
jason.woltje 70a51ba711 fix: all CLI script resolution uses bundled-first resolveTool() (#362) 2026-04-03 02:28:07 +00:00
jason.woltje db8023bdbb fix: fwScript prefers npm-bundled scripts over stale deployed copies (#361) 2026-04-03 02:21:58 +00:00
jason.woltje 9e597ecf87 chore: bump @mosaic/mosaic and @mosaic/cli to 0.0.6 (#360) 2026-04-03 02:13:37 +00:00
jason.woltje 0cf80dab8c fix: stale update banner + skill sync dirty worktree crash (#358) 2026-04-03 02:04:05 +00:00
jarvis e7db9ddf98 chore: bump @mosaic/mosaic and @mosaic/cli to 0.0.4 2026-04-02 20:50:44 -05:00
jarvis a6e59bf829 fix: syncDirectory — guard same-path copy and skip nested .git dirs
Two bugs causing 'EACCES: permission denied, copyfile' when source
and target are the same path (e.g. wizard with sourceDir == mosaicHome):

1. No same-path guard — syncDirectory tried to copy every file onto
   itself; git pack files are read-only (0444) so copyFileSync fails.
2. excludeGit only matched top-level .git — nested .git dirs like
   sources/agent-skills/.git were copied, hitting the same permission
   issue.

Fixes:
- Early return when resolve(source) === resolve(target)
- Match .git dirs at any depth via dirName and relPath checks
- Skip files inside .git/ paths

Added file-ops.test.ts with 4 tests covering all cases.
2026-04-02 20:41:11 -05:00
jarvis 07efaa9580 chore: bump @mosaic/mosaic and @mosaic/cli to 0.0.3 2026-04-02 20:26:01 -05:00
jarvis e084a88a9d chore: bump all packages to 0.0.2 — drop alpha prerelease tag
Switches from 0.0.1-alpha.2 to 0.0.2. Clean semver, no prerelease
suffixes. We're still alpha (0.0.x range).
2026-04-02 20:03:55 -05:00
jason.woltje e57a10913d chore: bump all packages to 0.0.1-alpha.2 (#349) 2026-04-02 18:21:23 +00:00
Jason Woltje b38cfac760 feat: integrate framework files into monorepo under packages/mosaic/framework/
Moves all Mosaic framework runtime files from the separate bootstrap repo
into the monorepo as canonical source. The @mosaic/mosaic npm package now
ships the complete framework — bin scripts, runtime configs, tools, and
templates — enabling standalone installation via npm install.

Structure:
  packages/mosaic/framework/
  ├── bin/          28 CLI scripts (mosaic, mosaic-doctor, mosaic-sync-skills, etc.)
  ├── runtime/      Runtime adapters (claude, codex, opencode, pi, mcp)
  ├── tools/        Shell tooling (git, prdy, orchestrator, quality, etc.)
  ├── templates/    Agent and repo templates
  ├── defaults/     Default identity files (AGENTS.md, STANDARDS.md, SOUL.md, etc.)
  ├── install.sh    Legacy bash installer
  └── remote-install.sh  One-liner remote installer

Key files with Pi support and recent fixes:
- bin/mosaic: launch_pi() with skills-local loop
- bin/mosaic-doctor: --fix auto-wiring for all 4 harnesses
- bin/mosaic-sync-skills: Pi as 4th link target, symlink-aware find
- bin/mosaic-link-runtime-assets: Pi settings.json patching
- bin/mosaic-migrate-local-skills: Pi skill roots, symlink find
- runtime/pi/RUNTIME.md + mosaic-extension.ts

Package ships 251 framework files in the npm tarball (278KB compressed).
2026-04-01 21:19:21 -05:00
Jason Woltje 13934d4879 feat: npm publish pipeline + package versioning (0.0.1-alpha.1)
Publish pipeline:
- Add publish-npm step to .woodpecker/publish.yml — publishes all
  @mosaic/* packages to Gitea npm registry on main push/tag
- Requires gitea_npm_token Woodpecker secret (package:write scope)
- publish-npm runs after build, parallel with Docker image builds
- pnpm publish resolves workspace:* to concrete versions automatically

Package configuration:
- All 20 packages versioned at 0.0.1-alpha.1
- publishConfig added to all packages (Gitea registry, public access)
- files field added to all packages (ship only dist/)
- @mosaic/forge includes pipeline/ assets in published package

Meta package (@mosaic/mosaic):
- Now depends on @mosaic/forge, @mosaic/macp, @mosaic/prdy,
  @mosaic/quality-rails, @mosaic/types
- npm install @mosaic/mosaic pulls in the standalone framework

Build fixes:
- Fix forge and macp tsconfig rootDir: '.' -> 'src' so dist/index.js
  resolves correctly (was dist/src/index.js)
- Exclude __tests__ and vitest.config from build includes
- Clean stale build artifacts from old rootDir config

Required Woodpecker secret:
  woodpecker secret add mosaic/mosaic-stack \
    --name gitea_npm_token --value '<token>' \
    --event push,manual,tag
2026-04-01 12:46:13 -05:00
jason.woltje c4e52085e3 feat(mosaic): migrate install wizard from v0 to v1 (#103)
Co-authored-by: Jason Woltje <[email protected]>
Co-committed-by: Jason Woltje <[email protected]>
2026-03-15 00:59:42 +00:00
jason.woltje cbac5902db fix: Phase 0 verification — CI gates green (P0-009) (#70)
Co-authored-by: Jason Woltje <[email protected]>
Co-committed-by: Jason Woltje <[email protected]>
2026-03-13 02:28:38 +00:00
jason.woltje 6d0d288e31 feat(P0-001): scaffold monorepo structure (#60)
Co-authored-by: Jason Woltje <[email protected]>
Co-committed-by: Jason Woltje <[email protected]>
2026-03-13 01:11:46 +00:00