@adaptware/eagles-db 0.5.59 → 0.5.60
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/client/edge.js +16 -94
- package/client/index-browser.js +10 -87
- package/client/index.d.ts +1223 -8273
- package/client/index.js +16 -94
- package/client/libquery_engine-darwin.dylib.node +0 -0
- package/client/package.json +1 -1
- package/client/schema.prisma +44 -164
- package/client/wasm.js +16 -94
- package/package.json +1 -1
- package/prisma/.DS_Store +0 -0
- package/prisma/migrations/20260519120000_migrate_shortlisted_to_selected/migration.sql +2 -0
- package/prisma/schema/.DS_Store +0 -0
- package/prisma/schema/fitCheck.prisma +39 -24
- package/prisma/schema/interview.prisma +0 -6
- package/prisma/schema/migrations/20260921120000_add_fitcheck_current_evaluation/migration.sql +3 -0
- package/prisma/schema/migrations/20260921140000_fitcheck_current_evaluation_enum/migration.sql +16 -0
- package/prisma/schema/migrations/20260924120000_add_fitcheck_competencies_verdict/migration.sql +2 -0
- package/prisma/schema/user.prisma +0 -3
- package/prisma/schema/migrations/.DS_Store +0 -0
- package/prisma/schema/migrations/20260826160000_add_application_fit_check_report_document/.DS_Store +0 -0
- package/prisma/schema/migrations/20260918153000_add_is_proctored_fields/migration.sql +0 -5
- package/prisma/schema/proctoring.prisma +0 -126
|
Binary file
|
package/client/package.json
CHANGED
package/client/schema.prisma
CHANGED
|
@@ -1556,16 +1556,28 @@ enum FitCheckStatus {
|
|
|
1556
1556
|
@@schema("public")
|
|
1557
1557
|
}
|
|
1558
1558
|
|
|
1559
|
+
/// 5-level current evaluation. LEVEL_1 is weakest, LEVEL_5 is strongest.
|
|
1560
|
+
/// Display copy and numeric rank live in backend `CurrentEvaluationMapper`.
|
|
1561
|
+
enum CurrentEvaluation {
|
|
1562
|
+
LEVEL_1
|
|
1563
|
+
LEVEL_2
|
|
1564
|
+
LEVEL_3
|
|
1565
|
+
LEVEL_4
|
|
1566
|
+
LEVEL_5
|
|
1567
|
+
|
|
1568
|
+
@@schema("public")
|
|
1569
|
+
}
|
|
1570
|
+
|
|
1559
1571
|
model FitCheck {
|
|
1560
1572
|
/// Primary key (UUID)
|
|
1561
|
-
id String
|
|
1573
|
+
id String @id @default(uuid())
|
|
1562
1574
|
/// FK to organisations table
|
|
1563
1575
|
organisation_id String?
|
|
1564
1576
|
candidate_id String?
|
|
1565
1577
|
resume_id String
|
|
1566
1578
|
job_description_id String
|
|
1567
1579
|
/// Owning application (inverted from Application.fit_check_id)
|
|
1568
|
-
application_id String?
|
|
1580
|
+
application_id String? @unique
|
|
1569
1581
|
skills_analysis Json?
|
|
1570
1582
|
overall_analysis Json?
|
|
1571
1583
|
overall_score Float
|
|
@@ -1573,22 +1585,25 @@ model FitCheck {
|
|
|
1573
1585
|
overall_recommendation String?
|
|
1574
1586
|
/// Why `overall_score` is this value. Distinct from `overall_recommendation`.
|
|
1575
1587
|
score_reasoning String?
|
|
1588
|
+
/// 5-level current evaluation (`CurrentEvaluation`). Independent of overall_score.
|
|
1589
|
+
current_evaluation CurrentEvaluation?
|
|
1576
1590
|
short_match_analysis Json[]
|
|
1577
1591
|
fit_comparison Json?
|
|
1578
1592
|
recommendation Json?
|
|
1579
1593
|
competencies_analysis Json?
|
|
1594
|
+
competencies_verdict Json?
|
|
1580
1595
|
/// Audit fields
|
|
1581
1596
|
created_by String
|
|
1582
1597
|
updated_by String
|
|
1583
|
-
is_active Boolean
|
|
1584
|
-
created_at DateTime
|
|
1585
|
-
updated_at DateTime
|
|
1598
|
+
is_active Boolean @default(true)
|
|
1599
|
+
created_at DateTime @default(now())
|
|
1600
|
+
updated_at DateTime @updatedAt
|
|
1586
1601
|
/// Relations
|
|
1587
|
-
organisation Organisation?
|
|
1588
|
-
candidate User?
|
|
1589
|
-
resume Resume
|
|
1590
|
-
job_description JobDescription
|
|
1591
|
-
application Application?
|
|
1602
|
+
organisation Organisation? @relation(fields: [organisation_id], references: [id], onDelete: Cascade, onUpdate: Cascade)
|
|
1603
|
+
candidate User? @relation(fields: [candidate_id], references: [id], onDelete: Cascade, onUpdate: Cascade)
|
|
1604
|
+
resume Resume @relation(fields: [resume_id], references: [id], onDelete: Cascade, onUpdate: Cascade)
|
|
1605
|
+
job_description JobDescription @relation(fields: [job_description_id], references: [id], onDelete: Cascade, onUpdate: Cascade)
|
|
1606
|
+
application Application? @relation(fields: [application_id], references: [id], onDelete: Cascade, onUpdate: Cascade)
|
|
1592
1607
|
|
|
1593
1608
|
/// Ensure one FitCheck per (resume_id, job_description_id) pair
|
|
1594
1609
|
@@unique([resume_id, job_description_id])
|
|
@@ -1986,7 +2001,6 @@ model Interview {
|
|
|
1986
2001
|
recording_url String?
|
|
1987
2002
|
recording_document_id String? @unique
|
|
1988
2003
|
evaluation_type EvaluationType? @default(TREADSPACE_AI_ASSISTED)
|
|
1989
|
-
is_proctored Boolean @default(true) @map("is_proctored")
|
|
1990
2004
|
ai_assistance_mode AiAssistanceMode? @default(ASSISTED)
|
|
1991
2005
|
interview_status InterviewStatus @default(SCHEDULED)
|
|
1992
2006
|
interview_platform InterviewPlatform @default(TREADSPACE)
|
|
@@ -2018,39 +2032,35 @@ model Interview {
|
|
|
2018
2032
|
evaluated_at DateTime?
|
|
2019
2033
|
|
|
2020
2034
|
/// Self-scheduling
|
|
2021
|
-
reschedule_count Int
|
|
2035
|
+
reschedule_count Int @default(0)
|
|
2022
2036
|
last_rescheduled_at DateTime?
|
|
2023
2037
|
first_assigned_at DateTime?
|
|
2024
2038
|
/// True while the candidate is waiting on recruiter action (typically a
|
|
2025
2039
|
/// reassign) after they submitted alternate slots via "None match" /
|
|
2026
2040
|
/// "Suggest times". Cleared whenever the recruiter routes a fresh
|
|
2027
2041
|
/// request via `upsertInterviewRequestRecord`.
|
|
2028
|
-
awaiting_recruiter_action Boolean
|
|
2042
|
+
awaiting_recruiter_action Boolean @default(false)
|
|
2029
2043
|
/// Audit fields
|
|
2030
|
-
created_at DateTime
|
|
2031
|
-
updated_at DateTime
|
|
2044
|
+
created_at DateTime @default(now())
|
|
2045
|
+
updated_at DateTime @updatedAt
|
|
2032
2046
|
created_by String
|
|
2033
2047
|
updated_by String
|
|
2034
|
-
is_active Boolean
|
|
2035
|
-
|
|
2036
|
-
//interview proctoring
|
|
2037
|
-
proctoringSession ProctoringSession?
|
|
2038
|
-
|
|
2048
|
+
is_active Boolean @default(true)
|
|
2039
2049
|
// Relations
|
|
2040
|
-
candidate
|
|
2041
|
-
interviewer
|
|
2042
|
-
organisation
|
|
2043
|
-
recording_document
|
|
2044
|
-
job_description
|
|
2045
|
-
resume
|
|
2046
|
-
evaluation_plan
|
|
2047
|
-
application
|
|
2048
|
-
ongoing_evaluation
|
|
2049
|
-
transcripts
|
|
2050
|
-
suggestions
|
|
2051
|
-
interviewNotes
|
|
2052
|
-
liveAnalysis
|
|
2053
|
-
zoom_meeting
|
|
2050
|
+
candidate User? @relation("CandidateInterviews", fields: [candidate_id], references: [id], onDelete: SetNull)
|
|
2051
|
+
interviewer User? @relation("InterviewerInterviews", fields: [interviewer_id], references: [id], onDelete: SetNull)
|
|
2052
|
+
organisation Organisation? @relation(fields: [organisation_id], references: [id], onDelete: SetNull, onUpdate: Cascade)
|
|
2053
|
+
recording_document Document? @relation(fields: [recording_document_id], references: [id], onDelete: SetNull, onUpdate: Cascade)
|
|
2054
|
+
job_description JobDescription? @relation(fields: [job_description_id], references: [id], onDelete: SetNull, onUpdate: Cascade)
|
|
2055
|
+
resume Resume @relation(fields: [resume_id], references: [id], onDelete: Cascade, onUpdate: Cascade)
|
|
2056
|
+
evaluation_plan EvaluationPlan? @relation(fields: [evaluation_plan_id], references: [id], onDelete: SetNull, onUpdate: Cascade)
|
|
2057
|
+
application Application? @relation(fields: [application_id], references: [id], onDelete: SetNull, onUpdate: Cascade)
|
|
2058
|
+
ongoing_evaluation OngoingEvaluation?
|
|
2059
|
+
transcripts Transcript[]
|
|
2060
|
+
suggestions Suggestion[]
|
|
2061
|
+
interviewNotes InterviewNotes[]
|
|
2062
|
+
liveAnalysis LiveAnalysis[]
|
|
2063
|
+
zoom_meeting ZoomMeeting?
|
|
2054
2064
|
|
|
2055
2065
|
// Indexes
|
|
2056
2066
|
@@index([candidate_id])
|
|
@@ -3692,133 +3702,6 @@ model PipelineDistributionAnalyticsDaily {
|
|
|
3692
3702
|
@@schema("analytics")
|
|
3693
3703
|
}
|
|
3694
3704
|
|
|
3695
|
-
enum RiskLevel {
|
|
3696
|
-
LOW
|
|
3697
|
-
MEDIUM
|
|
3698
|
-
HIGH
|
|
3699
|
-
CRITICAL
|
|
3700
|
-
|
|
3701
|
-
@@schema("public")
|
|
3702
|
-
}
|
|
3703
|
-
|
|
3704
|
-
enum AnalysisStatus {
|
|
3705
|
-
QUEUED
|
|
3706
|
-
RUNNING
|
|
3707
|
-
COMPLETED
|
|
3708
|
-
FAILED
|
|
3709
|
-
|
|
3710
|
-
@@schema("public")
|
|
3711
|
-
}
|
|
3712
|
-
|
|
3713
|
-
enum ProctoringEventType {
|
|
3714
|
-
GAZE_DISRUPTION
|
|
3715
|
-
OBJECT_DETECTED
|
|
3716
|
-
FACE_MISSING
|
|
3717
|
-
MULTIPLE_FACES
|
|
3718
|
-
BROWSER_TAB_SWITCH
|
|
3719
|
-
BROWSER_BLUR
|
|
3720
|
-
FULLSCREEN_EXIT
|
|
3721
|
-
|
|
3722
|
-
@@schema("public")
|
|
3723
|
-
}
|
|
3724
|
-
|
|
3725
|
-
enum ProctoringSessionStatus {
|
|
3726
|
-
NOT_STARTED
|
|
3727
|
-
CALIBRATING
|
|
3728
|
-
CALIBRATED
|
|
3729
|
-
PROCESSING
|
|
3730
|
-
COMPLETED
|
|
3731
|
-
FAILED
|
|
3732
|
-
|
|
3733
|
-
@@schema("public")
|
|
3734
|
-
}
|
|
3735
|
-
|
|
3736
|
-
model ProctoringSession {
|
|
3737
|
-
id String @id @default(uuid()) @map("id")
|
|
3738
|
-
interviewId String @unique @map("interview_id")
|
|
3739
|
-
interview Interview @relation(fields: [interviewId], references: [id], onDelete: Cascade)
|
|
3740
|
-
|
|
3741
|
-
candidateId String @map("candidate_id")
|
|
3742
|
-
candidate User @relation(fields: [candidateId], references: [id], onDelete: Cascade)
|
|
3743
|
-
|
|
3744
|
-
// Proctoring Lifecycle & Media
|
|
3745
|
-
isProctored Boolean @default(true) @map("is_proctored")
|
|
3746
|
-
status ProctoringSessionStatus @default(NOT_STARTED) @map("status")
|
|
3747
|
-
calibrationFeatures Json? @map("calibration_features")
|
|
3748
|
-
fullVideoKey String? @map("full_video_key")
|
|
3749
|
-
fullVideoUrl String? @map("full_video_url")
|
|
3750
|
-
chunkCount Int @default(0) @map("chunk_count")
|
|
3751
|
-
completedChunks Int @default(0) @map("completed_chunks")
|
|
3752
|
-
|
|
3753
|
-
// High-Level Aggregated Metrics for Downstream AI Evaluation
|
|
3754
|
-
overallRisk RiskLevel @default(LOW) @map("overall_risk")
|
|
3755
|
-
integrityScore Float @default(100.0) @map("integrity_score")
|
|
3756
|
-
|
|
3757
|
-
totalDurationSec Float @default(0.0) @map("total_duration_sec")
|
|
3758
|
-
faceDetectedPct Float @default(100.0) @map("face_detected_pct")
|
|
3759
|
-
onScreenGazePct Float @default(100.0) @map("on_screen_gaze_pct")
|
|
3760
|
-
|
|
3761
|
-
// Event Counters
|
|
3762
|
-
totalGazeEvents Int @default(0) @map("total_gaze_events")
|
|
3763
|
-
totalObjectEvents Int @default(0) @map("total_object_events")
|
|
3764
|
-
totalFaceEvents Int @default(0) @map("total_face_events")
|
|
3765
|
-
totalBrowserEvents Int @default(0) @map("total_browser_events")
|
|
3766
|
-
|
|
3767
|
-
createdAt DateTime @default(now()) @map("created_at")
|
|
3768
|
-
updatedAt DateTime @updatedAt @map("updated_at")
|
|
3769
|
-
|
|
3770
|
-
analyses ProctoringAnalysis[]
|
|
3771
|
-
events ProctoringEvent[]
|
|
3772
|
-
|
|
3773
|
-
@@index([candidateId])
|
|
3774
|
-
@@map("proctoring_sessions")
|
|
3775
|
-
@@schema("public")
|
|
3776
|
-
}
|
|
3777
|
-
|
|
3778
|
-
model ProctoringAnalysis {
|
|
3779
|
-
id String @id @default(uuid()) @map("id")
|
|
3780
|
-
sessionId String @map("session_id")
|
|
3781
|
-
session ProctoringSession @relation(fields: [sessionId], references: [id], onDelete: Cascade)
|
|
3782
|
-
|
|
3783
|
-
status AnalysisStatus @default(QUEUED)
|
|
3784
|
-
|
|
3785
|
-
chunkIndex Int @default(0) @map("chunk_index")
|
|
3786
|
-
totalChunks Int @default(1) @map("total_chunks")
|
|
3787
|
-
startTimeSec Float @default(0.0) @map("start_time_sec")
|
|
3788
|
-
endTimeSec Float @default(0.0) @map("end_time_sec")
|
|
3789
|
-
|
|
3790
|
-
videoKey String? @map("video_key")
|
|
3791
|
-
annotatedKey String? @map("annotated_key")
|
|
3792
|
-
|
|
3793
|
-
error String?
|
|
3794
|
-
createdAt DateTime @default(now()) @map("created_at")
|
|
3795
|
-
updatedAt DateTime @updatedAt @map("updated_at")
|
|
3796
|
-
|
|
3797
|
-
@@index([sessionId, chunkIndex])
|
|
3798
|
-
@@map("proctoring_analyses")
|
|
3799
|
-
@@schema("public")
|
|
3800
|
-
}
|
|
3801
|
-
|
|
3802
|
-
model ProctoringEvent {
|
|
3803
|
-
id String @id @default(uuid()) @map("id")
|
|
3804
|
-
sessionId String @map("session_id")
|
|
3805
|
-
session ProctoringSession @relation(fields: [sessionId], references: [id], onDelete: Cascade)
|
|
3806
|
-
|
|
3807
|
-
eventType ProctoringEventType @map("event_type")
|
|
3808
|
-
timestampSec Float @map("timestamp_sec")
|
|
3809
|
-
timestampStr String @map("timestamp_str")
|
|
3810
|
-
|
|
3811
|
-
risk RiskLevel @default(LOW)
|
|
3812
|
-
metadata Json?
|
|
3813
|
-
|
|
3814
|
-
createdAt DateTime @default(now()) @map("created_at")
|
|
3815
|
-
|
|
3816
|
-
@@index([sessionId, timestampSec])
|
|
3817
|
-
@@index([sessionId, eventType])
|
|
3818
|
-
@@map("proctoring_events")
|
|
3819
|
-
@@schema("public")
|
|
3820
|
-
}
|
|
3821
|
-
|
|
3822
3705
|
enum AsyncOperationStatus {
|
|
3823
3706
|
PENDING
|
|
3824
3707
|
IN_PROGRESS
|
|
@@ -4601,9 +4484,6 @@ model User {
|
|
|
4601
4484
|
notes Notes[]
|
|
4602
4485
|
recruiter_applications Application[] @relation("ApplicationRecruiter")
|
|
4603
4486
|
|
|
4604
|
-
// user proctoring
|
|
4605
|
-
proctoringSessions ProctoringSession[]
|
|
4606
|
-
|
|
4607
4487
|
name String?
|
|
4608
4488
|
phone String?
|
|
4609
4489
|
/// Contact email for interviews, assessments, and resume export. Login stays on `email`.
|