feat(evaluations): register collection and generated types
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
This commit is contained in:
parent
6bbafc7c5a
commit
22b7343fa8
3 changed files with 56 additions and 1 deletions
|
|
@ -4,6 +4,7 @@ import * as migration_20260826_050000_repair_shims_auxiliary_tables from './2026
|
|||
import * as migration_20260826_060000_add_game_servers_event_target from './20260826_060000_add_game_servers_event_target';
|
||||
import * as migration_20260827_005757 from './20260827_005757';
|
||||
import * as migration_20260827_022334_add_eod_minesweeper_best_flags from './20260827_022334_add_eod_minesweeper_best_flags';
|
||||
import * as migration_20260827_213857_add_evaluations_collection from './20260827_213857_add_evaluations_collection';
|
||||
|
||||
export const migrations = [
|
||||
{
|
||||
|
|
@ -34,6 +35,11 @@ export const migrations = [
|
|||
{
|
||||
up: migration_20260827_022334_add_eod_minesweeper_best_flags.up,
|
||||
down: migration_20260827_022334_add_eod_minesweeper_best_flags.down,
|
||||
name: '20260827_022334_add_eod_minesweeper_best_flags'
|
||||
name: '20260827_022334_add_eod_minesweeper_best_flags',
|
||||
},
|
||||
{
|
||||
up: migration_20260827_213857_add_evaluations_collection.up,
|
||||
down: migration_20260827_213857_add_evaluations_collection.down,
|
||||
name: '20260827_213857_add_evaluations_collection'
|
||||
},
|
||||
];
|
||||
|
|
|
|||
|
|
@ -83,6 +83,7 @@ export interface Config {
|
|||
assignments: Assignment;
|
||||
experience: Experience;
|
||||
'user-notifications': UserNotification;
|
||||
evaluations: Evaluation;
|
||||
missions: Mission;
|
||||
'mission-attendances': MissionAttendance;
|
||||
campaigns: Campaign;
|
||||
|
|
@ -143,6 +144,7 @@ export interface Config {
|
|||
assignments: AssignmentsSelect<false> | AssignmentsSelect<true>;
|
||||
experience: ExperienceSelect<false> | ExperienceSelect<true>;
|
||||
'user-notifications': UserNotificationsSelect<false> | UserNotificationsSelect<true>;
|
||||
evaluations: EvaluationsSelect<false> | EvaluationsSelect<true>;
|
||||
missions: MissionsSelect<false> | MissionsSelect<true>;
|
||||
'mission-attendances': MissionAttendancesSelect<false> | MissionAttendancesSelect<true>;
|
||||
campaigns: CampaignsSelect<false> | CampaignsSelect<true>;
|
||||
|
|
@ -1282,6 +1284,10 @@ export interface Role {
|
|||
| 'user-notifications:read'
|
||||
| 'user-notifications:update'
|
||||
| 'user-notifications:delete'
|
||||
| 'evaluations:create'
|
||||
| 'evaluations:read'
|
||||
| 'evaluations:update'
|
||||
| 'evaluations:delete'
|
||||
| 'missions:create'
|
||||
| 'missions:read'
|
||||
| 'missions:update'
|
||||
|
|
@ -1585,6 +1591,7 @@ export interface GameEventLog {
|
|||
| 'loadouts'
|
||||
| 'market-listings'
|
||||
| 'market-negotiations'
|
||||
| 'evaluations'
|
||||
| 'tickets'
|
||||
| 'game-servers'
|
||||
)
|
||||
|
|
@ -1844,6 +1851,27 @@ export interface UserNotification {
|
|||
updatedAt: string;
|
||||
createdAt: string;
|
||||
}
|
||||
/**
|
||||
* This interface was referenced by `Config`'s JSON-Schema
|
||||
* via the `definition` "evaluations".
|
||||
*/
|
||||
export interface Evaluation {
|
||||
id: number;
|
||||
/**
|
||||
* Who submitted this evaluation. Private — only visible to users with evaluations:read.
|
||||
*/
|
||||
rater: number | User;
|
||||
ratee: number | User;
|
||||
mission: number | Mission;
|
||||
kind: 'leader-direct' | 'leader-indirect' | 'subordinate';
|
||||
level: 'exceptional' | 'excellent' | 'proficient' | 'adequate' | 'moderate' | 'under-review';
|
||||
/**
|
||||
* Private free-text note. Never shown to normal users; managers only.
|
||||
*/
|
||||
comment?: string | null;
|
||||
updatedAt: string;
|
||||
createdAt: string;
|
||||
}
|
||||
/**
|
||||
* This interface was referenced by `Config`'s JSON-Schema
|
||||
* via the `definition` "missions".
|
||||
|
|
@ -3029,6 +3057,10 @@ export interface PayloadLockedDocument {
|
|||
relationTo: 'user-notifications';
|
||||
value: number | UserNotification;
|
||||
} | null)
|
||||
| ({
|
||||
relationTo: 'evaluations';
|
||||
value: number | Evaluation;
|
||||
} | null)
|
||||
| ({
|
||||
relationTo: 'missions';
|
||||
value: number | Mission;
|
||||
|
|
@ -3556,6 +3588,20 @@ export interface UserNotificationsSelect<T extends boolean = true> {
|
|||
updatedAt?: T;
|
||||
createdAt?: T;
|
||||
}
|
||||
/**
|
||||
* This interface was referenced by `Config`'s JSON-Schema
|
||||
* via the `definition` "evaluations_select".
|
||||
*/
|
||||
export interface EvaluationsSelect<T extends boolean = true> {
|
||||
rater?: T;
|
||||
ratee?: T;
|
||||
mission?: T;
|
||||
kind?: T;
|
||||
level?: T;
|
||||
comment?: T;
|
||||
updatedAt?: T;
|
||||
createdAt?: T;
|
||||
}
|
||||
/**
|
||||
* This interface was referenced by `Config`'s JSON-Schema
|
||||
* via the `definition` "missions_select".
|
||||
|
|
|
|||
|
|
@ -46,6 +46,7 @@ import { Loadouts } from "@/collections/locker/Loadouts";
|
|||
import { MarketListings } from "@/collections/market/MarketListings";
|
||||
import { MarketNegotiations } from "@/collections/market/MarketNegotiations";
|
||||
import { UserNotifications } from "@/collections/users/UserNotifications";
|
||||
import { Evaluations } from "@/collections/users/Evaluations";
|
||||
import { Tickets } from "@/collections/tickets/Tickets";
|
||||
import { Projects } from "@/collections/projects/Projects";
|
||||
import { Sprints } from "@/collections/projects/Sprints";
|
||||
|
|
@ -203,6 +204,7 @@ export default buildConfig({
|
|||
Assignments,
|
||||
Experience,
|
||||
UserNotifications,
|
||||
Evaluations,
|
||||
|
||||
// Intel
|
||||
Missions,
|
||||
|
|
@ -313,6 +315,7 @@ export default buildConfig({
|
|||
[Assignments.slug]: true,
|
||||
[Experience.slug]: true,
|
||||
[UserNotifications.slug]: true,
|
||||
[Evaluations.slug]: true,
|
||||
|
||||
// Intel
|
||||
[Missions.slug]: true,
|
||||
|
|
|
|||
Loading…
Reference in a new issue