vikunja/pkg/models
kolaente d24b96b99c feat(user): extract last-admin guard and close invariant gaps 2026-04-20 18:55:06 +00:00
..
admin_bypass.go feat(permissions): site admins bypass all Can* checks (license-gated) 2026-04-20 18:55:06 +00:00
admin_bypass_test.go feat(permissions): site admins bypass all Can* checks (license-gated) 2026-04-20 18:55:06 +00:00
admin_project_list.go feat(admin): add users/projects list endpoints and is_admin patch 2026-04-20 18:55:06 +00:00
api_routes.go fix(security): enforce HTTP method and path in scoped API token matcher 2026-04-09 15:17:20 +00:00
api_routes_test.go
api_tokens.go refactor: extract shared API token validation into ValidateTokenAndGetOwner 2026-03-30 12:09:53 +00:00
api_tokens_expiry_cron.go test: add tests for API token expiry notifications and cron 2026-03-30 12:28:15 +00:00
api_tokens_expiry_cron_test.go test: add tests for API token expiry notifications and cron 2026-03-30 12:28:15 +00:00
api_tokens_expiry_notification.go fix(notifications): escape markdown in user-controlled strings in email lines 2026-04-09 15:44:04 +00:00
api_tokens_expiry_notification_test.go test: add tests for API token expiry notifications and cron 2026-03-30 12:28:15 +00:00
api_tokens_permissions.go
api_tokens_test.go
bulk_task.go
bulk_task_test.go
error.go feat(tasks): cap repeat_after at 10 years to harden repeating-task handler 2026-04-09 16:07:48 +00:00
events.go feat(webhook): add WebhookDeliveryEvent for per-webhook fan out 2026-04-09 09:26:04 +00:00
export.go
favorites.go
kanban.go
kanban_permissions.go
kanban_task_bucket.go fix(kanban): skip upsert when repeating task already in default bucket (#2573) 2026-04-09 10:45:34 +00:00
kanban_task_bucket_test.go test(kanban): add failing test for repeating task bucket routing on done (#2573) 2026-04-09 10:45:34 +00:00
kanban_test.go
label.go
label_permissions.go fix(labels): derive label max permission from accessible tasks only 2026-04-09 15:43:04 +00:00
label_task.go
label_task_permissions.go
label_task_test.go
label_test.go fix(labels): derive label max permission from accessible tasks only 2026-04-09 15:43:04 +00:00
link_sharing.go fix(security): validate link share JWTs against DB on every request 2026-04-09 15:38:07 +00:00
link_sharing_permissions.go
link_sharing_test.go fix(security): validate link share JWTs against DB on every request 2026-04-09 15:38:07 +00:00
listeners.go fix(webhook): order matching webhooks by id for deterministic fan-out 2026-04-09 09:26:04 +00:00
main_test.go
mentions.go
mentions_test.go
message.go
models.go
notifications.go fix(notifications): escape markdown in user-controlled strings in email lines 2026-04-09 15:44:04 +00:00
notifications_database.go
notifications_test.go fix(notifications): escape markdown in user-controlled strings in email lines 2026-04-09 15:44:04 +00:00
oauth_codes.go
permissions.go
project.go feat(user): extract last-admin guard and close invariant gaps 2026-04-20 18:55:06 +00:00
project_duplicate.go refactor(files): derive attachment size from content in sibling callers 2026-04-09 16:22:56 +00:00
project_duplicate_test.go
project_permissions.go feat(permissions): site admins bypass all Can* checks (license-gated) 2026-04-20 18:55:06 +00:00
project_permissions_multiple_teams_test.go
project_repair.go
project_repair_test.go
project_team.go
project_team_permissions.go feat(permissions): site admins bypass all Can* checks (license-gated) 2026-04-20 18:55:06 +00:00
project_team_test.go
project_test.go test(project): pin archived propagation aggregation in ReadAll CTE 2026-04-11 17:20:53 +00:00
project_users.go
project_users_permissions.go feat(permissions): site admins bypass all Can* checks (license-gated) 2026-04-20 18:55:06 +00:00
project_users_permissions_test.go
project_users_test.go
project_view.go
project_view_permissions.go feat(permissions): site admins bypass all Can* checks (license-gated) 2026-04-20 18:55:06 +00:00
reaction.go
reaction_permissions.go
reaction_test.go
saved_filter_positions_test.go refactor: use per-view IN clause for filter task deletion instead of batching 2026-04-09 07:25:57 +00:00
saved_filters.go refactor: use per-view IN clause for filter task deletion instead of batching 2026-04-09 07:25:57 +00:00
saved_filters_permissions.go
saved_filters_test.go
sessions.go
sessions_permissions.go
setup_tests.go
subscription.go
subscription_permissions.go
subscription_test.go
task_assignees.go
task_assignees_permissions.go
task_attachment.go fix: use RememberValue for task attachment preview cache 2026-04-08 08:56:22 +00:00
task_attachment_permissions.go
task_attachment_test.go fix(files): derive file size from reader at creation boundary 2026-04-09 16:22:56 +00:00
task_collection.go
task_collection_filter.go
task_collection_filter_test.go
task_collection_sort.go
task_collection_sort_test.go
task_collection_test.go feat(tasks): enforce unique (project_id, index) via migration 2026-04-11 20:44:28 +00:00
task_comment_permissions.go
task_comments.go
task_comments_test.go
task_duplicate.go refactor(files): derive attachment size from content in sibling callers 2026-04-09 16:22:56 +00:00
task_duplicate_test.go
task_overdue_reminder.go
task_overdue_reminder_test.go
task_position.go fix: catch ErrNeedsFullRecalculation in task creation position conflict resolution 2026-04-09 07:25:57 +00:00
task_position_test.go fix: catch ErrNeedsFullRecalculation in task creation position conflict resolution 2026-04-09 07:25:57 +00:00
task_relation.go
task_relation_authz_test.go fix: use recursive CTE in accessibleProjectIDsSubquery for inherited project permissions 2026-04-05 12:20:35 +00:00
task_relation_permissions.go
task_relation_test.go
task_reminder.go
task_reminder_test.go
task_search.go fix(tasks): include tasks with deleted parents in subtask-expanded queries 2026-04-02 16:30:23 +00:00
task_search_bench_test.go
task_search_test.go
task_unread_statuses.go
tasks.go feat(tasks): enforce unique (project_id, index) via migration 2026-04-11 20:44:28 +00:00
tasks_permissions.go feat(tasks): add GetTaskByProjectAndIndex resolver 2026-04-11 20:44:28 +00:00
tasks_test.go feat(tasks): enforce unique (project_id, index) via migration 2026-04-11 20:44:28 +00:00
team_members.go
team_members_permissions.go feat(permissions): site admins bypass all Can* checks (license-gated) 2026-04-20 18:55:06 +00:00
team_members_test.go
team_sync.go
teams.go
teams_permissions.go feat(permissions): site admins bypass all Can* checks (license-gated) 2026-04-20 18:55:06 +00:00
teams_permissions_test.go
teams_test.go
unsplash.go
user_delete.go refactor(projects): use getAllProjectsForUser in getProjectsToDelete (#2616) 2026-04-13 12:32:32 +02:00
user_delete_test.go refactor(projects): use getAllProjectsForUser in getProjectsToDelete (#2616) 2026-04-13 12:32:32 +02:00
user_list_test.go test(admin): add webtests for /admin/* endpoints and share bypass 2026-04-20 18:55:06 +00:00
user_project.go
user_project_test.go
users.go
webhooks.go fix(webhook): return error from sendWebhookPayload on non-2xx responses 2026-04-09 09:26:04 +00:00
webhooks_permissions.go