gsxdsm
|
07be287e32
|
FN-9175: isolate engine run-audit emitters
Make run-audit telemetry best-effort across engine lifecycle paths.
- centralize bounded sink handling for absent, throwing, rejecting, hanging, and late-settling audit writers
- route merger, recovery, scheduler, plugin, mission, project, and run-auditor emissions through the shared seam
- add hostile-sink regression coverage, emitter routing checks, documentation, and a patch changeset
Files changed:
.../fn-9175-non-executor-run-audit-isolation.md | 7 +
AGENTS.md | 7 +-
docs/run-audit.md | 4 +-
.../src/__tests__/emit-bounded-run-audit.test.ts | 31 ++-
...on-executor-run-audit-emitter-isolation.test.ts | 29 +++
.../non-executor-run-audit-sink-health.test.ts | 280 +++++++++++++++++++++
packages/engine/src/__tests__/self-healing.test.ts | 7 +-
.../engine/src/executor/emit-bounded-run-audit.ts | 52 +---
packages/engine/src/logger.ts | 3 +
packages/engine/src/merge/merger-ai.ts | 47 ++--
packages/engine/src/merge/pr-reconcile.ts | 5 +-
packages/engine/src/merger.ts | 41 +--
.../engine/src/missions/mission-execution-loop.ts | 5 +-
packages/engine/src/plugins/plugin-runner.ts | 9 +-
packages/engine/src/project-engine.ts | 55 ++--
packages/engine/src/scheduler.ts | 17 +-
packages/engine/src/self-healing.ts | 39 +--
packages/engine/src/util/emit-bounded-run-audit.ts | 69 +++++
packages/engine/src/util/run-audit.ts | 9 +-
19 files changed, 564 insertions(+), 152 deletions(-)
Fusion-Task-Id: FN-9175
Fusion-Task-Lineage: bf74cd37-19bd-4d99-a5d6-b05a4bb43576
Co-authored-by: Fusion (runfusion.ai) <noreply@runfusion.ai>
|
2026-08-19 22:37:12 -07:00 |
|
gsxdsm
|
cb57093d03
|
refactor: domain folder layout (types, API, core, engine) (#2398)
## Summary
Wave 17 organizes Fusion into **domain folders** (stacks on #2397).
### Layout
- **core/types/** — board, task, agents, settings, merge, workflow,
mesh, …
- **core/src/** — agents, ai, async-stores, workflows, tasks, config,
db, …
- **dashboard/app/api/** — client, tasks, agents, git, missions,
planning, …
- **engine/src/** — agents, auth, execution, merge, missions, overseer,
worktree, …
Root keepers retained for large entrypoints (`store.ts`, `executor.ts`,
`merger.ts`, …).
Public barrels (`@fusion/core`, `@fusion/engine`, `app/api.ts` → legacy)
stay stable.
## Test plan
- [x] `@fusion/core` typecheck
- [x] `@fusion/engine` typecheck (pre-existing playwright-core noise
only)
- [ ] CI merge gate
**Stack:** #2394 → #2397 → **this PR**
|
2026-08-03 00:20:53 -07:00 |
|