Commits

Back

Последние изменения из mirror GitHub. Здесь видны не только SHA, но и автор, дата, количество файлов и зоны риска.

Reset

Показаны 3478 commit'ов, страница 27 из 70.

Previous | Next

6991d78

fix(rates): validate date format and from<=to in lock/unlock - inverted ranges created invalid locked periods

2026-08-23T16:18:57+00:00

Anton Barinov <55404783+Anton-Barinov@users.noreply.github.com>

Files: 16 | core 0 | module 0 | forbidden 0

Flags:

40fb8bc

fix(chat): show client chat tab on project detail for staff (project manager/admin can see portal conversation)

2026-08-23T15:43:15+00:00

Anton Barinov <55404783+Anton-Barinov@users.noreply.github.com>

Files: 2 | core 0 | module 0 | forbidden 0

Flags:

cab145d

fix(chat): normalize client-chat message list shape for external UI (messages vs items)

2026-08-23T15:36:34+00:00

Anton Barinov <55404783+Anton-Barinov@users.noreply.github.com>

Files: 2 | core 0 | module 0 | forbidden 0

Flags:

44b3c9e

fix(chat): staff can read/write project_client chat via project access; external non-participants get 404 (no existence leak)

2026-08-23T15:35:14+00:00

Anton Barinov <55404783+Anton-Barinov@users.noreply.github.com>

Files: 4 | core 0 | module 0 | forbidden 0

Flags:

c3db770

fix(ext): include is_external/external_role in UserManagementRepository selects — role-promotion grant seeding was silently skipped

2026-08-23T11:27:10+00:00

Anton Barinov <55404783+Anton-Barinov@users.noreply.github.com>

Files: 2 | core 0 | module 0 | forbidden 0

Flags:

1cf4235

fix(ext): seed project grants when observer is promoted to executor via PATCH users (worklog RLS would otherwise block)

2026-08-23T11:22:54+00:00

Anton Barinov <55404783+Anton-Barinov@users.noreply.github.com>

Files: 4 | core 0 | module 0 | forbidden 0

Flags:

03ad660

fix(ext): allow admin to switch external user role (observer<->executor) via PATCH users — lifecycle completeness

2026-08-23T11:20:52+00:00

Anton Barinov <55404783+Anton-Barinov@users.noreply.github.com>

Files: 6 | core 0 | module 0 | forbidden 0

Flags:

0f280d0

fix(ext): allow external guests to report telemetry + read own unread chat count (self-scoped)

2026-08-23T11:14:57+00:00

Anton Barinov <55404783+Anton-Barinov@users.noreply.github.com>

Files: 2 | core 0 | module 0 | forbidden 0

Flags:

5cd4c7a

fix(ext): expose whitelisted public settings + task activity to external executors (time rounding + history); no finance/admin data leak

2026-08-23T11:12:03+00:00

Anton Barinov <55404783+Anton-Barinov@users.noreply.github.com>

Files: 6 | core 0 | module 0 | forbidden 0

Flags:

f28faa7

fix(external): correct permission-visibility allow logic for external observer/executor role rules

2026-08-23T08:53:19+00:00

Anton Barinov <55404783+Anton-Barinov@users.noreply.github.com>

Files: 2 | core 0 | module 0 | forbidden 0

Flags:

4a88934

fix(external): role-aware UI - observer fully read-only (no create/edit/status/delete controls), executor keeps task-create/worklog/file-upload; show worklog tab+timer to executor; hide menu customize for external; login redirect validated against external allowlist

2026-08-23T08:51:20+00:00

Anton Barinov <55404783+Anton-Barinov@users.noreply.github.com>

Files: 14 | core 0 | module 0 | forbidden 0

Flags:

4fb1f2a

fix(external): validate login redirect param against external allowlist - external guests (observer/executor) no longer 403 on dashboard after login, land on projects instead

2026-08-23T08:39:08+00:00

Anton Barinov <55404783+Anton-Barinov@users.noreply.github.com>

Files: 4 | core 0 | module 0 | forbidden 0

Flags:

51504a6

fix(analytics): make user-filter preload non-fatal on time-analytics — users without user.view (but with task.manage) got the whole page broken because the /users call threw; filter is populated from report rows instead

2026-08-23T08:27:21+00:00

Anton Barinov <55404783+Anton-Barinov@users.noreply.github.com>

Files: 2 | core 0 | module 0 | forbidden 0

Flags:

36e8b5c

fix(analytics): show registry-only locked periods (zero worklog rows) in the time-analytics locks list — periods that block new entries but have no locked rows were invisible and unremovable in the UI

2026-08-23T08:08:05+00:00

Anton Barinov <55404783+Anton-Barinov@users.noreply.github.com>

Files: 2 | core 0 | module 0 | forbidden 0

Flags:

7b76be1

fix(analytics): include report-only users in time-analytics matrix columns so deactivated/external accounts with historical worklogs are shown and day totals match the visible columns

2026-08-23T08:04:04+00:00

Anton Barinov <55404783+Anton-Barinov@users.noreply.github.com>

Files: 4 | core 0 | module 0 | forbidden 0

Flags:

a438c48

fix(analytics): merge report-only users (deactivated/external) into time-analytics user filters so admins can filter earnings by every user shown in the report

2026-08-23T07:59:46+00:00

Anton Barinov <55404783+Anton-Barinov@users.noreply.github.com>

Files: 2 | core 0 | module 0 | forbidden 0

Flags:

55735f1

fix(analytics): show financial columns (cost/bill/payout) in time-analytics earnings tab — always:true flags were missing so money data never rendered; add totals footer row; use local (not UTC) default report dates; drop hardcoded filter fallback dates

2026-08-23T07:53:46+00:00

Anton Barinov <55404783+Anton-Barinov@users.noreply.github.com>

Files: 2 | core 0 | module 0 | forbidden 0

Flags:

2f33b2a

fix(logs): disable surface animation on offcanvas backdrop (pinned opacity to 1), normalize snake_case security reasons

2026-08-23T07:35:46+00:00

Anton Barinov <55404783+Anton-Barinov@users.noreply.github.com>

Files: 6 | core 0 | module 0 | forbidden 0

Flags:

b640a57

fix(logs): correct telemetry payload path for JS error titles/routes, localize security reasons, add th_object key, real backdrop softening

2026-08-23T07:14:59+00:00

Anton Barinov <55404783+Anton-Barinov@users.noreply.github.com>

Files: 18 | core 0 | module 0 | forbidden 0

Flags:

e31452e

fix(validation): require task_public_id and activity_code in worklog create - prevent orphan worklogs without task or activity

2026-08-23T07:03:27+00:00

Anton Barinov <55404783+Anton-Barinov@users.noreply.github.com>

Files: 2 | core 0 | module 0 | forbidden 0

Flags:

71f0a39

feat(logs): site-consistent segmented tabs, full i18n fix (namespace whitelist + key placement), friendly error explanations, richer audit/security rows, root-only page gate, IP read masking, softer drawer backdrop

2026-08-23T06:58:24+00:00

Anton Barinov <55404783+Anton-Barinov@users.noreply.github.com>

Files: 16 | core 0 | module 0 | forbidden 0

Flags:

cd6fbcd

fix(security): observer role is read-only — block write methods (POST/PATCH/PUT/DELETE) on external_ok routes unless external_write_ok flag is set; observers can still POST comments, chat messages, mark notifications read, revoke sessions

2026-08-23T06:53:27+00:00

Anton Barinov <55404783+Anton-Barinov@users.noreply.github.com>

Files: 30 | core 0 | module 0 | forbidden 0

Flags:

15c85d5

fix: normalize external_role in ExternalUserController invite - accept both 'executor' and 'external_executor'

2026-08-22T23:51:02+00:00

Anton Barinov <55404783+Anton-Barinov@users.noreply.github.com>

Files: 2 | core 0 | module 0 | forbidden 0

Flags:

1a6c7d3

fix(i18n): replace hardcoded Russian text with localized keys

2026-08-22T23:45:10+00:00

Anton Barinov <55404783+Anton-Barinov@users.noreply.github.com>

Files: 38 | core 0 | module 0 | forbidden 0

Flags:

78920a3

feat(logs): tabbed log page (Errors/Activity/API/Security/MCP/Time) with per-tab filters, human-readable events, pagination; fix from/to date filters ignored by log queries

2026-08-22T22:56:31+00:00

Anton Barinov <55404783+Anton-Barinov@users.noreply.github.com>

Files: 22 | core 0 | module 0 | forbidden 0

Flags:

6297b46

fix(logging): use getenv() in bootstrap (defined() never matched EnvLoader), register ServerErrorService on web side, parse details JSON in unified view

2026-08-22T22:25:23+00:00

Anton Barinov <55404783+Anton-Barinov@users.noreply.github.com>

Files: 6 | core 0 | module 0 | forbidden 0

Flags:

4009996

fix(chat): correct projectSelect to avoid double comma in SQL

2026-08-22T22:18:48+00:00

Anton Barinov <55404783+Anton-Barinov@users.noreply.github.com>

Files: 2 | core 0 | module 0 | forbidden 0

Flags:

ad0ed9e

fix(chat): add missing comma in SQL SELECT for external user chat list

2026-08-22T22:17:45+00:00

Anton Barinov <55404783+Anton-Barinov@users.noreply.github.com>

Files: 2 | core 0 | module 0 | forbidden 0

Flags:

149c428

fix(chat): add missing comma in SQL SELECT for external user chat list + fix project_client findSystemChat

2026-08-22T22:12:36+00:00

Anton Barinov <55404783+Anton-Barinov@users.noreply.github.com>

Files: 2 | core 0 | module 0 | forbidden 0

Flags:

74f25a5

debug: file-based logging for chat list

2026-08-22T22:10:34+00:00

Anton Barinov <55404783+Anton-Barinov@users.noreply.github.com>

Files: 2 | core 0 | module 0 | forbidden 0

Flags:

c59bee8

debug: add temporary logging to ChatController list

2026-08-22T22:08:50+00:00

Anton Barinov <55404783+Anton-Barinov@users.noreply.github.com>

Files: 2 | core 0 | module 0 | forbidden 0

Flags:

77f4f36

fix(chat): findSystemChat uses project_id for project_client chats

2026-08-22T22:00:37+00:00

Anton Barinov <55404783+Anton-Barinov@users.noreply.github.com>

Files: 2 | core 0 | module 0 | forbidden 0

Flags:

91dc64c

fix(logging): render HTML badges in event column instead of escaping them

2026-08-22T21:57:09+00:00

Anton Barinov <55404783+Anton-Barinov@users.noreply.github.com>

Files: 2 | core 0 | module 0 | forbidden 0

Flags:

f9791b5

fix(migration): add chat.use to external_guest role permissions

2026-08-22T21:46:27+00:00

Anton Barinov <55404783+Anton-Barinov@users.noreply.github.com>

Files: 42 | core 0 | module 0 | forbidden 0

Flags:

ab5557c

fix(menu): external users can now see my-earnings when they have payout data

2026-08-22T21:29:43+00:00

Anton Barinov <55404783+Anton-Barinov@users.noreply.github.com>

Files: 2 | core 0 | module 0 | forbidden 0

Flags:

9c5cb73

fix(security): Router now passes external_executor_ok to App.php external gate

2026-08-22T21:22:57+00:00

Anton Barinov <55404783+Anton-Barinov@users.noreply.github.com>

Files: 4 | core 0 | module 0 | forbidden 0

Flags:

2a4bd11

debug: add external gate debug (proper location)

2026-08-22T21:17:13+00:00

Anton Barinov <55404783+Anton-Barinov@users.noreply.github.com>

Files: 2 | core 0 | module 0 | forbidden 0

Flags:

c870c30

debug: add temporary external gate debug

2026-08-22T21:15:53+00:00

Anton Barinov <55404783+Anton-Barinov@users.noreply.github.com>

Files: 4 | core 0 | module 0 | forbidden 0

Flags:

cb7dfb9

fix(i18n): restore logs/messages.php translations + add server_errors_unavailable

2026-08-22T20:54:30+00:00

Anton Barinov <55404783+Anton-Barinov@users.noreply.github.com>

Files: 14 | core 0 | module 0 | forbidden 0

Flags:

40a3202

fix(js): add server_errors user filter + missing i18n key

2026-08-22T20:52:37+00:00

Anton Barinov <55404783+Anton-Barinov@users.noreply.github.com>

Files: 16 | core 0 | module 0 | forbidden 0

Flags:

8fe5b7b

fix(js): remove dangling return+brace and fix users variable conflict in counterparty rates

2026-08-22T20:19:18+00:00

Anton Barinov <55404783+Anton-Barinov@users.noreply.github.com>

Files: 2 | core 0 | module 0 | forbidden 0

Flags:

56e8930

fix(server-errors): fix errorPdo scope and constructor access

2026-08-22T20:06:44+00:00

Anton Barinov <55404783+Anton-Barinov@users.noreply.github.com>

Files: 4 | core 0 | module 0 | forbidden 0

Flags:

05c7937

feat(server-errors): add server error logging to DB with admin UI

2026-08-22T20:04:43+00:00

Anton Barinov <55404783+Anton-Barinov@users.noreply.github.com>

Files: 28 | core 0 | module 0 | forbidden 0

Flags:

04c0b2c

feat(rates-ui): add localization keys for counterparty rates preview

2026-08-22T19:55:49+00:00

Anton Barinov <55404783+Anton-Barinov@users.noreply.github.com>

Files: 14 | core 0 | module 0 | forbidden 0

Flags:

15b8558

feat(rates-ui): add rate card lines preview + source_type to counterparty rates tab

2026-08-22T19:53:49+00:00

Anton Barinov <55404783+Anton-Barinov@users.noreply.github.com>

Files: 2 | core 0 | module 0 | forbidden 0

Flags:

cc7e08a

feat(rate-cards): add 'Create for project' button on rate-cards page

2026-08-22T19:48:02+00:00

Anton Barinov <55404783+Anton-Barinov@users.noreply.github.com>

Files: 18 | core 0 | module 0 | forbidden 0

Flags:

96d233f

fix(worklog): use parseLogDate in update() to avoid timezone bug

2026-08-22T19:39:42+00:00

Anton Barinov <55404783+Anton-Barinov@users.noreply.github.com>

Files: 2 | core 0 | module 0 | forbidden 0

Flags:

35e86d6

chore: remove debug file_put_contents from WorklogService

2026-08-22T19:37:58+00:00

Anton Barinov <55404783+Anton-Barinov@users.noreply.github.com>

Files: 2 | core 0 | module 0 | forbidden 0

Flags:

9a62538

fix(rate-cards): cascade-delete assignments when archiving

2026-08-22T19:25:36+00:00

Anton Barinov <55404783+Anton-Barinov@users.noreply.github.com>

Files: 2 | core 0 | module 0 | forbidden 0

Flags:

ffff454

fix(recalculate): timezone-safe date parsing

2026-08-22T16:22:30+00:00

Anton Barinov <55404783+Anton-Barinov@users.noreply.github.com>

Files: 2 | core 0 | module 0 | forbidden 0

Flags: