697075eea2
feat(frontend) : add useNotifications composable with polling
2026-03-15 19:47:33 +01:00
587733e6f9
feat(frontend) : add notification DTO and service
2026-03-15 19:47:21 +01:00
59b11f1225
feat(notification) : hook NotificationService into ticket processors
2026-03-15 19:47:06 +01:00
4094048aba
feat(notification) : add NotificationService and UserRepository::findByRole
2026-03-15 19:46:37 +01:00
ce2eaa03e1
feat(notification) : add unread-count and mark-all-read custom controllers
2026-03-15 19:46:10 +01:00
d932359024
feat(notification) : add NotificationProvider filtered by current user
2026-03-15 19:45:58 +01:00
669c36cea1
feat(notification) : add Notification entity, repository, and migration
2026-03-15 19:45:47 +01:00
3d1a510d82
feat : add 22 MCP tool classes for projects, tasks, and time tracking
...
Tools: list-users, list-clients, list/get/create/update-project,
list/get/create/update/delete-task, list-statuses/priorities/efforts/tags,
list/create/update-group, list/create/update/delete-time-entry.
Attribute moved to class level for SDK discovery compatibility.
Install nyholm/psr7 for HTTP transport PSR-17 support.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-03-15 19:45:39 +01:00
68dd9599a9
feat(auth) : redirect client users to /portal after login and extract ticket helpers composable
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-03-15 19:42:53 +01:00
0d21e59023
feat(admin) : add client tickets tab with list, filters, status change, and delete
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-03-15 19:42:49 +01:00
7210a0d96f
feat(kanban) : show client ticket icon on task cards, my-tasks, and task modal
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-03-15 19:42:46 +01:00
7099f1ca95
feat(documents) : generalize TaskDocumentUpload and add upload zone to ticket detail modal
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-03-15 19:42:43 +01:00
e16fd2053e
feat : MCP server infrastructure setup
...
Install symfony/mcp-bundle, add STDIO + HTTP transport config,
API token auth on User entity with custom authenticator and firewall,
generate-api-token console command, Nginx /_mcp location, fixture token.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-03-15 19:33:52 +01:00
760f5b6ad6
feat(frontend) : add i18n translations for client portal
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-03-15 19:31:04 +01:00
adf050505d
feat(frontend) : add client ticket support to task-documents service
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-03-15 19:30:52 +01:00
12d043a50f
feat(frontend) : add clientTicket to Task DTO
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-03-15 19:30:38 +01:00
bfd418851e
feat(frontend) : add client-tickets service
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-03-15 19:30:32 +01:00
4fbbead3e3
feat(frontend) : add ClientTicket DTO
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-03-15 19:30:19 +01:00
64961631e4
feat(frontend) : add client user management to admin
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-03-15 19:30:10 +01:00
7f2371e522
feat(frontend) : update UserData DTO for client users
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-03-15 19:29:36 +01:00
851953df1e
feat : generalize TaskDocumentProcessor for client tickets
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-03-15 19:28:04 +01:00
b6cfe9d7d4
feat : add ClientTicketProvider with filtering
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-03-15 19:27:24 +01:00
f33f2f95ec
feat : add ClientTicketStatusProcessor
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-03-15 19:27:10 +01:00
9a9416d6c8
fix : apply review fixes to MCP plan and spec
...
Fix getIsFinal() method name, enrich create/update tool return formats
to match get/list consistency, fix duplicate Reference section in spec,
correct tool count to 22.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-03-15 19:27:06 +01:00
f27297517c
feat : add ClientTicketNumberProcessor
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-03-15 19:27:00 +01:00
d2e27a04ce
feat : add ClientTicketRepository
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-03-15 19:25:45 +01:00
10cde5e2f9
feat : add client portal migration
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-03-15 19:25:36 +01:00
926d6d54c5
feat : generalize TaskDocument for client tickets
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-03-15 19:25:02 +01:00
a538bb3601
feat : add clientTicket relation to Task entity
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-03-15 19:23:50 +01:00
97dcff8542
feat : add ClientTicket entity
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-03-15 19:23:36 +01:00
87ab281099
feat : extend User entity with client and allowedProjects
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-03-15 19:23:10 +01:00
2b9095b1a2
docs : add MCP server implementation plan
...
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-03-15 19:22:42 +01:00
05e24db6ca
feat(security) : add role hierarchy for client portal
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-03-15 19:21:28 +01:00
63febbea45
fix(security) : add ROLE_USER security on all read endpoints
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-03-15 19:21:19 +01:00
edc441f363
fix(security) : exclude ROLE_USER for ROLE_CLIENT users
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-03-15 19:20:46 +01:00
f4eec2e6e9
docs : add client portal implementation plans (phases 1-3)
...
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-03-15 19:18:25 +01:00
5547c67b30
docs : add create-group and update-group tools to MCP spec
...
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-03-15 19:17:44 +01:00
9e19adc09a
docs : add HTTP transport + API token auth to MCP spec
...
Both STDIO (local) and HTTP (LAN) transports are now in scope.
HTTP secured by API token on User entity with custom authenticator.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-03-15 19:15:20 +01:00
8d24949186
docs : update MCP server spec with review fixes
...
Adds list-users, list-clients, update-project tools. Fixes time entry
title as optional, adds startedAt to update-time-entry, adds taskId
filter, pagination limits, eager joins, security model docs.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-03-15 19:12:32 +01:00
c2fa308f1e
docs : add MCP server design spec for Lesstime
...
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-03-15 19:08:27 +01:00
c72f17eb93
docs : add time tracking design spec
...
Auto Tag Develop / tag (push) Has been cancelled
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-03-15 18:59:02 +01:00
4c19b68156
fix(gitea) : propagate API errors instead of silently returning empty results
...
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-03-15 18:58:55 +01:00
63e4af785e
chore : update auto-generated reference config
...
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-03-15 18:58:47 +01:00
f5e41bc377
docs : add client portal design spec
...
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-03-15 18:54:49 +01:00
f978df6a4b
fix(frontend) : explicit import for ConfirmDeleteDocumentModal
...
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-03-15 18:53:39 +01:00
98e832afa5
fix(frontend) : use dedicated confirm modal component for document deletion
...
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-03-15 18:48:10 +01:00
cbfbb16c59
feat(frontend) : replace confirm() with themed modal for document deletion
...
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-03-15 18:33:44 +01:00
354d994766
fix : tag TaskDocumentListener as doctrine entity listener
...
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-03-15 18:32:02 +01:00
06771c17e0
fix(bookstack) : add uriVariables to BookStackLink and BookStackSearchResult
...
API Platform 4 requires explicit uriVariables declaration for
URI template parameters on DTO resources.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-03-15 18:27:57 +01:00
9908f34580
fix(frontend) : refresh documents locally after upload/delete and improve progress UX
...
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-03-15 18:21:04 +01:00