jason.woltje
127a54fdff
chore: consolidate new foundation and archive v1 ( #1495 )
2026-09-07 12:32:57 -05:00
jason.woltje
975084abe2
fix(auth): mosaic-managed auth lives under the data root, never ~/.pi ( #48 )
...
Owner direction: the stack must never impact default harness usage.
Correction to M19 as shipped (nothing had been created in ~/.pi — the
move breaks nothing).
- Mosaic-managed accounts: <dataRoot>/auth/<account>.json, perms 0600
enforced (loose perms flagged in listings, refused by --auth — mirrors
gitea-api.sh credential hygiene).
- ~/.pi is read-only to the stack, permanently; the only interaction
remains the existing read-only container mount of the default
credential. Recorded as a ROADMAP standing decision.
- auth.sh is now config-driven (data root from config.json, fail closed,
consistent with every other tool); status reports both sources labeled.
- agent.sh --auth resolution moved after load_config (needs the data
root); missing/symlinked/non-0600 accounts refuse.
- test-auth.sh: 15 no-Docker cases (accounts-create-nothing, loose-perms
refusal, invalid-config refusal added). Test-authoring correction
recorded in BUILD-LOG (fixture-state mismatch caught before running).
Suites 24/15/90/14/17 + verify green.
2026-09-03 22:53:33 -05:00
jason.woltje
2f649ed930
docs: README release ensure row
2026-09-03 14:43:25 -05:00
jason.woltje
24bdef75fa
feat(ops): run inspection, release 0.0.6, docs ( #24 )
...
- mosaic-task.mjs show <runId>: full record + snapshots + artifacts;
uppercase-tolerant id validation; missing/traversal ids exit 4
- list: task/workspace/session columns
- RELEASE -> 0.0.6; README workspaces/capabilities/sessions sections;
BUILD-LOG Phases 9-11; autonomous-run tracker results filled
Closes #24
2026-09-02 22:14:18 -05:00
jason.woltje
3c1ffd2c2d
test(adapters): seam selftests — deterministic mock cases + mission injection ( #18 )
...
- test-config: absent adapter defaults to pi; mock validates; unknown
adapter exits 2; env exports MOSAIC_ADAPTER (24 cases total)
- test-task: mock adapter gate pass/mismatch (no provider needed),
mismatch reason asserted, unknown adapter fails closed, mission section
injected into generated prompt asserted by content (24 cases total)
- harness fixes: helpers defined before use; per-case config files (no
cross-case leakage); newest-run selection for the live case; deduped
accidentally duplicated live block
Closes #18
2026-09-02 21:28:57 -05:00
jason.woltje
35ea464661
docs(release): release model usage + recorded M3 drills ( #13 )
...
- README: Release model section (package/activate/rollback/status,
pointer + append-only log, gate-then-flip guarantee)
- BUILD-LOG Phase 7: drills recorded (update, refusal, rollback),
two harness/product corrections documented
Drill evidence: 0.0.3 -> 0.0.4 update with unchanged config checksum and
green verify; fault-injected refusal left pointer untouched; health-gated
rollback restored 0.0.3; full append-only event history.
Closes #13
2026-09-02 20:24:33 -05:00
jason.woltje
7f0408d417
feat(task): fixture mission/task, docs, recorded M2 E2E ( #9 )
...
- missions/hello.json + tasks/hello-marker.json committed fixtures
- README: Missions & tasks section (usage, run record layout, M2 scope note)
- BUILD-LOG: Phase 6 before/after entries
E2E: fixture run succeeded with exactly MOSAIC_HELLO_OK; wrong expectExact
recorded status failed (expect-mismatch) and exited 1; runs listed; config
checksum unchanged.
Closes #9
2026-09-02 19:58:53 -05:00
jason.woltje
81f58b15c8
fix(launcher): ensure configured data root before verify mount; docs for M1 ( #4 )
...
- verify.sh now calls bootstrap_runtime_dir after load_config; previously a
reset-then-verify flow let Docker auto-create a root-owned mount source
- common.sh: fail with clear guidance when data root exists but is not writable
- README: configuration section, bootstrap usage, selftest entry point
- BUILD-LOG: Phase 5 entries with corrections
E2E (clean slate): 20/20 selftests; bootstrap idempotent; config-driven
hello/verify MOSAIC_HELLO_OK; negative marker exit 1; reset + rerun green;
config checksum unchanged across the entire flow.
Closes #4
2026-09-02 18:32:50 -05:00
jason.woltje
c2365ae519
chore: baseline container POC and atomic foundation plan
...
- Containerized Pi hello-world proof (image mosaic-poc-agent:0.84.4, non-root)
- Four immutable contract fixtures loaded into a generated system prompt
- build/hello/verify/reset scripts with exact-match gating and reset safety
- Documented Pi discovery (v0.84.4, -p mode, --system-prompt, container auth)
- Append-only BUILD-LOG with corrections; deferred layers in LAYERS.md
- Architecture plan: docs/plans/2026-09-02_atomic-mosaic-foundation.md
2026-09-02 18:24:36 -05:00
marcie and orch-01
9aa4983cf2
fix: use canonical dogfood seat identity ( #1490 )
...
ci/woodpecker/push/publish Pipeline was successful
Co-authored-by: marcie <[email protected] >
2026-08-30 23:43:22 +00:00
marcie and orch-01
736b0affc1
compose: add wrapper-first dogfood workspace ( #1488 )
...
ci/woodpecker/push/publish Pipeline was successful
Co-authored-by: marcie <[email protected] >
2026-08-30 22:29:30 +00:00
ops-01
b01950e92f
merge: absorb main into next — 23-commit divergence (08-05..13 base=main window)
...
ci/woodpecker/pr/ci Pipeline failed
17 content commits + 3 merge bubbles were genuinely missing from next (~8,000 lines:
goal controller #1152 , framework enforcement #1174/#1195, pr-edit wrapper #1173/#1200,
pipefail series #1100/#1105/#1106/#1107, git-tools fixes #1073/#1085/#1086/#1089,
#991 , #1007 , enrollment tolerance #1094 ). 3 commits were already in next by content
(#1060 identical, #1066/#1062 evolved twins — conflicts resolved to next's side).
Per-commit classification and evidence: mosaic-brain fleet/lanes/stack-remediation/main-next-divergence.md.
Conflict resolutions (6 files) itemized in the PR body.
2026-08-19 16:27:17 -05:00
fargo
1556982dbc
skills: single install path — canonical skills ship with the framework
...
Phase D2 of plan 2026-08-19: single package, single install, single command.
The framework installer already treats skills/** as a shipped, manifest-owned
framework subtree, so the folded skills now install into
$MOSAIC_HOME/skills with the rest of the framework — no second repository,
no separate sync step:
- mosaic-sync-skills (bash + powershell): the fetch machinery is gone (clone,
pull, dirty-state migration, rsync from sources/agent-skills). The script
now only links installed skills into runtime homes. --link-only is a compat
no-op; --no-link exits having nothing to do.
- catalog.ts: the sources/agent-skills fallback is dead and removed.
- install.sh, launch.ts, defaults/README.md, README.md, skills/README.md:
references to the second repo rewritten to describe the shipped path.
Verified: clean install into a fresh MOSAIC_HOME produces 102 skills with no
sources/ directory; the linker then links the selected skills into the four
runtime homes with no git involvement.
2026-08-19 14:39:28 -05:00
jarvis and fargo
ff45f7b5d0
docs(ri-050): forge fail-closed docs + TASKS status catch-up ( #1275 ) ( #1299 )
...
ci/woodpecker/push/publish Pipeline failed
Co-authored-by: Jarvis <[email protected] >
2026-08-18 16:00:36 +00:00
mos-dt-0
592d60425f
Merge pull request 'fix(installer): require Node 22 for the --next lane' ( #1130 ) from fix/next-node-gate into next
ci/woodpecker/push/publish Pipeline was canceled
2026-08-11 22:01:39 +00:00
mos-dt-0
722163671f
feat(pi): add persistent Mosaic /goal controller ( #1152 )
ci/woodpecker/push/publish Pipeline was successful
ci/woodpecker/push/ci Pipeline was successful
2026-08-10 22:54:43 +00:00
Jason Woltje
76e4242cb1
Reformat Requirements block
ci/woodpecker/push/publish Pipeline was canceled
2026-08-10 14:40:18 -05:00
Jason Woltje
baf4306f51
fix(installer): require Node 22 for next lane
ci/woodpecker/pr/ci Pipeline was successful
2026-08-09 02:37:03 -05:00
coder-mos2
906ad8dc30
wip(sync): merge main into next with combined resolutions
2026-08-02 23:11:22 -05:00
mos-dt-0 and Mos
f58b3699a6
RM-01: reproducible checkout — the pre-push gate fails on code, not environment ( #1027 )
...
ci/woodpecker/push/publish Pipeline failed
ci/woodpecker/push/ci Pipeline was successful
Co-authored-by: mos-dt-0 <[email protected] >
2026-08-01 00:50:12 +00:00
jason.woltje
d801d6c4c8
feat(mosaic): add secure skill registration CLI ( #826 )
ci/woodpecker/push/ci-image Pipeline was successful
ci/woodpecker/push/ci Pipeline was successful
ci/woodpecker/push/publish Pipeline was successful
2026-07-17 23:45:35 +00:00
jason.woltje
d3bf52898b
fix: reject unknown installer arguments ( #825 )
ci/woodpecker/push/ci Pipeline was successful
ci/woodpecker/push/publish Pipeline was successful
2026-07-17 22:16:51 +00:00
jason.woltje
c593a15ef8
docs(kbn): freeze KBN-101 database role split contract ( #774 )
ci/woodpecker/push/publish Pipeline was successful
ci/woodpecker/push/ci Pipeline was successful
2026-07-15 13:34:29 +00:00
jason.woltje and Claude Opus 4.8
94d6538061
feat(installer): add next integration lane ( #686 )
...
ci/woodpecker/push/ci Pipeline was successful
Add --next installer flag (build-from-source at the next integration branch; MOSAIC_NEXT=1 env equiv; explicit --ref wins). Three-lane install docs (stable @latest / --next prerelease / --dev source) + @next dist-tag pipeline design doc. Green PR-event CI 1626 + review-of-record APPROVE (head 3a5c12a5 ).
Co-Authored-By: Claude Opus 4.8 <[email protected] >
2026-06-25 05:14:32 +00:00
jason.woltje
dde95a59b3
fix(pi): reduce startup skill-token overhead ( #527 )
ci/woodpecker/push/ci Pipeline was successful
ci/woodpecker/push/publish Pipeline was successful
2026-06-05 18:36:42 +00:00
jason.woltje
78841f228a
docs(federation): operator setup + migration guides (FED-M1-11) ( #480 )
ci/woodpecker/push/ci Pipeline was successful
ci/woodpecker/push/publish Pipeline was successful
2026-04-20 02:07:15 +00:00
jason.woltje
312acd8bad
chore: sweep mosaicstack/mosaic-stack → mosaicstack/stack + add short install URL ( #448 )
2026-04-06 00:39:56 +00:00
jason.woltje
051de0d8a9
docs: update README for mosaicstack/stack repo rename ( #447 )
2026-04-06 00:22:20 +00:00
jason.woltje
b9d464de61
docs: CLI unification release v0.1.0 (M8) ( #419 )
ci/woodpecker/push/ci Pipeline was successful
ci/woodpecker/push/publish Pipeline failed
ci/woodpecker/tag/publish Pipeline was successful
2026-04-05 07:46:00 +00:00
jason.woltje
c39433c361
chore: remove legacy @mosaicstack/cli package ( #398 )
ci/woodpecker/push/ci Pipeline was successful
ci/woodpecker/push/publish Pipeline failed
2026-04-05 04:39:46 +00:00
jarvis
774b76447d
fix: rename all packages from @mosaic/* to @mosaicstack/*
...
ci/woodpecker/pr/ci Pipeline failed
ci/woodpecker/push/ci Pipeline failed
- Updated all package.json name fields and dependency references
- Updated all TypeScript/JavaScript imports
- Updated .woodpecker/publish.yml filters and registry paths
- Updated tools/install.sh scope default
- Updated .npmrc registry paths (worktree + host)
- Enhanced update-checker.ts with checkForAllUpdates() multi-package support
- Updated CLI update command to show table of all packages
- Added KNOWN_PACKAGES, formatAllPackagesTable, getInstallAllCommand
- Marked checkForUpdate() with @deprecated JSDoc
Closes #391
2026-04-04 21:43:23 -05:00
jarvis
785d30e065
docs: add project README with install, usage, architecture, and dev guide
ci/woodpecker/push/ci Pipeline was successful
ci/woodpecker/pr/ci Pipeline was successful
2026-04-02 19:12:28 -05:00