Source identity
| Field | Recorded value |
|---|---|
| Source type | GitHub source |
| Original record | Janady13/missionmatch / internal/platform/database/dbgen/models.go |
| Date | Not specified in source |
| Repository | Janady13/missionmatch |
| Revision | 720d47fae476b0d38477ae4401697d372b1ea2bc |
| Branch | feature/opportunity-to-outcome |
| Path or archive member | internal/platform/database/dbgen/models.go |
| Original SHA-256 | 7dfec16c19f0efeacc25dbdb424ede0c82b37cebfd35efe56af684be45918086 |
| Git blob SHA | 42c0bfea0d196ff7c8ae2ace92704ddb657e5893 |
| Reading-copy SHA-256 | 7dfec16c19f0efeacc25dbdb424ede0c82b37cebfd35efe56af684be45918086 |
Recovered source transcript
Download complete source text ↓1,793 lines · 75.9 KB
// Code generated by sqlc. DO NOT EDIT.
// versions:
// sqlc v1.31.1
package dbgen
import (
"net/netip"
"time"
"github.com/google/uuid"
"github.com/jackc/pgx/v5/pgtype"
pgvector "github.com/pgvector/pgvector-go"
"github.com/shopspring/decimal"
)
type AedtCalibrationBin struct {
ModelKey string `json:"model_key"`
Version int32 `json:"version"`
BinIndex int32 `json:"bin_index"`
BinLo decimal.Decimal `json:"bin_lo"`
BinHi decimal.Decimal `json:"bin_hi"`
EmpiricalRate decimal.Decimal `json:"empirical_rate"`
}
type AedtCandidateNotice struct {
ID uuid.UUID `json:"id"`
OrganizationID uuid.UUID `json:"organization_id"`
CandidateID uuid.UUID `json:"candidate_id"`
NoticeVersion string `json:"notice_version"`
DataCategories []byte `json:"data_categories"`
RetentionDays int32 `json:"retention_days"`
DisclosedBy *uuid.UUID `json:"disclosed_by"`
DisclosedAt time.Time `json:"disclosed_at"`
}
type AedtInventory struct {
ID uuid.UUID `json:"id"`
OrganizationID uuid.UUID `json:"organization_id"`
ToolKey string `json:"tool_key"`
DisplayName string `json:"display_name"`
Purpose string `json:"purpose"`
ModelVersion *string `json:"model_version"`
Active bool `json:"active"`
CreatedAt time.Time `json:"created_at"`
UpdatedAt time.Time `json:"updated_at"`
}
type AedtLearnedModel struct {
ModelKey string `json:"model_key"`
Version int32 `json:"version"`
Family string `json:"family"`
OutputKind string `json:"output_kind"`
FeatureSpec []byte `json:"feature_spec"`
EffectiveFrom time.Time `json:"effective_from"`
Champion bool `json:"champion"`
Notes string `json:"notes"`
}
type AedtModelCoefficient struct {
ModelKey string `json:"model_key"`
Version int32 `json:"version"`
FeatureName string `json:"feature_name"`
Coefficient decimal.Decimal `json:"coefficient"`
}
type AedtModelVersion struct {
Version string `json:"version"`
Weights []byte `json:"weights"`
BandCuts []byte `json:"band_cuts"`
Notes *string `json:"notes"`
EffectiveFrom time.Time `json:"effective_from"`
CreatedAt time.Time `json:"created_at"`
}
type AiMemory struct {
ID uuid.UUID `json:"id"`
OrganizationID uuid.UUID `json:"organization_id"`
CandidateID *uuid.UUID `json:"candidate_id"`
Kind string `json:"kind"`
Content string `json:"content"`
Embedding *pgvector.Vector `json:"embedding"`
CreatedAt time.Time `json:"created_at"`
UpdatedAt time.Time `json:"updated_at"`
}
type AioeRun struct {
ID uuid.UUID `json:"id"`
RanAt time.Time `json:"ran_at"`
AsOf time.Time `json:"as_of"`
WindowDays int32 `json:"window_days"`
OrgsScanned int32 `json:"orgs_scanned"`
OutcomesSeen int32 `json:"outcomes_seen"`
ProfilesUpdated int32 `json:"profiles_updated"`
TriggeredBy string `json:"triggered_by"`
}
type AioeWeightAdjustment struct {
OrganizationID uuid.UUID `json:"organization_id"`
ID uuid.UUID `json:"id"`
ProfileID uuid.UUID `json:"profile_id"`
ProducedVersion int32 `json:"produced_version"`
Dimension string `json:"dimension"`
OldValue decimal.Decimal `json:"old_value"`
NewValue decimal.Decimal `json:"new_value"`
WindowStart time.Time `json:"window_start"`
WindowEnd time.Time `json:"window_end"`
OutcomesUsed int32 `json:"outcomes_used"`
Rationale string `json:"rationale"`
CreatedAt time.Time `json:"created_at"`
}
type AioeWeightProfile struct {
OrganizationID uuid.UUID `json:"organization_id"`
ID uuid.UUID `json:"id"`
ProfileVersion int32 `json:"profile_version"`
DimensionWeights []byte `json:"dimension_weights"`
Status string `json:"status"`
CreatedAt time.Time `json:"created_at"`
}
type Alert struct {
ID uuid.UUID `json:"id"`
OrganizationID uuid.UUID `json:"organization_id"`
AlertType string `json:"alert_type"`
Severity string `json:"severity"`
SubjectType string `json:"subject_type"`
SubjectID *uuid.UUID `json:"subject_id"`
Title string `json:"title"`
Detail string `json:"detail"`
DedupeKey string `json:"dedupe_key"`
Status string `json:"status"`
CreatedAt time.Time `json:"created_at"`
UpdatedAt time.Time `json:"updated_at"`
}
type Application struct {
OrganizationID uuid.UUID `json:"organization_id"`
ID uuid.UUID `json:"id"`
RequisitionID uuid.UUID `json:"requisition_id"`
CandidateID uuid.UUID `json:"candidate_id"`
Stage string `json:"stage"`
StageChangedAt time.Time `json:"stage_changed_at"`
DispositionReason *string `json:"disposition_reason"`
SourceFirstTouch string `json:"source_first_touch"`
SourceLastTouch string `json:"source_last_touch"`
OwnerUserID *uuid.UUID `json:"owner_user_id"`
CreatedBy *uuid.UUID `json:"created_by"`
CreatedAt time.Time `json:"created_at"`
UpdatedAt time.Time `json:"updated_at"`
FurthestStageOrd int16 `json:"furthest_stage_ord"`
DispositionCode *string `json:"disposition_code"`
}
type ApplicationStageEvent struct {
OrganizationID uuid.UUID `json:"organization_id"`
ID int64 `json:"id"`
ApplicationID uuid.UUID `json:"application_id"`
FromStage *string `json:"from_stage"`
ToStage string `json:"to_stage"`
Reason string `json:"reason"`
ActorUserID *uuid.UUID `json:"actor_user_id"`
OccurredAt time.Time `json:"occurred_at"`
CreatedAt time.Time `json:"created_at"`
DispositionCode *string `json:"disposition_code"`
SecondsInFrom pgtype.Numeric `json:"seconds_in_from"`
ActorName string `json:"actor_name"`
}
type AuditLog struct {
ID int64 `json:"id"`
OrganizationID *uuid.UUID `json:"organization_id"`
ActorUserID *uuid.UUID `json:"actor_user_id"`
Action string `json:"action"`
EntityType *string `json:"entity_type"`
EntityID *string `json:"entity_id"`
OldValues []byte `json:"old_values"`
NewValues []byte `json:"new_values"`
IpAddress *string `json:"ip_address"`
UserAgent *string `json:"user_agent"`
CreatedAt time.Time `json:"created_at"`
}
type AuthCredential struct {
UserID uuid.UUID `json:"user_id"`
OrganizationID uuid.UUID `json:"organization_id"`
EmailNormalized string `json:"email_normalized"`
PasswordHash string `json:"password_hash"`
PepperVersion int32 `json:"pepper_version"`
FailedStreak int32 `json:"failed_streak"`
LockedUntil *time.Time `json:"locked_until"`
PasswordChangedAt time.Time `json:"password_changed_at"`
CreatedAt time.Time `json:"created_at"`
UpdatedAt time.Time `json:"updated_at"`
}
type AuthSession struct {
ID uuid.UUID `json:"id"`
TokenHash []byte `json:"token_hash"`
UserID uuid.UUID `json:"user_id"`
OrganizationID uuid.UUID `json:"organization_id"`
State string `json:"state"`
MfaSatisfied bool `json:"mfa_satisfied"`
CreatedAt time.Time `json:"created_at"`
LastSeenAt time.Time `json:"last_seen_at"`
IdleExpiresAt time.Time `json:"idle_expires_at"`
AbsoluteExpiresAt time.Time `json:"absolute_expires_at"`
RevokedAt *time.Time `json:"revoked_at"`
RotatedFrom *uuid.UUID `json:"rotated_from"`
IpAddress *string `json:"ip_address"`
UserAgent *string `json:"user_agent"`
}
type AwardIncumbentRole struct {
RecordTable string `json:"record_table"`
RecordID string `json:"record_id"`
LaborCategory string `json:"labor_category"`
RoleCount int32 `json:"role_count"`
Evidence string `json:"evidence"`
ClassifiedAt time.Time `json:"classified_at"`
}
type BenchImportLog struct {
ID uuid.UUID `json:"id"`
OrganizationID uuid.UUID `json:"organization_id"`
CandidateID *uuid.UUID `json:"candidate_id"`
Source string `json:"source"`
FileOrBatch string `json:"file_or_batch"`
LegalBasis string `json:"legal_basis"`
CollectedAt time.Time `json:"collected_at"`
}
type BidOutcome struct {
ID uuid.UUID `json:"id"`
OrganizationID uuid.UUID `json:"organization_id"`
OpportunityID *uuid.UUID `json:"opportunity_id"`
RequirementID *uuid.UUID `json:"requirement_id"`
SlateID *uuid.UUID `json:"slate_id"`
SubmittedAt *time.Time `json:"submitted_at"`
Result string `json:"result"`
AwardDate pgtype.Date `json:"award_date"`
AwardeeUei string `json:"awardee_uei"`
Notes string `json:"notes"`
CreatedAt time.Time `json:"created_at"`
UpdatedAt time.Time `json:"updated_at"`
}
type BlsWage struct {
SeriesID string `json:"series_id"`
OccupationCode string `json:"occupation_code"`
OccupationTitle string `json:"occupation_title"`
Role string `json:"role"`
Area string `json:"area"`
AreaName string `json:"area_name"`
Metric string `json:"metric"`
PeriodYear string `json:"period_year"`
Value *decimal.Decimal `json:"value"`
Raw []byte `json:"raw"`
SyncedAt time.Time `json:"synced_at"`
}
type Candidate struct {
ID uuid.UUID `json:"id"`
OrganizationID uuid.UUID `json:"organization_id"`
FullName string `json:"full_name"`
Email *string `json:"email"`
Headline *string `json:"headline"`
ClearanceLevel string `json:"clearance_level"`
ClearancePoly string `json:"clearance_poly"`
ClearanceStatus string `json:"clearance_status"`
ClearanceGrantedAt pgtype.Date `json:"clearance_granted_at"`
ClearanceExpiresAt pgtype.Date `json:"clearance_expires_at"`
ReinvestigationDueAt pgtype.Date `json:"reinvestigation_due_at"`
YearsExperience int32 `json:"years_experience"`
Location *string `json:"location"`
Remote bool `json:"remote"`
Relocatable bool `json:"relocatable"`
Available bool `json:"available"`
ResumeEmbedding *pgvector.Vector `json:"resume_embedding"`
SearchTsv interface{} `json:"search_tsv"`
CreatedAt time.Time `json:"created_at"`
UpdatedAt time.Time `json:"updated_at"`
DeletedAt *time.Time `json:"deleted_at"`
Source string `json:"source"`
ExternalID *string `json:"external_id"`
AnonymizedAt *time.Time `json:"anonymized_at"`
ClearanceProvenance string `json:"clearance_provenance"`
ClearanceVerifiedAt *time.Time `json:"clearance_verified_at"`
ClearanceCompartments []string `json:"clearance_compartments"`
SourceFirstTouch string `json:"source_first_touch"`
SourceLastTouch string `json:"source_last_touch"`
SourceDetail string `json:"source_detail"`
Provenance string `json:"provenance"`
OwnerUserID *uuid.UUID `json:"owner_user_id"`
MergedIntoID *uuid.UUID `json:"merged_into_id"`
CvEnrolled *bool `json:"cv_enrolled"`
CvEnrolledOn pgtype.Date `json:"cv_enrolled_on"`
AccessEndedOn pgtype.Date `json:"access_ended_on"`
LastAdjudicatedOn pgtype.Date `json:"last_adjudicated_on"`
}
type CandidateCertification struct {
OrganizationID uuid.UUID `json:"organization_id"`
CandidateID uuid.UUID `json:"candidate_id"`
Name string `json:"name"`
}
type CandidateCustomerExperience struct {
OrganizationID uuid.UUID `json:"organization_id"`
CandidateID uuid.UUID `json:"candidate_id"`
Agency string `json:"agency"`
}
type CandidateDocument struct {
OrganizationID uuid.UUID `json:"organization_id"`
ID uuid.UUID `json:"id"`
CandidateID uuid.UUID `json:"candidate_id"`
DocumentType string `json:"document_type"`
FileName string `json:"file_name"`
MediaType string `json:"media_type"`
StorageKey string `json:"storage_key"`
SizeBytes int64 `json:"size_bytes"`
Sha256 string `json:"sha256"`
UploadedByUserID *uuid.UUID `json:"uploaded_by_user_id"`
ExtractionStatus string `json:"extraction_status"`
ExtractionErrorCode string `json:"extraction_error_code"`
SupersedesDocumentID *uuid.UUID `json:"supersedes_document_id"`
IsCurrent bool `json:"is_current"`
CreatedAt time.Time `json:"created_at"`
}
type CandidateEvaluation struct {
OrganizationID uuid.UUID `json:"organization_id"`
CandidateID uuid.UUID `json:"candidate_id"`
RequirementID uuid.UUID `json:"requirement_id"`
TotalScore decimal.Decimal `json:"total_score"`
Band string `json:"band"`
ClearanceScore decimal.Decimal `json:"clearance_score"`
SkillsScore decimal.Decimal `json:"skills_score"`
CertsScore decimal.Decimal `json:"certs_score"`
CustomerScore decimal.Decimal `json:"customer_score"`
ExperienceScore decimal.Decimal `json:"experience_score"`
LocationScore decimal.Decimal `json:"location_score"`
Explanation string `json:"explanation"`
MatchedSkills []byte `json:"matched_skills"`
GapSummary []byte `json:"gap_summary"`
ModelVersion string `json:"model_version"`
EvaluatedBy *uuid.UUID `json:"evaluated_by"`
EvaluatedAt time.Time `json:"evaluated_at"`
UpdatedAt time.Time `json:"updated_at"`
WeightProfileVersion string `json:"weight_profile_version"`
}
type CandidateList struct {
OrganizationID uuid.UUID `json:"organization_id"`
ID uuid.UUID `json:"id"`
Name string `json:"name"`
Description string `json:"description"`
OwnerUserID uuid.UUID `json:"owner_user_id"`
Visibility string `json:"visibility"`
Purpose string `json:"purpose"`
Status string `json:"status"`
CreatedAt time.Time `json:"created_at"`
UpdatedAt time.Time `json:"updated_at"`
}
type CandidateListMember struct {
OrganizationID uuid.UUID `json:"organization_id"`
ListID uuid.UUID `json:"list_id"`
CandidateID uuid.UUID `json:"candidate_id"`
Note string `json:"note"`
AddedBy *uuid.UUID `json:"added_by"`
AddedAt time.Time `json:"added_at"`
}
type CandidateMerge struct {
OrganizationID uuid.UUID `json:"organization_id"`
ID uuid.UUID `json:"id"`
KeptID uuid.UUID `json:"kept_id"`
MergedID uuid.UUID `json:"merged_id"`
Moved []byte `json:"moved"`
Dropped []byte `json:"dropped"`
Reason string `json:"reason"`
MergedBy *uuid.UUID `json:"merged_by"`
CreatedAt time.Time `json:"created_at"`
}
type CandidateMissionTag struct {
OrganizationID uuid.UUID `json:"organization_id"`
CandidateID uuid.UUID `json:"candidate_id"`
MissionCode string `json:"mission_code"`
Mechanism string `json:"mechanism"`
Evidence string `json:"evidence"`
}
type CandidateSkill struct {
OrganizationID uuid.UUID `json:"organization_id"`
CandidateID uuid.UUID `json:"candidate_id"`
SkillID uuid.UUID `json:"skill_id"`
}
type CaptureGateDecision struct {
OrganizationID uuid.UUID `json:"organization_id"`
ID uuid.UUID `json:"id"`
OpportunityID uuid.UUID `json:"opportunity_id"`
Gate string `json:"gate"`
Decision string `json:"decision"`
DecidedBy *uuid.UUID `json:"decided_by"`
DecidedAt time.Time `json:"decided_at"`
Rationale string `json:"rationale"`
ReadinessScore pgtype.Numeric `json:"readiness_score"`
ReadinessBand *string `json:"readiness_band"`
WinProbability pgtype.Numeric `json:"win_probability"`
CreatedAt time.Time `json:"created_at"`
}
type ClearanceCompartment struct {
Code string `json:"code"`
Kind string `json:"kind"`
Label string `json:"label"`
}
type ClearanceLevel struct {
Code string `json:"code"`
Rank int32 `json:"rank"`
RequiresPolygraph bool `json:"requires_polygraph"`
Label string `json:"label"`
}
type ClearanceReciprocity struct {
HeldCode string `json:"held_code"`
RequiredCode string `json:"required_code"`
Satisfies bool `json:"satisfies"`
Source string `json:"source"`
}
type Client struct {
OrganizationID uuid.UUID `json:"organization_id"`
ID uuid.UUID `json:"id"`
Name string `json:"name"`
Uei string `json:"uei"`
Industry string `json:"industry"`
Website string `json:"website"`
Status string `json:"status"`
Notes string `json:"notes"`
CreatedBy *uuid.UUID `json:"created_by"`
CreatedAt time.Time `json:"created_at"`
UpdatedAt time.Time `json:"updated_at"`
OwnerUserID *uuid.UUID `json:"owner_user_id"`
OwnerSince *time.Time `json:"owner_since"`
}
type ClientContact struct {
OrganizationID uuid.UUID `json:"organization_id"`
ID uuid.UUID `json:"id"`
ClientID uuid.UUID `json:"client_id"`
FullName string `json:"full_name"`
Title string `json:"title"`
Email string `json:"email"`
Phone string `json:"phone"`
IsHiringManager bool `json:"is_hiring_manager"`
IsPrimary bool `json:"is_primary"`
Status string `json:"status"`
CreatedAt time.Time `json:"created_at"`
UpdatedAt time.Time `json:"updated_at"`
}
type ConnectorSyncState struct {
OrganizationID uuid.UUID `json:"organization_id"`
ConnectorName string `json:"connector_name"`
Watermark time.Time `json:"watermark"`
LastRunAt *time.Time `json:"last_run_at"`
RecordsSynced int64 `json:"records_synced"`
}
type CorpusChunk struct {
ID int64 `json:"id"`
DocumentID uuid.UUID `json:"document_id"`
PageNumber *int32 `json:"page_number"`
SectionLabel string `json:"section_label"`
TextContent string `json:"text_content"`
ContentHash string `json:"content_hash"`
Embedding interface{} `json:"embedding"`
ExtractionMethod string `json:"extraction_method"`
Confidence *float32 `json:"confidence"`
CreatedAt time.Time `json:"created_at"`
Provenance string `json:"provenance"`
}
type CorpusDocument struct {
ID uuid.UUID `json:"id"`
OpportunityRecordID uuid.UUID `json:"opportunity_record_id"`
ResourceID string `json:"resource_id"`
FileName string `json:"file_name"`
MediaType string `json:"media_type"`
SizeBytes *int64 `json:"size_bytes"`
Sha256 string `json:"sha256"`
SourceUrl string `json:"source_url"`
ExtractStatus string `json:"extract_status"`
ExtractError string `json:"extract_error"`
PageCount *int32 `json:"page_count"`
FetchedBytes *int64 `json:"fetched_bytes"`
FetchedAt *time.Time `json:"fetched_at"`
CreatedAt time.Time `json:"created_at"`
UpdatedAt time.Time `json:"updated_at"`
Provenance string `json:"provenance"`
}
type CurationProposal struct {
ID uuid.UUID `json:"id"`
Kind string `json:"kind"`
FromSkillID *uuid.UUID `json:"from_skill_id"`
ToSkillID *uuid.UUID `json:"to_skill_id"`
Relation *string `json:"relation"`
ProposedStrength *decimal.Decimal `json:"proposed_strength"`
EvidenceObservations int32 `json:"evidence_observations"`
EvidenceSuccesses int32 `json:"evidence_successes"`
ModelVersion string `json:"model_version"`
Status string `json:"status"`
Approver *uuid.UUID `json:"approver"`
ApprovedAt *time.Time `json:"approved_at"`
CreatedAt time.Time `json:"created_at"`
}
type DpBudgetLedger struct {
ID uuid.UUID `json:"id"`
ModelVersion string `json:"model_version"`
TenantID *uuid.UUID `json:"tenant_id"`
RdpOrders []byte `json:"rdp_orders"`
AccumulatedRdp decimal.Decimal `json:"accumulated_rdp"`
EpsilonAtDelta decimal.Decimal `json:"epsilon_at_delta"`
Delta decimal.Decimal `json:"delta"`
ContributingTenantCount int32 `json:"contributing_tenant_count"`
ReleasedAt time.Time `json:"released_at"`
}
type FederalMissionTag struct {
RecordTable string `json:"record_table"`
RecordID string `json:"record_id"`
MissionCode string `json:"mission_code"`
Mechanism string `json:"mechanism"`
Evidence string `json:"evidence"`
Confidence decimal.Decimal `json:"confidence"`
ClassifiedAt time.Time `json:"classified_at"`
}
type IngestManifest struct {
ID uuid.UUID `json:"id"`
Source string `json:"source"`
Url string `json:"url"`
License string `json:"license"`
FetchedAt time.Time `json:"fetched_at"`
RecordCount int32 `json:"record_count"`
ContentHash string `json:"content_hash"`
CreatedAt time.Time `json:"created_at"`
}
type Interview struct {
OrganizationID uuid.UUID `json:"organization_id"`
ID uuid.UUID `json:"id"`
ApplicationID uuid.UUID `json:"application_id"`
Round int32 `json:"round"`
Kind string `json:"kind"`
ScheduledAt *time.Time `json:"scheduled_at"`
CompletedAt *time.Time `json:"completed_at"`
Outcome string `json:"outcome"`
Interviewer string `json:"interviewer"`
Notes string `json:"notes"`
CreatedBy *uuid.UUID `json:"created_by"`
CreatedAt time.Time `json:"created_at"`
UpdatedAt time.Time `json:"updated_at"`
}
type InterviewOffer struct {
OrganizationID uuid.UUID `json:"organization_id"`
ID uuid.UUID `json:"id"`
ApplicationID uuid.UUID `json:"application_id"`
PublicToken string `json:"public_token"`
Kind string `json:"kind"`
Round int32 `json:"round"`
DurationMins int32 `json:"duration_mins"`
LocationText string `json:"location_text"`
Interviewer string `json:"interviewer"`
Message string `json:"message"`
Status string `json:"status"`
ExpiresAt time.Time `json:"expires_at"`
BookedSlotID *uuid.UUID `json:"booked_slot_id"`
InterviewID *uuid.UUID `json:"interview_id"`
CreatedBy *uuid.UUID `json:"created_by"`
CreatedAt time.Time `json:"created_at"`
UpdatedAt time.Time `json:"updated_at"`
}
type InterviewOfferSlot struct {
OrganizationID uuid.UUID `json:"organization_id"`
ID uuid.UUID `json:"id"`
OfferID uuid.UUID `json:"offer_id"`
StartsAt time.Time `json:"starts_at"`
EndsAt time.Time `json:"ends_at"`
Available bool `json:"available"`
}
type JobApplication struct {
OrganizationID uuid.UUID `json:"organization_id"`
ID uuid.UUID `json:"id"`
PostingID uuid.UUID `json:"posting_id"`
FullName string `json:"full_name"`
Email string `json:"email"`
Phone string `json:"phone"`
LocationText string `json:"location_text"`
CoverNote string `json:"cover_note"`
ClearanceSelfReported string `json:"clearance_self_reported"`
ResumeStorageKey string `json:"resume_storage_key"`
ResumeFileName string `json:"resume_file_name"`
ResumeMediaType string `json:"resume_media_type"`
ResumeSha256 string `json:"resume_sha256"`
Status string `json:"status"`
StatusReason string `json:"status_reason"`
ReviewedBy *uuid.UUID `json:"reviewed_by"`
ReviewedAt *time.Time `json:"reviewed_at"`
CandidateID *uuid.UUID `json:"candidate_id"`
Source string `json:"source"`
ConsentText string `json:"consent_text"`
ConsentedAt *time.Time `json:"consented_at"`
SubmittedIp *netip.Addr `json:"submitted_ip"`
CreatedAt time.Time `json:"created_at"`
}
type JobPosting struct {
OrganizationID uuid.UUID `json:"organization_id"`
ID uuid.UUID `json:"id"`
RequisitionID uuid.UUID `json:"requisition_id"`
PublicToken string `json:"public_token"`
Title string `json:"title"`
Summary string `json:"summary"`
Responsibilities string `json:"responsibilities"`
Qualifications string `json:"qualifications"`
LocationText string `json:"location_text"`
RemoteAllowed bool `json:"remote_allowed"`
EmploymentType string `json:"employment_type"`
ClearanceText string `json:"clearance_text"`
PayRangeText string `json:"pay_range_text"`
Status string `json:"status"`
PublishedAt *time.Time `json:"published_at"`
ClosesAt *time.Time `json:"closes_at"`
CreatedBy *uuid.UUID `json:"created_by"`
CreatedAt time.Time `json:"created_at"`
UpdatedAt time.Time `json:"updated_at"`
}
type KeyPersonnelCommitment struct {
OrganizationID uuid.UUID `json:"organization_id"`
ID uuid.UUID `json:"id"`
RequirementID uuid.UUID `json:"requirement_id"`
CandidateID *uuid.UUID `json:"candidate_id"`
TeamingPartnerID *uuid.UUID `json:"teaming_partner_id"`
PartnerPersonName string `json:"partner_person_name"`
RoleTitle string `json:"role_title"`
CommitmentType string `json:"commitment_type"`
Status string `json:"status"`
SignedOn pgtype.Date `json:"signed_on"`
ExpiresOn pgtype.Date `json:"expires_on"`
Notes string `json:"notes"`
CreatedBy *uuid.UUID `json:"created_by"`
CreatedAt time.Time `json:"created_at"`
UpdatedAt time.Time `json:"updated_at"`
}
type LoginAttempt struct {
ID int64 `json:"id"`
EmailNormalized string `json:"email_normalized"`
OrganizationID *uuid.UUID `json:"organization_id"`
IpAddress *string `json:"ip_address"`
Succeeded bool `json:"succeeded"`
Reason *string `json:"reason"`
CreatedAt time.Time `json:"created_at"`
}
type MailAccount struct {
OrganizationID uuid.UUID `json:"organization_id"`
UserID uuid.UUID `json:"user_id"`
ImapHost string `json:"imap_host"`
ImapPort int32 `json:"imap_port"`
ImapUsername string `json:"imap_username"`
Mailbox string `json:"mailbox"`
SyncSent bool `json:"sync_sent"`
Enabled bool `json:"enabled"`
VerifiedAt *time.Time `json:"verified_at"`
LastSyncAt *time.Time `json:"last_sync_at"`
LastError string `json:"last_error"`
LookbackDays int32 `json:"lookback_days"`
CreatedAt time.Time `json:"created_at"`
UpdatedAt time.Time `json:"updated_at"`
}
type Message struct {
OrganizationID uuid.UUID `json:"organization_id"`
ID uuid.UUID `json:"id"`
CandidateID *uuid.UUID `json:"candidate_id"`
ContactID *uuid.UUID `json:"contact_id"`
RequisitionID *uuid.UUID `json:"requisition_id"`
ApplicationID *uuid.UUID `json:"application_id"`
Channel string `json:"channel"`
Direction string `json:"direction"`
ToAddress string `json:"to_address"`
FromAddress string `json:"from_address"`
Subject string `json:"subject"`
Body string `json:"body"`
TemplateID *uuid.UUID `json:"template_id"`
SentByUserID *uuid.UUID `json:"sent_by_user_id"`
Status string `json:"status"`
ErrorText string `json:"error_text"`
CreatedAt time.Time `json:"created_at"`
SentAt *time.Time `json:"sent_at"`
}
type MessageTemplate struct {
OrganizationID uuid.UUID `json:"organization_id"`
ID uuid.UUID `json:"id"`
Name string `json:"name"`
Audience string `json:"audience"`
Subject string `json:"subject"`
Body string `json:"body"`
Status string `json:"status"`
CreatedBy *uuid.UUID `json:"created_by"`
CreatedAt time.Time `json:"created_at"`
UpdatedAt time.Time `json:"updated_at"`
}
type MfaRecoveryCode struct {
ID uuid.UUID `json:"id"`
UserID uuid.UUID `json:"user_id"`
OrganizationID uuid.UUID `json:"organization_id"`
CodeHash string `json:"code_hash"`
PepperVersion int32 `json:"pepper_version"`
LookupTag []byte `json:"lookup_tag"`
UsedAt *time.Time `json:"used_at"`
CreatedAt time.Time `json:"created_at"`
}
type MfaTotp struct {
UserID uuid.UUID `json:"user_id"`
OrganizationID uuid.UUID `json:"organization_id"`
SecretCiphertext []byte `json:"secret_ciphertext"`
SecretNonce []byte `json:"secret_nonce"`
KeyVersion int32 `json:"key_version"`
Status string `json:"status"`
LastUsedStep int64 `json:"last_used_step"`
CreatedAt time.Time `json:"created_at"`
ActivatedAt *time.Time `json:"activated_at"`
}
type MissionArea struct {
Code string `json:"code"`
Name string `json:"name"`
Description string `json:"description"`
SpineTerm *string `json:"spine_term"`
SortOrder int32 `json:"sort_order"`
CreatedAt time.Time `json:"created_at"`
}
type MissionSpine struct {
ID uuid.UUID `json:"id"`
Version string `json:"version"`
Term string `json:"term"`
CanonicalDefinition string `json:"canonical_definition"`
Authority string `json:"authority"`
SourceDoc string `json:"source_doc"`
SourceUrl string `json:"source_url"`
EffectiveDate pgtype.Date `json:"effective_date"`
}
type Offer struct {
OrganizationID uuid.UUID `json:"organization_id"`
ID uuid.UUID `json:"id"`
ApplicationID uuid.UUID `json:"application_id"`
Status string `json:"status"`
EmploymentType string `json:"employment_type"`
BillRate pgtype.Numeric `json:"bill_rate"`
PayRate pgtype.Numeric `json:"pay_rate"`
Salary pgtype.Numeric `json:"salary"`
FeePct pgtype.Numeric `json:"fee_pct"`
ExtendedAt time.Time `json:"extended_at"`
RespondedAt *time.Time `json:"responded_at"`
ExpiresAt *time.Time `json:"expires_at"`
DeclineReason string `json:"decline_reason"`
CreatedBy *uuid.UUID `json:"created_by"`
CreatedAt time.Time `json:"created_at"`
UpdatedAt time.Time `json:"updated_at"`
BurdenPct pgtype.Numeric `json:"burden_pct"`
}
type OntologyCrosswalk struct {
ID uuid.UUID `json:"id"`
FromSystem string `json:"from_system"`
FromCode string `json:"from_code"`
ToSystem string `json:"to_system"`
ToCode string `json:"to_code"`
Relation string `json:"relation"`
SourceName string `json:"source_name"`
SyncedAt time.Time `json:"synced_at"`
}
type OntologyTerm struct {
ID uuid.UUID `json:"id"`
SourceName string `json:"source_name"`
SourceRecordID string `json:"source_record_id"`
TermKind string `json:"term_kind"`
Term string `json:"term"`
Code string `json:"code"`
Category string `json:"category"`
Description string `json:"description"`
RawObjectKey string `json:"raw_object_key"`
RawSha256 string `json:"raw_sha256"`
FetchedAt time.Time `json:"fetched_at"`
SyncedAt time.Time `json:"synced_at"`
}
type Opportunity struct {
ID uuid.UUID `json:"id"`
OrganizationID uuid.UUID `json:"organization_id"`
Name string `json:"name"`
SolicitationNumber *string `json:"solicitation_number"`
CustomerAgency *string `json:"customer_agency"`
DueDate pgtype.Date `json:"due_date"`
Status string `json:"status"`
CreatedAt time.Time `json:"created_at"`
UpdatedAt time.Time `json:"updated_at"`
Value *decimal.Decimal `json:"value"`
ValueSource string `json:"value_source"`
FederalRef *string `json:"federal_ref"`
}
type OpportunityDocument struct {
OrganizationID uuid.UUID `json:"organization_id"`
ID uuid.UUID `json:"id"`
OpportunityID uuid.UUID `json:"opportunity_id"`
OpportunityVersionID *uuid.UUID `json:"opportunity_version_id"`
DocumentType string `json:"document_type"`
FileName string `json:"file_name"`
MediaType string `json:"media_type"`
StorageKey string `json:"storage_key"`
SizeBytes int64 `json:"size_bytes"`
Sha256 string `json:"sha256"`
SourceUrl string `json:"source_url"`
SourceType string `json:"source_type"`
UploadedByUserID *uuid.UUID `json:"uploaded_by_user_id"`
ExtractionStatus string `json:"extraction_status"`
ExtractionErrorCode string `json:"extraction_error_code"`
SupersedesDocumentID *uuid.UUID `json:"supersedes_document_id"`
IsCurrent bool `json:"is_current"`
CreatedAt time.Time `json:"created_at"`
Provenance string `json:"provenance"`
}
type OpportunityDocumentChunk struct {
OrganizationID uuid.UUID `json:"organization_id"`
ID uuid.UUID `json:"id"`
DocumentID uuid.UUID `json:"document_id"`
PageNumber *int32 `json:"page_number"`
SectionLabel string `json:"section_label"`
TextContent string `json:"text_content"`
ContentHash string `json:"content_hash"`
ExtractionMethod string `json:"extraction_method"`
Confidence float32 `json:"confidence"`
CreatedAt time.Time `json:"created_at"`
Provenance string `json:"provenance"`
}
type OpportunityRecord struct {
ID uuid.UUID `json:"id"`
SourceName string `json:"source_name"`
SourceRecordID string `json:"source_record_id"`
DedupeKey string `json:"dedupe_key"`
RecordKind string `json:"record_kind"`
Title string `json:"title"`
Agency string `json:"agency"`
SubAgency string `json:"sub_agency"`
Naics string `json:"naics"`
Psc string `json:"psc"`
PopCity string `json:"pop_city"`
PopState string `json:"pop_state"`
PopCountry string `json:"pop_country"`
PopZip string `json:"pop_zip"`
SetAside string `json:"set_aside"`
SetAsideCode string `json:"set_aside_code"`
ContractVehicle string `json:"contract_vehicle"`
EstimatedValue *decimal.Decimal `json:"estimated_value"`
ValueSource string `json:"value_source"`
IncumbentName string `json:"incumbent_name"`
IncumbentUei string `json:"incumbent_uei"`
PostedDate pgtype.Date `json:"posted_date"`
ResponseDeadline *time.Time `json:"response_deadline"`
AwardDate pgtype.Date `json:"award_date"`
EstimatedAwardDate pgtype.Date `json:"estimated_award_date"`
PopStartDate pgtype.Date `json:"pop_start_date"`
PopEndDate pgtype.Date `json:"pop_end_date"`
UiLink string `json:"ui_link"`
IsPlanning bool `json:"is_planning"`
RawObjectKey string `json:"raw_object_key"`
RawSha256 string `json:"raw_sha256"`
FetchedAt time.Time `json:"fetched_at"`
SyncedAt time.Time `json:"synced_at"`
Embedding *pgvector.Vector `json:"embedding"`
SearchTsv interface{} `json:"search_tsv"`
Provenance string `json:"provenance"`
}
type OpportunityScopeItem struct {
OrganizationID uuid.UUID `json:"organization_id"`
ID uuid.UUID `json:"id"`
OpportunityID uuid.UUID `json:"opportunity_id"`
ScopeType string `json:"scope_type"`
Title string `json:"title"`
Description string `json:"description"`
SourceDocumentID *uuid.UUID `json:"source_document_id"`
SourcePageNumber *int32 `json:"source_page_number"`
SourceSectionLabel string `json:"source_section_label"`
SourceQuoteHash string `json:"source_quote_hash"`
ExtractionMethod string `json:"extraction_method"`
ExtractionConfidence float32 `json:"extraction_confidence"`
ReviewStatus string `json:"review_status"`
ReviewedByUserID *uuid.UUID `json:"reviewed_by_user_id"`
ReviewedAt *time.Time `json:"reviewed_at"`
ParentScopeItemID *uuid.UUID `json:"parent_scope_item_id"`
DisplayOrder int32 `json:"display_order"`
CreatedAt time.Time `json:"created_at"`
UpdatedAt time.Time `json:"updated_at"`
Provenance string `json:"provenance"`
}
type OpportunityVersion struct {
OrganizationID uuid.UUID `json:"organization_id"`
ID uuid.UUID `json:"id"`
OpportunityID uuid.UUID `json:"opportunity_id"`
VersionNumber int32 `json:"version_number"`
AmendmentNumber string `json:"amendment_number"`
SourceVersionLabel string `json:"source_version_label"`
SourcePayloadHash string `json:"source_payload_hash"`
NormalizedPayload []byte `json:"normalized_payload"`
FetchedAt time.Time `json:"fetched_at"`
EffectiveAt *time.Time `json:"effective_at"`
SupersedesVersionID *uuid.UUID `json:"supersedes_version_id"`
IngestManifestID *uuid.UUID `json:"ingest_manifest_id"`
IsCurrent bool `json:"is_current"`
CreatedByUserID *uuid.UUID `json:"created_by_user_id"`
CreatedAt time.Time `json:"created_at"`
}
type OrgSecret struct {
OrganizationID uuid.UUID `json:"organization_id"`
Name string `json:"name"`
Ciphertext []byte `json:"ciphertext"`
Nonce []byte `json:"nonce"`
KeyVersion int32 `json:"key_version"`
CreatedAt time.Time `json:"created_at"`
UpdatedAt time.Time `json:"updated_at"`
UpdatedBy *uuid.UUID `json:"updated_by"`
}
type OrgSetting struct {
OrganizationID uuid.UUID `json:"organization_id"`
EmailDeliveryEnabled bool `json:"email_delivery_enabled"`
EmailFromAddress *string `json:"email_from_address"`
EmailFromName *string `json:"email_from_name"`
EmailReplyTo *string `json:"email_reply_to"`
SmtpHost *string `json:"smtp_host"`
SmtpPort *int32 `json:"smtp_port"`
SmtpUsername *string `json:"smtp_username"`
SmtpSecurity string `json:"smtp_security"`
SmtpVerifiedAt *time.Time `json:"smtp_verified_at"`
SmtpLastAttemptAt *time.Time `json:"smtp_last_attempt_at"`
SmtpLastError *string `json:"smtp_last_error"`
WorkVisibility string `json:"work_visibility"`
ShowActivityPresence bool `json:"show_activity_presence"`
ClaimRequired bool `json:"claim_required"`
ClaimExpiryHours int32 `json:"claim_expiry_hours"`
RateVisibility string `json:"rate_visibility"`
MarginVisibility string `json:"margin_visibility"`
ContactVisibility string `json:"contact_visibility"`
InviteExpiryHours int32 `json:"invite_expiry_hours"`
DefaultInviteRole string `json:"default_invite_role"`
UpdatedAt time.Time `json:"updated_at"`
UpdatedBy *uuid.UUID `json:"updated_by"`
StaffRecordScope string `json:"staff_record_scope"`
ManagerRecordScope string `json:"manager_record_scope"`
UnownedRecordsVisible bool `json:"unowned_records_visible"`
DefaultBurdenPct pgtype.Numeric `json:"default_burden_pct"`
AedtNoticeRequired bool `json:"aedt_notice_required"`
}
type Organization struct {
ID uuid.UUID `json:"id"`
Name string `json:"name"`
Slug string `json:"slug"`
Status string `json:"status"`
CreatedAt time.Time `json:"created_at"`
UpdatedAt time.Time `json:"updated_at"`
DisplayName *string `json:"display_name"`
Logo []byte `json:"logo"`
LogoMime *string `json:"logo_mime"`
LogoUpdatedAt *time.Time `json:"logo_updated_at"`
TimeZone string `json:"time_zone"`
}
type OutcomeEvent struct {
OrganizationID uuid.UUID `json:"organization_id"`
ID uuid.UUID `json:"id"`
Module string `json:"module"`
SubjectType string `json:"subject_type"`
SubjectID uuid.UUID `json:"subject_id"`
EventType string `json:"event_type"`
SignalValue decimal.Decimal `json:"signal_value"`
ReasonCode string `json:"reason_code"`
ActorID *uuid.UUID `json:"actor_id"`
OccurredAt time.Time `json:"occurred_at"`
Metadata []byte `json:"metadata"`
CreatedAt time.Time `json:"created_at"`
}
type Placement struct {
OrganizationID uuid.UUID `json:"organization_id"`
ID uuid.UUID `json:"id"`
ApplicationID uuid.UUID `json:"application_id"`
OfferID *uuid.UUID `json:"offer_id"`
Status string `json:"status"`
EmploymentType string `json:"employment_type"`
StartDate pgtype.Date `json:"start_date"`
EndDate pgtype.Date `json:"end_date"`
BillRate pgtype.Numeric `json:"bill_rate"`
PayRate pgtype.Numeric `json:"pay_rate"`
Salary pgtype.Numeric `json:"salary"`
FeeAmount pgtype.Numeric `json:"fee_amount"`
GuaranteeDays int32 `json:"guarantee_days"`
CreatedBy *uuid.UUID `json:"created_by"`
CreatedAt time.Time `json:"created_at"`
UpdatedAt time.Time `json:"updated_at"`
BurdenPct pgtype.Numeric `json:"burden_pct"`
}
type PolygraphType struct {
Code string `json:"code"`
Rank int32 `json:"rank"`
Label string `json:"label"`
}
type Proposal struct {
OrganizationID uuid.UUID `json:"organization_id"`
ID uuid.UUID `json:"id"`
OpportunityID uuid.UUID `json:"opportunity_id"`
Title string `json:"title"`
Stage string `json:"stage"`
Status string `json:"status"`
ProposalOwnerUserID *uuid.UUID `json:"proposal_owner_user_id"`
CaptureOwnerUserID *uuid.UUID `json:"capture_owner_user_id"`
CustomerDeadline *time.Time `json:"customer_deadline"`
InternalDeadline *time.Time `json:"internal_deadline"`
SubmittedAt *time.Time `json:"submitted_at"`
OutcomeRecordedAt *time.Time `json:"outcome_recorded_at"`
CreatedAt time.Time `json:"created_at"`
UpdatedAt time.Time `json:"updated_at"`
}
type ProposalAttachment struct {
OrganizationID uuid.UUID `json:"organization_id"`
ID uuid.UUID `json:"id"`
ProposalID uuid.UUID `json:"proposal_id"`
AttachmentKind string `json:"attachment_kind"`
Required bool `json:"required"`
FileName string `json:"file_name"`
ObjectKey string `json:"object_key"`
ContentSha256 string `json:"content_sha256"`
ByteSize int64 `json:"byte_size"`
Status string `json:"status"`
UploadedByUserID *uuid.UUID `json:"uploaded_by_user_id"`
CreatedAt time.Time `json:"created_at"`
UpdatedAt time.Time `json:"updated_at"`
}
type ProposalComplianceItem struct {
OrganizationID uuid.UUID `json:"organization_id"`
ID uuid.UUID `json:"id"`
ProposalID uuid.UUID `json:"proposal_id"`
RequirementText string `json:"requirement_text"`
SourceDocumentID *uuid.UUID `json:"source_document_id"`
SourcePageNumber *int32 `json:"source_page_number"`
SourceSectionLabel string `json:"source_section_label"`
ResponseLocation string `json:"response_location"`
OwnerUserID *uuid.UUID `json:"owner_user_id"`
DueAt *time.Time `json:"due_at"`
Required bool `json:"required"`
Status string `json:"status"`
EvidenceRef string `json:"evidence_ref"`
ReviewerUserID *uuid.UUID `json:"reviewer_user_id"`
CreatedAt time.Time `json:"created_at"`
UpdatedAt time.Time `json:"updated_at"`
}
type ProposalMilestone struct {
OrganizationID uuid.UUID `json:"organization_id"`
ID uuid.UUID `json:"id"`
ProposalID uuid.UUID `json:"proposal_id"`
Kind string `json:"kind"`
DueAt *time.Time `json:"due_at"`
CompletedAt *time.Time `json:"completed_at"`
CreatedAt time.Time `json:"created_at"`
UpdatedAt time.Time `json:"updated_at"`
}
type ProposalReadinessSnapshot struct {
OrganizationID uuid.UUID `json:"organization_id"`
ID uuid.UUID `json:"id"`
ProposalID uuid.UUID `json:"proposal_id"`
Overall decimal.Decimal `json:"overall"`
StaffingCoverage decimal.Decimal `json:"staffing_coverage"`
ComplianceMatrix decimal.Decimal `json:"compliance_matrix"`
RequiredSections decimal.Decimal `json:"required_sections"`
ReviewAndApproval decimal.Decimal `json:"review_and_approval"`
ScheduleHealth decimal.Decimal `json:"schedule_health"`
RiskPosture decimal.Decimal `json:"risk_posture"`
Blockers []byte `json:"blockers"`
Drivers []byte `json:"drivers"`
AlgorithmVersion string `json:"algorithm_version"`
Stale bool `json:"stale"`
CalculatedAt time.Time `json:"calculated_at"`
}
type ProposalRisk struct {
OrganizationID uuid.UUID `json:"organization_id"`
ID uuid.UUID `json:"id"`
ProposalID uuid.UUID `json:"proposal_id"`
Title string `json:"title"`
Likelihood string `json:"likelihood"`
Impact string `json:"impact"`
OwnerUserID *uuid.UUID `json:"owner_user_id"`
Mitigation string `json:"mitigation"`
TriggerCondition string `json:"trigger_condition"`
Status string `json:"status"`
RelatedScopeItemID *uuid.UUID `json:"related_scope_item_id"`
CreatedAt time.Time `json:"created_at"`
UpdatedAt time.Time `json:"updated_at"`
}
type ProposalSection struct {
OrganizationID uuid.UUID `json:"organization_id"`
ID uuid.UUID `json:"id"`
ProposalID uuid.UUID `json:"proposal_id"`
SectionCode string `json:"section_code"`
Title string `json:"title"`
OwnerUserID *uuid.UUID `json:"owner_user_id"`
Required bool `json:"required"`
PageOrWordLimit string `json:"page_or_word_limit"`
DueAt *time.Time `json:"due_at"`
DraftStatus string `json:"draft_status"`
ReviewStatus string `json:"review_status"`
ApprovedByUserID *uuid.UUID `json:"approved_by_user_id"`
ApprovedAt *time.Time `json:"approved_at"`
CreatedAt time.Time `json:"created_at"`
UpdatedAt time.Time `json:"updated_at"`
}
type ProposalSectionVersion struct {
OrganizationID uuid.UUID `json:"organization_id"`
ID uuid.UUID `json:"id"`
SectionID uuid.UUID `json:"section_id"`
VersionNumber int32 `json:"version_number"`
ContentRef string `json:"content_ref"`
ContentSha256 string `json:"content_sha256"`
AuthoredByUserID *uuid.UUID `json:"authored_by_user_id"`
CreatedAt time.Time `json:"created_at"`
}
type ProposalStaffingLink struct {
OrganizationID uuid.UUID `json:"organization_id"`
ID uuid.UUID `json:"id"`
ProposalID uuid.UUID `json:"proposal_id"`
RequirementID uuid.UUID `json:"requirement_id"`
SlateID *uuid.UUID `json:"slate_id"`
RequiredQuantity int32 `json:"required_quantity"`
ApprovedCount int32 `json:"approved_count"`
LaborCategory string `json:"labor_category"`
PayRate pgtype.Numeric `json:"pay_rate"`
BurdenPct pgtype.Numeric `json:"burden_pct"`
BillRate pgtype.Numeric `json:"bill_rate"`
WageFloorID *uuid.UUID `json:"wage_floor_id"`
RateSource string `json:"rate_source"`
RateVersion string `json:"rate_version"`
PricedByUserID *uuid.UUID `json:"priced_by_user_id"`
PricedAt *time.Time `json:"priced_at"`
CreatedAt time.Time `json:"created_at"`
UpdatedAt time.Time `json:"updated_at"`
}
type ProposalTeamMember struct {
OrganizationID uuid.UUID `json:"organization_id"`
ID uuid.UUID `json:"id"`
ProposalID uuid.UUID `json:"proposal_id"`
UserID uuid.UUID `json:"user_id"`
TeamRole string `json:"team_role"`
Status string `json:"status"`
CreatedAt time.Time `json:"created_at"`
UpdatedAt time.Time `json:"updated_at"`
}
type RecommendationRun struct {
ID uuid.UUID `json:"id"`
OrganizationID uuid.UUID `json:"organization_id"`
View string `json:"view"`
ScopeRef *uuid.UUID `json:"scope_ref"`
ModelVersion string `json:"model_version"`
Parameters []byte `json:"parameters"`
CreatedBy *uuid.UUID `json:"created_by"`
CreatedAt time.Time `json:"created_at"`
}
type RecruiterActivity struct {
OrganizationID uuid.UUID `json:"organization_id"`
ID int64 `json:"id"`
ActorUserID *uuid.UUID `json:"actor_user_id"`
Kind string `json:"kind"`
Direction string `json:"direction"`
Outcome string `json:"outcome"`
CandidateID *uuid.UUID `json:"candidate_id"`
ContactID *uuid.UUID `json:"contact_id"`
RequisitionID *uuid.UUID `json:"requisition_id"`
ApplicationID *uuid.UUID `json:"application_id"`
Body string `json:"body"`
AutoCaptured bool `json:"auto_captured"`
OccurredAt time.Time `json:"occurred_at"`
CreatedAt time.Time `json:"created_at"`
ActorName string `json:"actor_name"`
}
type RecruitingGoal struct {
OrganizationID uuid.UUID `json:"organization_id"`
ID uuid.UUID `json:"id"`
Scope string `json:"scope"`
SubjectID *uuid.UUID `json:"subject_id"`
Metric string `json:"metric"`
PeriodStart pgtype.Date `json:"period_start"`
PeriodDays int32 `json:"period_days"`
Target decimal.Decimal `json:"target"`
Note string `json:"note"`
CreatedBy *uuid.UUID `json:"created_by"`
CreatedAt time.Time `json:"created_at"`
UpdatedAt time.Time `json:"updated_at"`
}
type RequiredCertification struct {
OrganizationID uuid.UUID `json:"organization_id"`
RequirementID uuid.UUID `json:"requirement_id"`
Name string `json:"name"`
}
type RequiredSkill struct {
OrganizationID uuid.UUID `json:"organization_id"`
RequirementID uuid.UUID `json:"requirement_id"`
SkillID uuid.UUID `json:"skill_id"`
Mandatory bool `json:"mandatory"`
}
type Requirement struct {
ID uuid.UUID `json:"id"`
OrganizationID uuid.UUID `json:"organization_id"`
OpportunityID *uuid.UUID `json:"opportunity_id"`
Title string `json:"title"`
CustomerAgency *string `json:"customer_agency"`
RequiredLevel string `json:"required_level"`
RequiredPoly string `json:"required_poly"`
RequiredYears int32 `json:"required_years"`
WorkLocation *string `json:"work_location"`
RemoteAllowed bool `json:"remote_allowed"`
KeyPersonnel bool `json:"key_personnel"`
CreatedAt time.Time `json:"created_at"`
UpdatedAt time.Time `json:"updated_at"`
DeletedAt *time.Time `json:"deleted_at"`
LaborCategory *string `json:"labor_category"`
Quantity int32 `json:"quantity"`
RequiredCompartments []string `json:"required_compartments"`
}
type RequirementDraft struct {
OrganizationID uuid.UUID `json:"organization_id"`
ID uuid.UUID `json:"id"`
OpportunityID uuid.UUID `json:"opportunity_id"`
SourceScopeItemID *uuid.UUID `json:"source_scope_item_id"`
LaborCategory string `json:"labor_category"`
Quantity int32 `json:"quantity"`
ClearanceLevel string `json:"clearance_level"`
Polygraph string `json:"polygraph"`
Compartments []string `json:"compartments"`
RequiredSkills []string `json:"required_skills"`
MandatorySkillFlags []bool `json:"mandatory_skill_flags"`
RequiredCertifications []string `json:"required_certifications"`
MinimumYearsExperience int32 `json:"minimum_years_experience"`
RequiredCustomerExperience []string `json:"required_customer_experience"`
WorkLocation string `json:"work_location"`
RemoteAllowed bool `json:"remote_allowed"`
TravelPercent int32 `json:"travel_percent"`
AvailabilityDate pgtype.Date `json:"availability_date"`
EmploymentType string `json:"employment_type"`
PayBandMin pgtype.Numeric `json:"pay_band_min"`
PayBandMax pgtype.Numeric `json:"pay_band_max"`
BillRateMin pgtype.Numeric `json:"bill_rate_min"`
BillRateMax pgtype.Numeric `json:"bill_rate_max"`
DerivationMethod string `json:"derivation_method"`
DerivationConfidence float32 `json:"derivation_confidence"`
ReviewStatus string `json:"review_status"`
ReviewedByUserID *uuid.UUID `json:"reviewed_by_user_id"`
ReviewedAt *time.Time `json:"reviewed_at"`
ApprovedRequirementID *uuid.UUID `json:"approved_requirement_id"`
CreatedAt time.Time `json:"created_at"`
UpdatedAt time.Time `json:"updated_at"`
}
type RequirementMissionTag struct {
OrganizationID uuid.UUID `json:"organization_id"`
RequirementID uuid.UUID `json:"requirement_id"`
MissionCode string `json:"mission_code"`
Mechanism string `json:"mechanism"`
Evidence string `json:"evidence"`
}
type Requisition struct {
OrganizationID uuid.UUID `json:"organization_id"`
ID uuid.UUID `json:"id"`
ClientID *uuid.UUID `json:"client_id"`
HiringManagerID *uuid.UUID `json:"hiring_manager_id"`
OwnerUserID *uuid.UUID `json:"owner_user_id"`
RequirementID *uuid.UUID `json:"requirement_id"`
Title string `json:"title"`
Description string `json:"description"`
LaborCategory string `json:"labor_category"`
Openings int32 `json:"openings"`
Priority string `json:"priority"`
EmploymentType string `json:"employment_type"`
Status string `json:"status"`
RequiredLevel string `json:"required_level"`
RequiredPoly string `json:"required_poly"`
WorkLocation string `json:"work_location"`
RemoteAllowed bool `json:"remote_allowed"`
BillRateMin pgtype.Numeric `json:"bill_rate_min"`
BillRateMax pgtype.Numeric `json:"bill_rate_max"`
PayRateMin pgtype.Numeric `json:"pay_rate_min"`
PayRateMax pgtype.Numeric `json:"pay_rate_max"`
SalaryMin pgtype.Numeric `json:"salary_min"`
SalaryMax pgtype.Numeric `json:"salary_max"`
OpenedAt time.Time `json:"opened_at"`
TargetFillDate pgtype.Date `json:"target_fill_date"`
ClosedAt *time.Time `json:"closed_at"`
CreatedBy *uuid.UUID `json:"created_by"`
CreatedAt time.Time `json:"created_at"`
UpdatedAt time.Time `json:"updated_at"`
DeletedAt *time.Time `json:"deleted_at"`
HeldSeconds decimal.Decimal `json:"held_seconds"`
HeldSince *time.Time `json:"held_since"`
IntakeSource string `json:"intake_source"`
VmsName string `json:"vms_name"`
VmsRequisitionRef string `json:"vms_requisition_ref"`
SubmissionDeadline *time.Time `json:"submission_deadline"`
CompetingVendors *int32 `json:"competing_vendors"`
MaxSubmissions *int32 `json:"max_submissions"`
}
type RequisitionEvent struct {
OrganizationID uuid.UUID `json:"organization_id"`
ID uuid.UUID `json:"id"`
RequisitionID uuid.UUID `json:"requisition_id"`
FromStatus *string `json:"from_status"`
ToStatus string `json:"to_status"`
SecondsInFrom pgtype.Numeric `json:"seconds_in_from"`
Note string `json:"note"`
ActorUserID *uuid.UUID `json:"actor_user_id"`
ActorName string `json:"actor_name"`
OccurredAt time.Time `json:"occurred_at"`
}
type SamOpportunity struct {
NoticeID string `json:"notice_id"`
Title string `json:"title"`
SolicitationNumber string `json:"solicitation_number"`
Department string `json:"department"`
FullParentPath string `json:"full_parent_path"`
SubAgency string `json:"sub_agency"`
NaicsCode string `json:"naics_code"`
PscCode string `json:"psc_code"`
SetAsideCode string `json:"set_aside_code"`
SetAside string `json:"set_aside"`
NoticeType string `json:"notice_type"`
BaseType string `json:"base_type"`
PostedDate pgtype.Date `json:"posted_date"`
ResponseDeadline *time.Time `json:"response_deadline"`
Active bool `json:"active"`
PopCity string `json:"pop_city"`
PopState string `json:"pop_state"`
PopZip string `json:"pop_zip"`
UiLink string `json:"ui_link"`
DescriptionUrl string `json:"description_url"`
ResourceLinks []byte `json:"resource_links"`
Poc []byte `json:"poc"`
Raw []byte `json:"raw"`
Source string `json:"source"`
SyncedAt time.Time `json:"synced_at"`
Provenance string `json:"provenance"`
}
type SavedSearch struct {
OrganizationID uuid.UUID `json:"organization_id"`
ID uuid.UUID `json:"id"`
Name string `json:"name"`
OwnerUserID uuid.UUID `json:"owner_user_id"`
Visibility string `json:"visibility"`
Criteria []byte `json:"criteria"`
Pinned bool `json:"pinned"`
LastRunAt *time.Time `json:"last_run_at"`
CreatedAt time.Time `json:"created_at"`
UpdatedAt time.Time `json:"updated_at"`
}
type Skill struct {
ID uuid.UUID `json:"id"`
Name string `json:"name"`
Category *string `json:"category"`
Embedding *pgvector.Vector `json:"embedding"`
CreatedAt time.Time `json:"created_at"`
Source string `json:"source"`
SocCode string `json:"soc_code"`
}
type SkillAlias struct {
ID uuid.UUID `json:"id"`
SkillID uuid.UUID `json:"skill_id"`
AliasText string `json:"alias_text"`
AliasType string `json:"alias_type"`
Source string `json:"source"`
Confidence decimal.Decimal `json:"confidence"`
VerifiedAt *time.Time `json:"verified_at"`
CreatedAt time.Time `json:"created_at"`
}
type SkillRelationship struct {
ID uuid.UUID `json:"id"`
FromSkillID uuid.UUID `json:"from_skill_id"`
ToSkillID uuid.UUID `json:"to_skill_id"`
Relation string `json:"relation"`
Strength decimal.Decimal `json:"strength"`
Source string `json:"source"`
VerifiedAt *time.Time `json:"verified_at"`
CreatedAt time.Time `json:"created_at"`
Verifier *uuid.UUID `json:"verifier"`
}
type Slate struct {
ID uuid.UUID `json:"id"`
OrganizationID uuid.UUID `json:"organization_id"`
RequirementID uuid.UUID `json:"requirement_id"`
Name string `json:"name"`
Status string `json:"status"`
CreatedBy *uuid.UUID `json:"created_by"`
CreatedAt time.Time `json:"created_at"`
UpdatedAt time.Time `json:"updated_at"`
}
type SlateMember struct {
OrganizationID uuid.UUID `json:"organization_id"`
SlateID uuid.UUID `json:"slate_id"`
CandidateID uuid.UUID `json:"candidate_id"`
TotalScore decimal.Decimal `json:"total_score"`
Band string `json:"band"`
ClearanceScore decimal.Decimal `json:"clearance_score"`
SkillsScore decimal.Decimal `json:"skills_score"`
CertsScore decimal.Decimal `json:"certs_score"`
CustomerScore decimal.Decimal `json:"customer_score"`
ExperienceScore decimal.Decimal `json:"experience_score"`
LocationScore decimal.Decimal `json:"location_score"`
Explanation string `json:"explanation"`
Trace []byte `json:"trace"`
GapSummary []byte `json:"gap_summary"`
Decision string `json:"decision"`
DecidedBy *uuid.UUID `json:"decided_by"`
DecidedAt *time.Time `json:"decided_at"`
Rank *int32 `json:"rank"`
CreatedAt time.Time `json:"created_at"`
ModelVersion *string `json:"model_version"`
DecisionNote *string `json:"decision_note"`
Status string `json:"status"`
ApprovedByUserID *uuid.UUID `json:"approved_by_user_id"`
ApprovedAt *time.Time `json:"approved_at"`
WithdrawnByUserID *uuid.UUID `json:"withdrawn_by_user_id"`
WithdrawnAt *time.Time `json:"withdrawn_at"`
WithdrawalReason string `json:"withdrawal_reason"`
}
type SolicitationExtraction struct {
ID uuid.UUID `json:"id"`
OpportunityRecordID uuid.UUID `json:"opportunity_record_id"`
LaborCategory *string `json:"labor_category"`
RequiredClearance *string `json:"required_clearance"`
RequiredSkills []byte `json:"required_skills"`
RequiredCertifications []byte `json:"required_certifications"`