nikita.hohlov
|
450c165fce
|
feat: agent token, auth.agent middleware, /mcp route with HadoServer skeleton
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01BCrwHHnGCB5XH968Nxokqw
|
2026-09-05 06:03:13 -03:00 |
|
nikita.hohlov
|
9163ff97f9
|
refactor: single EventPresenter and ManualEvents shared by /api, /me, inbox, webhook; editable flag
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01BCrwHHnGCB5XH968Nxokqw
|
2026-09-05 06:01:55 -03:00 |
|
|
|
b0b760e4aa
|
fix: viewport-fixed, deterministic background so content changes don't shift it
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01BCrwHHnGCB5XH968Nxokqw
|
2026-09-04 15:56:22 -03:00 |
|
|
|
80235dca3a
|
fix: [hidden] must beat display:flex so archive/settings panels collapse
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01BCrwHHnGCB5XH968Nxokqw
|
2026-09-04 09:51:36 -03:00 |
|
|
|
edc08ff43e
|
feat: HADO_DEV_USER substitutes X-Remote-User in local env
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01BCrwHHnGCB5XH968Nxokqw
|
2026-09-04 09:49:32 -03:00 |
|
nikita.hohlov
|
cbb43714ae
|
fix: final review wave — public routes, inbox 419, url schemes, deep_link, tests
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01BCrwHHnGCB5XH968Nxokqw
|
2026-09-04 09:09:07 -03:00 |
|
nikita.hohlov
|
95c0e53eb8
|
fix: reject protocol-relative deep_link
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01BCrwHHnGCB5XH968Nxokqw
|
2026-09-04 08:28:36 -03:00 |
|
nikita.hohlov
|
86b02f3d36
|
fix: restrict deep_link to relative paths and http(s)
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01BCrwHHnGCB5XH968Nxokqw
|
2026-09-04 08:25:00 -03:00 |
|
nikita.hohlov
|
027c9f7784
|
feat: web inbox per Sekai design handoff
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01BCrwHHnGCB5XH968Nxokqw
|
2026-09-04 08:16:04 -03:00 |
|
nikita.hohlov
|
75ac268c53
|
feat: manual events and archive API
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01BCrwHHnGCB5XH968Nxokqw
|
2026-09-04 08:06:49 -03:00 |
|
nikita.hohlov
|
44f50e1d66
|
fix: tolerate malformed telegram callbacks, constrain channel id
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01BCrwHHnGCB5XH968Nxokqw
|
2026-09-04 07:59:45 -03:00 |
|
nikita.hohlov
|
90d17ec378
|
feat: action links, telegram webhook and channels API
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01BCrwHHnGCB5XH968Nxokqw
|
2026-09-04 07:52:12 -03:00 |
|
nikita.hohlov
|
6138ac7bb0
|
fix: isolate tick errors per event, bound overlap lock
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01BCrwHHnGCB5XH968Nxokqw
|
2026-09-04 07:46:35 -03:00 |
|
nikita.hohlov
|
affac4ce1a
|
feat: tick planner, delivery job, scheduler and purge
Also: test uses disabled channels instead of deleting them (FK cascade); ChannelRegistry no longer final so tests can extend it (controller ruling).
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01BCrwHHnGCB5XH968Nxokqw
|
2026-09-04 07:38:16 -03:00 |
|
nikita.hohlov
|
1b0a559e3c
|
feat: web, webhook and telegram channel drivers
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01BCrwHHnGCB5XH968Nxokqw
|
2026-09-04 07:18:37 -03:00 |
|
nikita.hohlov
|
1b03fe0796
|
feat: remote user, ack/done actions and /me API
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01BCrwHHnGCB5XH968Nxokqw
|
2026-09-04 07:05:50 -03:00 |
|
nikita.hohlov
|
5ea5c045a7
|
feat: source tokens and client events API
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01BCrwHHnGCB5XH968Nxokqw
|
2026-09-04 06:58:03 -03:00 |
|
nikita.hohlov
|
245ca88af6
|
fix: validate calendar date in fixed-offset due_at
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01BCrwHHnGCB5XH968Nxokqw
|
2026-09-04 06:52:28 -03:00 |
|
nikita.hohlov
|
7d1df7828a
|
feat: due_at parser and event upserter
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01BCrwHHnGCB5XH968Nxokqw
|
2026-09-04 06:45:33 -03:00 |
|
nikita.hohlov
|
c2fa8aa00d
|
feat: state, window and quiet rules
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01BCrwHHnGCB5XH968Nxokqw
|
2026-09-04 06:39:23 -03:00 |
|
nikita.hohlov
|
e48e48aa4a
|
feat: due resolution and cascade math
Also: StoresUtc trait normalizes datetime casts to UTC (controller ruling).
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01BCrwHHnGCB5XH968Nxokqw
|
2026-09-04 06:19:00 -03:00 |
|
nikita.hohlov
|
774e0bce1a
|
feat: enums, schema and models for hado core
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01BCrwHHnGCB5XH968Nxokqw
|
2026-09-04 06:05:34 -03:00 |
|
nikita.hohlov
|
8d01b7050d
|
chore: scaffold Laravel 13 core app
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01BCrwHHnGCB5XH968Nxokqw
|
2026-09-04 05:56:14 -03:00 |
|