956b38fb00
docs(agents): add per-package AGENTS.md for all core-* packages
2026-05-05 09:37:47 +02:00
520749c4e3
build: add root test:e2e task aggregating per-app Playwright suites
2026-05-05 09:29:37 +02:00
22bee5362f
feat(eslint-config): add boundaries plugin enforcing app→feature→core graph
...
- Install eslint-plugin-boundaries@^4.2.2 to enforce three-tag boundary model
- Configure element types: app, core-composition (core-api/core-cms), core, feature, tooling
- Enforce unidirectional dependency graph: apps→features→core, core-composition→features
- Add eslint.config.js to all 17 packages and apps (required for ESLint 9 flat config)
- Fix pre-existing linting issues to achieve clean lint pass
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com >
2026-05-05 09:21:01 +02:00
acae859773
chore: delete legacy packages (api, api-client, cms-client, cms-core, core, ui)
2026-05-05 09:13:08 +02:00
a7d37d8a0f
feat(core-ui): migrate atoms/molecules/templates from packages/ui
2026-05-05 09:10:45 +02:00
1308fe4644
fix: enable overrideAccess=true for public Payload repository reads
...
All public pages (site settings, header, pages, articles) now bypass
Payload's access control checks when reading, as they should be publicly
accessible without authentication. This fixes 403 Forbidden errors on
homepage and article rendering.
2026-05-05 08:59:18 +02:00
5620fae116
feat(navigation): add bindProductionNavigation(config) DI helper
2026-05-05 08:50:47 +02:00
02aee1ec23
feat(marketing-pages): add bindProductionMarketingPages(config) DI helper
2026-05-05 08:50:30 +02:00
ef42abb3e1
feat(auth): add bindProductionAuth(config) helper (no-op pending payload-users repo)
2026-05-05 08:50:08 +02:00
f981266fd5
feat(blog): add bindProductionBlog(config) DI helper for app boot
2026-05-05 08:49:55 +02:00
b14db95cfb
feat(core-trpc): add Next.js + TanStack provider components
2026-05-05 08:47:07 +02:00
8d80361785
feat(core-trpc): add typed React tRPC client + getQueryClient
2026-05-05 08:46:24 +02:00
fbaac002a3
feat(core-cms): regenerate types — now includes Pages, SiteSettings, Header
2026-05-05 08:38:21 +02:00
1ad5b801f7
feat(core-api): compose marketingPages + navigation routers into appRouter
2026-05-05 08:36:29 +02:00
158e2bab5a
feat(core-cms): compose pages + siteSettings + header into payload config
2026-05-05 08:35:54 +02:00
014dbc81ec
feat(navigation): add controller + tRPC router + header global + barrel
2026-05-05 08:34:37 +02:00
19f32ec94d
feat(navigation): add Header entity + use-case + mock/payload repos + DI container
2026-05-05 08:34:14 +02:00
f71025b14a
feat(navigation): scaffold empty package with feature tag + path aliases
2026-05-05 08:33:44 +02:00
36e7515717
feat(marketing-pages): add ui/query + barrel + feature test
2026-05-05 08:32:08 +02:00
7b64415020
feat(marketing-pages): add tRPC router with pageBySlug + siteSettings
2026-05-05 08:31:49 +02:00
a44142b875
feat(marketing-pages): add pages collection + siteSettings global
2026-05-05 08:31:37 +02:00
23e7885fc4
feat(marketing-pages): add pages controller (getBySlug + getSiteSettings)
2026-05-05 08:31:24 +02:00
5ffffe4905
feat(marketing-pages): add Payload-backed pages + site-settings repos (constructor-injected config)
2026-05-05 08:31:12 +02:00
ff6fec7eab
fix(tsconfig): set rootDir explicitly in feature packages
...
TypeScript emits an informational diagnostic when source files span
multiple top-level dirs (src/ + tests/) without explicit rootDir.
Setting rootDir="." satisfies the recommendation and matches the
include pattern. Updates blog, auth, marketing-pages — and Plan 4
doc so navigation (still pending) starts correct.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com >
2026-05-05 08:30:19 +02:00
875bae3fde
feat(marketing-pages): add per-feature InversifyJS container
2026-05-05 08:28:50 +02:00
e383c9ef3f
feat(marketing-pages): add Mock pages + site-settings repositories
2026-05-05 08:28:32 +02:00
903c1e23ac
feat(marketing-pages): add getSiteSettingsUseCase (test red until DI lands)
2026-05-05 08:28:19 +02:00
141e007d22
feat(marketing-pages): add getPageBySlugUseCase (test red until DI lands)
2026-05-05 08:28:12 +02:00
63801bf3dc
feat(marketing-pages): add IPagesRepository + ISiteSettingsRepository interfaces
2026-05-05 08:28:03 +02:00
3ff4afe04b
feat(marketing-pages): add Page + SiteSettings entities + errors
2026-05-05 08:27:53 +02:00
9e8adb67c0
feat(marketing-pages): scaffold empty package with feature tag + path aliases
2026-05-05 08:27:34 +02:00
afe7a15104
feat(core-cms): regenerate types — now includes Articles, Users, Media
2026-05-05 08:18:46 +02:00
aed8c9a6ad
feat(core-api): compose @repo/auth/api into appRouter under 'auth' namespace
2026-05-05 08:16:25 +02:00
8667232c22
feat(blog): restore author relationship → users + featuredImage upload → media
2026-05-05 08:14:07 +02:00
125ec53f2a
feat(core-cms): compose users + media into payload config alongside articles
2026-05-05 08:13:10 +02:00
50b687c43e
feat(media): scaffold feature package with media collection only
2026-05-05 08:11:50 +02:00
3770764ac5
test(auth): add feature test for sign-up → sign-in → sign-out flow
2026-05-05 07:58:53 +02:00
9b59c73457
feat(auth): wire root barrel + ui/query stub
2026-05-05 07:58:38 +02:00
30b49ca19b
feat(auth): add tRPC router with signIn + signUp + signOut
2026-05-05 07:58:20 +02:00
2e445b9c5b
feat(auth): add users collection with role + displayName fields
2026-05-05 07:57:16 +02:00
29dea75a62
feat(auth): add sign-in/sign-up/sign-out controllers with Zod validation
2026-05-05 07:19:19 +02:00
2ad6b21f17
feat(auth): add per-feature InversifyJS container with constructor-injected service
2026-05-05 00:40:09 +02:00
b8cfe0e1f2
feat(auth): add MockAuthenticationService with constructor-injected users repo
2026-05-05 00:39:48 +02:00
1becc23843
feat(auth): add MockUsersRepository with seed users
2026-05-05 00:39:46 +02:00
786f3c3420
feat(auth): add signOutUseCase (test red until DI lands)
2026-05-05 00:39:31 +02:00
c989df41d5
feat(auth): add signUpUseCase (test red until DI lands)
2026-05-05 00:39:22 +02:00
bc430ea5a0
feat(auth): add signInUseCase (test red until DI lands)
2026-05-05 00:39:11 +02:00
95e80ef62c
feat(auth): add IUsersRepository + IAuthenticationService interfaces
2026-05-05 00:39:01 +02:00
ceffd05063
feat(auth): add User, Cookie, Session entities + errors + config
2026-05-05 00:38:49 +02:00
54dc9d33d5
feat(auth): scaffold empty package with feature tag + path aliases
2026-05-05 00:37:13 +02:00