Skip to content

Sync with base#5

Open
LeeGathercole wants to merge 410 commits intoNHSDigital:mainfrom
event-catalog:main
Open

Sync with base#5
LeeGathercole wants to merge 410 commits intoNHSDigital:mainfrom
event-catalog:main

Conversation

@LeeGathercole
Copy link
Collaborator

Motivation

(Write your motivation here.)

boyney123 and others added 26 commits February 7, 2026 08:48
#2080)

* fix(deps): downgrade react-syntax-highlighter to v15 for compatibility

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>

* fix(deps): override prismjs to >=1.30.0 to fix CVE-2024-53382

react-syntax-highlighter v16 has a broken ESM build, so we stay on v15
which uses refractor@3.6.0 with prismjs@1.27.0. The pnpm override forces
prismjs to the patched version to resolve the arbitrary code injection
vulnerability.

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>

---------

Co-authored-by: Claude Sonnet 4.5 <noreply@anthropic.com>
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
#2082)

* fix(core): resolve PlantUML rendering race condition with destroyZoomInstances

* Create slimy-planes-exist.md

---------

Co-authored-by: David Boyne <boyneyy123@gmail.com>
* update README.md [skip ci]

* update .all-contributorsrc [skip ci]

---------

Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com>
Co-authored-by: Claude Sonnet 4.5 <noreply@anthropic.com>
Co-authored-by: Claude Sonnet 4.5 <noreply@anthropic.com>
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
Co-authored-by: Claude Sonnet 4.5 <noreply@anthropic.com>
…2090)

* fix(core): configure esbuild jsx automatic mode in vite optimizeDeps

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>

* commit

---------

Co-authored-by: Claude Sonnet 4.5 <noreply@anthropic.com>
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
* chore(deps): remove unused dependencies

Remove @eventcatalog/generator-ai, @tanstack/react-query, date-fns,
rehype-raw, tw-animate-css, @playwright/test, and test:e2e script

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>

* chore(deps): update lockfile after removing unused dependencies

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>

---------

Co-authored-by: Claude Sonnet 4.5 <noreply@anthropic.com>
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
…nt vite restart race (#2095)

Co-authored-by: Claude Sonnet 4.5 <noreply@anthropic.com>
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
* Remove 'max-h-content' class from content

* Create chilly-shoes-hug.md

---------

Co-authored-by: David Boyne <boyneyy123@gmail.com>
* update README.md [skip ci]

* update .all-contributorsrc [skip ci]

---------

Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com>
* chore: migrate to turborepo monorepo structure

- Move EventCatalog core to packages/core
- Configure Turborepo with all necessary pipelines
- Fix script paths to reference monorepo root examples
- Update content.config.ts to compute relative paths in monorepo mode
- Add workspace dependencies to examples
- Prepare beta release 3.12.6-beta.0

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>

* fix(ci): correct paths in CI test script for monorepo structure

The CI test script needs to use paths relative to script location
rather than process.cwd() which can vary depending on where the
script is invoked from.

* fix(ci): use correct number of parent directories (4 not 3)

Script location: packages/core/scripts/ci/test.js
Repo root: ../../../../ (4 levels up)

* fix(ci): update workflow to pack from packages/core directory

- pnpm pack needs to run from packages/core where package.json is
- check-build-size.js script path updated to packages/core location

---------

Co-authored-by: Claude Sonnet 4.5 <noreply@anthropic.com>
Images directory is at root level, not in packages/core
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
Script moved to packages/core/scripts/notify-discord-release.js
* feat: migrate sdk and create-eventcatalog packages into monorepo

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>

* chore: add ci/cd compatibility scripts to sdk and create-eventcatalog packages

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>

* chore(ci): rename build-cli job to build-and-test for clarity

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>

* chore: fix formatting in sdk test files

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>

---------

Co-authored-by: Claude Sonnet 4.5 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
- Change from @master to @v1 (master is deprecated)
- Remove createGithubReleases parameter (not supported)
- Add NPM_TOKEN for publishing

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
No longer needed in monorepo structure:
- No CI/CD builds Docker images from root
- Dockerfiles are in packages/core (dev only) and templates
- Templates include their own dockerignore files
- Users build from their own projects, not this repo

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
boyney123 and others added 3 commits February 10, 2026 21:46
* feat(linter): migrate linter package to monorepo

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>

* chore: exit prerelease mode

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>

* fix: ensure build:bin runs before tests

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>

* docs: update README with hybrid positioning and AI-native focus

- Position as 'architecture catalog for distributed systems'
- Lead with AI-Native Discovery features
- Add clear competitive positioning
- Document monorepo structure
- Simplify for public audience

* fix(ci): pack and install SDK before building example catalog

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>

* fix(ci): install SDK and core tarballs in single npm install command

The workspace:* reference in examples/default/package.json causes npm
to fail when installing packages sequentially. Installing both tarballs
in a single command avoids this.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

---------

Co-authored-by: Claude Sonnet 4.5 <noreply@anthropic.com>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
The linter package is now in the monorepo at packages/linter/, so core should reference it as workspace:* instead of ^1.0.1
github-actions bot and others added 30 commits March 10, 2026 15:51
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
…lorer (#2325)

* feat(core,sdk): add usage examples support for messages in schema explorer

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>

* fix(core): reset selected example index when examples prop changes

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>

* fix(sdk): prevent path traversal in example add and remove operations

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>

---------

Co-authored-by: Claude Sonnet 4.5 <noreply@anthropic.com>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
…nts (#2327)

Co-authored-by: Claude Sonnet 4.5 <noreply@anthropic.com>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Claude Sonnet 4.5 <noreply@anthropic.com>
* fix(core): use semver comparison for version sorting instead of lexicographic

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>

* fix(language-server): suppress SDK type error for runtime-only dynamic import

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>

---------

Co-authored-by: Claude Sonnet 4.5 <noreply@anthropic.com>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
* fix(core): populate actor node data in flow node graphs

Actor nodes in flows were rendering empty because the ActorNode component
reads name/summary from props.data, but flows-node-graph.ts only stored
them nested under node.data.actor. Spread actor properties into root
node.data so the component can access them.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* Create nice-days-ring.md

---------

Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
* fix(core): sidebar navigation loses sync with custom base path

Strip the configured base path from window.location.pathname before
matching URL patterns in the sidebar, so active page detection works
correctly when base is set to something other than '/'.

Closes #2321

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* Create silver-seahorses-agree.md

---------

Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
…pendencies (#2336)

Co-authored-by: Claude Sonnet 4.5 <noreply@anthropic.com>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
* feat(core): add export to PDF for message pages

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>

* fix(core): add exportPDF to default action fallback and show actual latest version in print overview

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>

---------

Co-authored-by: Claude Sonnet 4.5 <noreply@anthropic.com>
The `satisfies()` call in a `.find()` callback didn't narrow
`pointer.version` to `string` despite the guard on the outer scope.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
…mponent (#2343)

Closes event-catalog/generators#351

Co-authored-by: Claude Sonnet 4.5 <noreply@anthropic.com>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Add optional `fields` array to sends/receives pointers, allowing services
to declare which specific message fields they depend on. Includes a new
Field Usage page, schema parsing for JSON/Avro/Proto, sidebar integration,
SDK support, and comprehensive tests.

Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Claude Sonnet 4.5 <noreply@anthropic.com>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
* feat(core): add entity map visualiser for services

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>

* fix(core): update entity map test to match theme-aware edge styles

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>

---------

Co-authored-by: Claude Sonnet 4.5 <noreply@anthropic.com>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
…rvices (#2356)

Closes #2342

Co-authored-by: Claude Sonnet 4.5 <noreply@anthropic.com>
* update README.md [skip ci]

* update .all-contributorsrc [skip ci]

---------

Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
…2359)

* fix(sdk): preserve subdomain path when adding resources to a domain

addServiceToDomain, addSubDomainToDomain, addEntityToDomain, and
addDataProductToDomain were relocating nested domains (subdomains) to
the top-level domains/ directory. This happened because they called
writeDomain without preserving the original file path after rmDomainById.

Extract resolveDomainWriteDirectory helper (matching the pattern already
used by addMessageToDomain) and apply it to all five functions.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

* Create yellow-grapes-confess.md

---------

Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
…irectory (#2361)

* fix(sdk): handle subdomains/ folder convention in resolveDomainWriteDirectory

The helper previously only handled the domains/ subfolder convention.
EventCatalog examples use subdomains/ as the nesting folder, so the
function now handles both patterns:
- domains/Parent/domains/Child
- domains/Parent/subdomains/Child

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

* Create hungry-hotels-sip.md

---------

Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants