@brivioio/api-server-types 7.16.0 → 7.18.0
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/dist/candidateSearchResults.types.d.ts +50 -0
- package/dist/candidateSearchResults.types.d.ts.map +1 -0
- package/dist/candidateSearchResults.types.js +1 -0
- package/dist/index.d.ts +4 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +4 -0
- package/dist/jobRoleChatHistory.types.d.ts +11 -1
- package/dist/jobRoleChatHistory.types.d.ts.map +1 -1
- package/dist/requirements.types.d.ts +92 -0
- package/dist/requirements.types.d.ts.map +1 -0
- package/dist/requirements.types.js +14 -0
- package/dist/shortlists.types.d.ts +92 -0
- package/dist/shortlists.types.d.ts.map +1 -0
- package/dist/shortlists.types.js +7 -0
- package/dist/sourcingRuns.types.d.ts +95 -0
- package/dist/sourcingRuns.types.d.ts.map +1 -0
- package/dist/sourcingRuns.types.js +17 -0
- package/package.json +1 -1
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Normalized, display/filter-friendly fields lifted from a CrustData profile.
|
|
3
|
+
* The complete raw profile is kept alongside in `profile`.
|
|
4
|
+
*/
|
|
5
|
+
export type TCandidateSnapshot = {
|
|
6
|
+
/** Stable identity — normalized LinkedIn handle (e.g. "in/foo-bar"). */
|
|
7
|
+
candidateKey: string;
|
|
8
|
+
crustdataPersonId: string | null;
|
|
9
|
+
linkedinUrl: string;
|
|
10
|
+
name: string;
|
|
11
|
+
headline: string;
|
|
12
|
+
avatarUrl: string | null;
|
|
13
|
+
location: string;
|
|
14
|
+
currentTitle: string;
|
|
15
|
+
currentCompany: string;
|
|
16
|
+
};
|
|
17
|
+
/**
|
|
18
|
+
* One candidate returned by a sourcing search — the raw pool before
|
|
19
|
+
* shortlisting. Every candidate found across the round's searches is stored
|
|
20
|
+
* here, tagged with the org / role / requirement version it was sourced under,
|
|
21
|
+
* with its complete CrustData profile retained.
|
|
22
|
+
*/
|
|
23
|
+
export interface ICandidateSearchResult {
|
|
24
|
+
_id: string;
|
|
25
|
+
organizationId: string;
|
|
26
|
+
jobRoleId: string;
|
|
27
|
+
requirementVersion: number;
|
|
28
|
+
sourcingRunId: string;
|
|
29
|
+
candidateKey: string;
|
|
30
|
+
crustdataPersonId: string | null;
|
|
31
|
+
linkedinUrl: string;
|
|
32
|
+
name: string;
|
|
33
|
+
headline: string;
|
|
34
|
+
avatarUrl: string | null;
|
|
35
|
+
location: string;
|
|
36
|
+
currentTitle: string;
|
|
37
|
+
currentCompany: string;
|
|
38
|
+
/** Complete CrustData profile row (stored verbatim). */
|
|
39
|
+
profile: unknown;
|
|
40
|
+
/** 1-based index of the search that first surfaced this candidate. */
|
|
41
|
+
foundBySearchIndex: number;
|
|
42
|
+
internalTags: {
|
|
43
|
+
key: string;
|
|
44
|
+
value: string;
|
|
45
|
+
}[];
|
|
46
|
+
isDeleted: boolean;
|
|
47
|
+
createdAt: string;
|
|
48
|
+
updatedAt: string;
|
|
49
|
+
}
|
|
50
|
+
//# sourceMappingURL=candidateSearchResults.types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"candidateSearchResults.types.d.ts","sourceRoot":"","sources":["../src/candidateSearchResults.types.ts"],"names":[],"mappings":"AACA;;;GAGG;AACH,MAAM,MAAM,kBAAkB,GAAG;IAC/B,wEAAwE;IACxE,YAAY,EAAE,MAAM,CAAC;IACrB,iBAAiB,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,cAAc,EAAE,MAAM,CAAC;CACxB,CAAC;AAEF;;;;;GAKG;AACH,MAAM,WAAW,sBAAsB;IACrC,GAAG,EAAE,MAAM,CAAC;IACZ,cAAc,EAAE,MAAM,CAAC;IACvB,SAAS,EAAE,MAAM,CAAC;IAClB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,aAAa,EAAE,MAAM,CAAC;IACtB,YAAY,EAAE,MAAM,CAAC;IACrB,iBAAiB,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,cAAc,EAAE,MAAM,CAAC;IACvB,wDAAwD;IACxD,OAAO,EAAE,OAAO,CAAC;IACjB,sEAAsE;IACtE,kBAAkB,EAAE,MAAM,CAAC;IAC3B,YAAY,EAAE;QACZ,GAAG,EAAE,MAAM,CAAC;QACZ,KAAK,EAAE,MAAM,CAAC;KACf,EAAE,CAAC;IACJ,SAAS,EAAE,OAAO,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;CACnB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
package/dist/index.d.ts
CHANGED
|
@@ -1,10 +1,14 @@
|
|
|
1
|
+
export * from './candidateSearchResults.types';
|
|
1
2
|
export * from './jobRoleChatHistory.types';
|
|
2
3
|
export * from './jobRoles.types';
|
|
3
4
|
export * from './meetingBots.types';
|
|
4
5
|
export * from './organizationDomains.types';
|
|
5
6
|
export * from './organizationUsers.types';
|
|
6
7
|
export * from './organizations.types';
|
|
8
|
+
export * from './requirements.types';
|
|
9
|
+
export * from './shortlists.types';
|
|
7
10
|
export * from './slackChannels.types';
|
|
8
11
|
export * from './slackMessages.types';
|
|
9
12
|
export * from './slackWorkspaces.types';
|
|
13
|
+
export * from './sourcingRuns.types';
|
|
10
14
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,4BAA4B,CAAC;AAC3C,cAAc,kBAAkB,CAAC;AACjC,cAAc,qBAAqB,CAAC;AACpC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,uBAAuB,CAAC;AACtC,cAAc,uBAAuB,CAAC;AACtC,cAAc,uBAAuB,CAAC;AACtC,cAAc,yBAAyB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,gCAAgC,CAAC;AAC/C,cAAc,4BAA4B,CAAC;AAC3C,cAAc,kBAAkB,CAAC;AACjC,cAAc,qBAAqB,CAAC;AACpC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,uBAAuB,CAAC;AACtC,cAAc,sBAAsB,CAAC;AACrC,cAAc,oBAAoB,CAAC;AACnC,cAAc,uBAAuB,CAAC;AACtC,cAAc,uBAAuB,CAAC;AACtC,cAAc,yBAAyB,CAAC;AACxC,cAAc,sBAAsB,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -1,9 +1,13 @@
|
|
|
1
|
+
export * from './candidateSearchResults.types';
|
|
1
2
|
export * from './jobRoleChatHistory.types';
|
|
2
3
|
export * from './jobRoles.types';
|
|
3
4
|
export * from './meetingBots.types';
|
|
4
5
|
export * from './organizationDomains.types';
|
|
5
6
|
export * from './organizationUsers.types';
|
|
6
7
|
export * from './organizations.types';
|
|
8
|
+
export * from './requirements.types';
|
|
9
|
+
export * from './shortlists.types';
|
|
7
10
|
export * from './slackChannels.types';
|
|
8
11
|
export * from './slackMessages.types';
|
|
9
12
|
export * from './slackWorkspaces.types';
|
|
13
|
+
export * from './sourcingRuns.types';
|
|
@@ -49,11 +49,21 @@ export type TUserMultiChoiceResponse = {
|
|
|
49
49
|
selectedOptionIds: string[];
|
|
50
50
|
customText?: string;
|
|
51
51
|
};
|
|
52
|
+
/**
|
|
53
|
+
* A recruiter's verdict on a calibration candidate.
|
|
54
|
+
* - `positive` / `negative` — thumbs up / down for taste calibration.
|
|
55
|
+
* - `shortlist` — strong signal: the recruiter wants Brivio to reach out to this
|
|
56
|
+
* exact person. Downstream sourcing guarantees shortlisted candidates appear in
|
|
57
|
+
* the role's shortlist regardless of search ranking.
|
|
58
|
+
* - `neutral` — no verdict given (card left untouched).
|
|
59
|
+
*/
|
|
60
|
+
export type TCandidateReviewSentiment = 'positive' | 'negative' | 'neutral' | 'shortlist';
|
|
52
61
|
export type TUserCandidateReviewResponse = {
|
|
53
62
|
type: EJobRoleChatMessageType.CANDIDATE_REVIEW;
|
|
54
63
|
reviews: {
|
|
55
64
|
candidateId: string;
|
|
56
|
-
sentiment:
|
|
65
|
+
sentiment: TCandidateReviewSentiment;
|
|
66
|
+
/** Mandatory whenever `sentiment` is not `neutral` — the recruiter must say why. */
|
|
57
67
|
note?: string;
|
|
58
68
|
}[];
|
|
59
69
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"jobRoleChatHistory.types.d.ts","sourceRoot":"","sources":["../src/jobRoleChatHistory.types.ts"],"names":[],"mappings":"AACA,oBAAY,sBAAsB;IAChC,iBAAiB,qBAAqB;IACtC,KAAK,UAAU;CAChB;AAED,oBAAY,uBAAuB;IACjC,UAAU,eAAe;IACzB,aAAa,kBAAkB;IAC/B,YAAY,iBAAiB;IAC7B,gBAAgB,qBAAqB;CACtC;AAED,MAAM,MAAM,yBAAyB,GAAG;IACtC,IAAI,EAAE,uBAAuB,CAAC,aAAa,CAAC;IAC5C,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;IACzC,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB,CAAC;AAEF,MAAM,MAAM,wBAAwB,GAAG;IACrC,IAAI,EAAE,uBAAuB,CAAC,YAAY,CAAC;IAC3C,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;IACzC,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB,CAAC;AAEF,MAAM,MAAM,4BAA4B,GAAG;IACzC,IAAI,EAAE,uBAAuB,CAAC,gBAAgB,CAAC;IAC/C,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE;QACV,EAAE,EAAE,MAAM,CAAC;QACX,WAAW,EAAE,MAAM,CAAC;QACpB,IAAI,EAAE,MAAM,CAAC;QACb,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,OAAO,CAAC,EAAE,MAAM,CAAC;KAClB,EAAE,CAAC;CACL,CAAC;AAEF,MAAM,MAAM,oBAAoB,GAC5B,yBAAyB,GACzB,wBAAwB,GACxB,4BAA4B,CAAC;AAEjC,MAAM,MAAM,yBAAyB,GAAG;IACtC,IAAI,EAAE,uBAAuB,CAAC,aAAa,CAAC;IAC5C,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB,CAAC;AAEF,MAAM,MAAM,wBAAwB,GAAG;IACrC,IAAI,EAAE,uBAAuB,CAAC,YAAY,CAAC;IAC3C,iBAAiB,EAAE,MAAM,EAAE,CAAC;IAC5B,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB,CAAC;AAEF,MAAM,MAAM,4BAA4B,GAAG;IACzC,IAAI,EAAE,uBAAuB,CAAC,gBAAgB,CAAC;IAC/C,OAAO,EAAE;QACP,WAAW,EAAE,MAAM,CAAC;QACpB,SAAS,EAAE,
|
|
1
|
+
{"version":3,"file":"jobRoleChatHistory.types.d.ts","sourceRoot":"","sources":["../src/jobRoleChatHistory.types.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
import type { IResponse } from './utils.types';
|
|
2
|
+
/**
|
|
3
|
+
* Where a role's candidate-facing job description came from. This is the JD that
|
|
4
|
+
* gets shared with candidates over email during sourcing — distinct from
|
|
5
|
+
* `requirementsText`, which is the agent's internal brain dump.
|
|
6
|
+
*/
|
|
7
|
+
export declare enum EJobDescriptionSource {
|
|
8
|
+
/** Recruiter uploaded a JD file (PDF / image) during closeout. */
|
|
9
|
+
ATTACHMENT = "attachment",
|
|
10
|
+
/** Recruiter pasted an external JD link (careers page, Notion, etc.). */
|
|
11
|
+
LINK = "link",
|
|
12
|
+
/** No JD provided — the agent drafted one and the recruiter confirmed it. */
|
|
13
|
+
GENERATED = "generated"
|
|
14
|
+
}
|
|
15
|
+
export interface IJobDescription {
|
|
16
|
+
source: EJobDescriptionSource;
|
|
17
|
+
/**
|
|
18
|
+
* Candidate-facing JD body (markdown). Always populated for `generated` and
|
|
19
|
+
* `attachment` (extracted text); for `link` it may be a short blurb alongside
|
|
20
|
+
* the URL.
|
|
21
|
+
*/
|
|
22
|
+
content: string;
|
|
23
|
+
/** External URL when `source = link` (or a hosted copy of an attachment). */
|
|
24
|
+
url: string | null;
|
|
25
|
+
/** Server-side workspace path of the uploaded file when `source = attachment`. */
|
|
26
|
+
attachmentPath: string | null;
|
|
27
|
+
/** True once the recruiter has explicitly confirmed this JD in the chat. */
|
|
28
|
+
confirmedByUser: boolean;
|
|
29
|
+
}
|
|
30
|
+
/**
|
|
31
|
+
* One immutable snapshot of a role's requirements. A new version is committed at
|
|
32
|
+
* intake closeout (v1) and again whenever a post-closeout change touches the
|
|
33
|
+
* role. Downstream sourcing always reads the `isLatest` version, and every
|
|
34
|
+
* search / shortlist record is tagged with this `version` number so results are
|
|
35
|
+
* traceable to the exact requirement they were sourced against.
|
|
36
|
+
*/
|
|
37
|
+
export interface IRequirement {
|
|
38
|
+
_id: string;
|
|
39
|
+
organizationId: string;
|
|
40
|
+
jobRoleId: string;
|
|
41
|
+
/** Sequential per role, starting at 1. The canonical tag for search/shortlist records. */
|
|
42
|
+
version: number;
|
|
43
|
+
/** Full `requirements.md` brain dump as it stood when this version was committed. */
|
|
44
|
+
requirementsText: string;
|
|
45
|
+
jobDescription: IJobDescription;
|
|
46
|
+
/** One-line note on what triggered this version (e.g. "Initial intake", "Salary band raised"). */
|
|
47
|
+
changeSummary: string;
|
|
48
|
+
/** The chat message that led to this version; null when committed outside a user turn. */
|
|
49
|
+
triggeredByMessageId: string | null;
|
|
50
|
+
/** Timestamp of `triggeredByMessageId` — the "version timestamp". */
|
|
51
|
+
triggeredByMessageAt: string;
|
|
52
|
+
/** Exactly one version per role is `isLatest: true`. */
|
|
53
|
+
isLatest: boolean;
|
|
54
|
+
/** Org user who owned the triggering turn; null when agent-authored. */
|
|
55
|
+
createdBy: string | null;
|
|
56
|
+
internalTags: {
|
|
57
|
+
key: string;
|
|
58
|
+
value: string;
|
|
59
|
+
}[];
|
|
60
|
+
isDeleted: boolean;
|
|
61
|
+
createdAt: string;
|
|
62
|
+
updatedAt: string;
|
|
63
|
+
}
|
|
64
|
+
export type TJobDescription = {
|
|
65
|
+
source: EJobDescriptionSource;
|
|
66
|
+
content: string;
|
|
67
|
+
url: string | null;
|
|
68
|
+
attachmentPath: string | null;
|
|
69
|
+
confirmedByUser: boolean;
|
|
70
|
+
};
|
|
71
|
+
export type TRequirementVersion = {
|
|
72
|
+
id: string;
|
|
73
|
+
organizationId: string;
|
|
74
|
+
jobRoleId: string;
|
|
75
|
+
version: number;
|
|
76
|
+
requirementsText: string;
|
|
77
|
+
jobDescription: TJobDescription;
|
|
78
|
+
changeSummary: string;
|
|
79
|
+
triggeredByMessageAt: string;
|
|
80
|
+
isLatest: boolean;
|
|
81
|
+
createdAt: string;
|
|
82
|
+
updatedAt: string;
|
|
83
|
+
};
|
|
84
|
+
export declare namespace RequirementsAPITypes {
|
|
85
|
+
type TListRequirementVersionsResponse = IResponse<{
|
|
86
|
+
versions: TRequirementVersion[];
|
|
87
|
+
} | null>;
|
|
88
|
+
type TGetLatestRequirementVersionResponse = IResponse<{
|
|
89
|
+
version: TRequirementVersion | null;
|
|
90
|
+
} | null>;
|
|
91
|
+
}
|
|
92
|
+
//# sourceMappingURL=requirements.types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"requirements.types.d.ts","sourceRoot":"","sources":["../src/requirements.types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAE/C;;;;GAIG;AACH,oBAAY,qBAAqB;IAC/B,kEAAkE;IAClE,UAAU,eAAe;IACzB,yEAAyE;IACzE,IAAI,SAAS;IACb,6EAA6E;IAC7E,SAAS,cAAc;CACxB;AAED,MAAM,WAAW,eAAe;IAC9B,MAAM,EAAE,qBAAqB,CAAC;IAC9B;;;;OAIG;IACH,OAAO,EAAE,MAAM,CAAC;IAChB,6EAA6E;IAC7E,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;IACnB,kFAAkF;IAClF,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,4EAA4E;IAC5E,eAAe,EAAE,OAAO,CAAC;CAC1B;AAED;;;;;;GAMG;AACH,MAAM,WAAW,YAAY;IAC3B,GAAG,EAAE,MAAM,CAAC;IACZ,cAAc,EAAE,MAAM,CAAC;IACvB,SAAS,EAAE,MAAM,CAAC;IAClB,0FAA0F;IAC1F,OAAO,EAAE,MAAM,CAAC;IAChB,qFAAqF;IACrF,gBAAgB,EAAE,MAAM,CAAC;IACzB,cAAc,EAAE,eAAe,CAAC;IAChC,kGAAkG;IAClG,aAAa,EAAE,MAAM,CAAC;IACtB,0FAA0F;IAC1F,oBAAoB,EAAE,MAAM,GAAG,IAAI,CAAC;IACpC,qEAAqE;IACrE,oBAAoB,EAAE,MAAM,CAAC;IAC7B,wDAAwD;IACxD,QAAQ,EAAE,OAAO,CAAC;IAClB,wEAAwE;IACxE,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,YAAY,EAAE;QACZ,GAAG,EAAE,MAAM,CAAC;QACZ,KAAK,EAAE,MAAM,CAAC;KACf,EAAE,CAAC;IACJ,SAAS,EAAE,OAAO,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,MAAM,eAAe,GAAG;IAC5B,MAAM,EAAE,qBAAqB,CAAC;IAC9B,OAAO,EAAE,MAAM,CAAC;IAChB,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;IACnB,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,eAAe,EAAE,OAAO,CAAC;CAC1B,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG;IAChC,EAAE,EAAE,MAAM,CAAC;IACX,cAAc,EAAE,MAAM,CAAC;IACvB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,gBAAgB,EAAE,MAAM,CAAC;IACzB,cAAc,EAAE,eAAe,CAAC;IAChC,aAAa,EAAE,MAAM,CAAC;IACtB,oBAAoB,EAAE,MAAM,CAAC;IAC7B,QAAQ,EAAE,OAAO,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,yBAAiB,oBAAoB,CAAC;IACpC,KAAY,gCAAgC,GAAG,SAAS,CAAC;QACvD,QAAQ,EAAE,mBAAmB,EAAE,CAAC;KACjC,GAAG,IAAI,CAAC,CAAC;IAEV,KAAY,oCAAoC,GAAG,SAAS,CAAC;QAC3D,OAAO,EAAE,mBAAmB,GAAG,IAAI,CAAC;KACrC,GAAG,IAAI,CAAC,CAAC;CACX"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Where a role's candidate-facing job description came from. This is the JD that
|
|
3
|
+
* gets shared with candidates over email during sourcing — distinct from
|
|
4
|
+
* `requirementsText`, which is the agent's internal brain dump.
|
|
5
|
+
*/
|
|
6
|
+
export var EJobDescriptionSource;
|
|
7
|
+
(function (EJobDescriptionSource) {
|
|
8
|
+
/** Recruiter uploaded a JD file (PDF / image) during closeout. */
|
|
9
|
+
EJobDescriptionSource["ATTACHMENT"] = "attachment";
|
|
10
|
+
/** Recruiter pasted an external JD link (careers page, Notion, etc.). */
|
|
11
|
+
EJobDescriptionSource["LINK"] = "link";
|
|
12
|
+
/** No JD provided — the agent drafted one and the recruiter confirmed it. */
|
|
13
|
+
EJobDescriptionSource["GENERATED"] = "generated";
|
|
14
|
+
})(EJobDescriptionSource || (EJobDescriptionSource = {}));
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
import type { IResponse } from './utils.types';
|
|
2
|
+
export declare enum EShortlistSource {
|
|
3
|
+
/** Surfaced and selected by the sourcing search + scoring. */
|
|
4
|
+
SEARCH = "search",
|
|
5
|
+
/** Force-included because the recruiter shortlisted them during calibration. */
|
|
6
|
+
CALIBRATION = "calibration_shortlist"
|
|
7
|
+
}
|
|
8
|
+
/**
|
|
9
|
+
* Per-axis fit breakdown (each 0-100). Drives the composite `fitScore` and gives
|
|
10
|
+
* the recruiter an explainable "why this rank".
|
|
11
|
+
*/
|
|
12
|
+
export type TFitSubScores = {
|
|
13
|
+
/** Depth + relevance of past and current experience. */
|
|
14
|
+
experience: number;
|
|
15
|
+
/** Tenure stability — penalizes excessive switching / very short recent stints. */
|
|
16
|
+
tenureStability: number;
|
|
17
|
+
/** Relevance of domain / industry / problem space to the role. */
|
|
18
|
+
domainRelevance: number;
|
|
19
|
+
/** Match against the role's location / work-type requirements. */
|
|
20
|
+
locationFit: number;
|
|
21
|
+
/** Fit against the team's revealed archetype (builder / big-tech / founder / etc.). */
|
|
22
|
+
archetypeFit: number;
|
|
23
|
+
};
|
|
24
|
+
/**
|
|
25
|
+
* A curated, ranked shortlist entry for a (role, requirementVersion). This is
|
|
26
|
+
* what the frontend shortlist page reads. The complete CrustData profile is
|
|
27
|
+
* retained in `fullProfile`.
|
|
28
|
+
*/
|
|
29
|
+
export interface IShortlist {
|
|
30
|
+
_id: string;
|
|
31
|
+
organizationId: string;
|
|
32
|
+
jobRoleId: string;
|
|
33
|
+
requirementVersion: number;
|
|
34
|
+
sourcingRunId: string;
|
|
35
|
+
candidateKey: string;
|
|
36
|
+
crustdataPersonId: string | null;
|
|
37
|
+
linkedinUrl: string;
|
|
38
|
+
name: string;
|
|
39
|
+
headline: string;
|
|
40
|
+
avatarUrl: string | null;
|
|
41
|
+
location: string;
|
|
42
|
+
currentTitle: string;
|
|
43
|
+
currentCompany: string;
|
|
44
|
+
/** Composite fit score 0-100. */
|
|
45
|
+
fitScore: number;
|
|
46
|
+
subScores: TFitSubScores;
|
|
47
|
+
/** 1-based rank within this (role, requirementVersion); 1 = best fit. */
|
|
48
|
+
rank: number;
|
|
49
|
+
/** 3-4 short tags, ~3-4 words each (e.g. "Strong 0→1 builder", "Fintech domain"). */
|
|
50
|
+
remarks: string[];
|
|
51
|
+
/** One short paragraph on why this candidate made the shortlist. */
|
|
52
|
+
reasoning: string;
|
|
53
|
+
source: EShortlistSource;
|
|
54
|
+
/** Complete CrustData profile (stored verbatim). */
|
|
55
|
+
fullProfile: unknown;
|
|
56
|
+
internalTags: {
|
|
57
|
+
key: string;
|
|
58
|
+
value: string;
|
|
59
|
+
}[];
|
|
60
|
+
isDeleted: boolean;
|
|
61
|
+
createdAt: string;
|
|
62
|
+
updatedAt: string;
|
|
63
|
+
}
|
|
64
|
+
export type TShortlistEntry = {
|
|
65
|
+
id: string;
|
|
66
|
+
jobRoleId: string;
|
|
67
|
+
requirementVersion: number;
|
|
68
|
+
candidateKey: string;
|
|
69
|
+
linkedinUrl: string;
|
|
70
|
+
name: string;
|
|
71
|
+
headline: string;
|
|
72
|
+
avatarUrl: string | null;
|
|
73
|
+
location: string;
|
|
74
|
+
currentTitle: string;
|
|
75
|
+
currentCompany: string;
|
|
76
|
+
fitScore: number;
|
|
77
|
+
subScores: TFitSubScores;
|
|
78
|
+
rank: number;
|
|
79
|
+
remarks: string[];
|
|
80
|
+
reasoning: string;
|
|
81
|
+
source: EShortlistSource;
|
|
82
|
+
createdAt: string;
|
|
83
|
+
};
|
|
84
|
+
export declare namespace ShortlistsAPITypes {
|
|
85
|
+
type TGetShortlistResponse = IResponse<{
|
|
86
|
+
entries: TShortlistEntry[];
|
|
87
|
+
requirementVersion: number | null;
|
|
88
|
+
/** True when a newer requirement version exists than the one this shortlist was sourced from. */
|
|
89
|
+
stale: boolean;
|
|
90
|
+
} | null>;
|
|
91
|
+
}
|
|
92
|
+
//# sourceMappingURL=shortlists.types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"shortlists.types.d.ts","sourceRoot":"","sources":["../src/shortlists.types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAE/C,oBAAY,gBAAgB;IAC1B,8DAA8D;IAC9D,MAAM,WAAW;IACjB,gFAAgF;IAChF,WAAW,0BAA0B;CACtC;AAED;;;GAGG;AACH,MAAM,MAAM,aAAa,GAAG;IAC1B,wDAAwD;IACxD,UAAU,EAAE,MAAM,CAAC;IACnB,mFAAmF;IACnF,eAAe,EAAE,MAAM,CAAC;IACxB,kEAAkE;IAClE,eAAe,EAAE,MAAM,CAAC;IACxB,kEAAkE;IAClE,WAAW,EAAE,MAAM,CAAC;IACpB,uFAAuF;IACvF,YAAY,EAAE,MAAM,CAAC;CACtB,CAAC;AAEF;;;;GAIG;AACH,MAAM,WAAW,UAAU;IACzB,GAAG,EAAE,MAAM,CAAC;IACZ,cAAc,EAAE,MAAM,CAAC;IACvB,SAAS,EAAE,MAAM,CAAC;IAClB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,aAAa,EAAE,MAAM,CAAC;IACtB,YAAY,EAAE,MAAM,CAAC;IACrB,iBAAiB,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,cAAc,EAAE,MAAM,CAAC;IACvB,iCAAiC;IACjC,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,aAAa,CAAC;IACzB,yEAAyE;IACzE,IAAI,EAAE,MAAM,CAAC;IACb,qFAAqF;IACrF,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,oEAAoE;IACpE,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,gBAAgB,CAAC;IACzB,oDAAoD;IACpD,WAAW,EAAE,OAAO,CAAC;IACrB,YAAY,EAAE;QACZ,GAAG,EAAE,MAAM,CAAC;QACZ,KAAK,EAAE,MAAM,CAAC;KACf,EAAE,CAAC;IACJ,SAAS,EAAE,OAAO,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,MAAM,eAAe,GAAG;IAC5B,EAAE,EAAE,MAAM,CAAC;IACX,SAAS,EAAE,MAAM,CAAC;IAClB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,cAAc,EAAE,MAAM,CAAC;IACvB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,aAAa,CAAC;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,gBAAgB,CAAC;IACzB,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,yBAAiB,kBAAkB,CAAC;IAClC,KAAY,qBAAqB,GAAG,SAAS,CAAC;QAC5C,OAAO,EAAE,eAAe,EAAE,CAAC;QAC3B,kBAAkB,EAAE,MAAM,GAAG,IAAI,CAAC;QAClC,iGAAiG;QACjG,KAAK,EAAE,OAAO,CAAC;KAChB,GAAG,IAAI,CAAC,CAAC;CACX"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
export var EShortlistSource;
|
|
2
|
+
(function (EShortlistSource) {
|
|
3
|
+
/** Surfaced and selected by the sourcing search + scoring. */
|
|
4
|
+
EShortlistSource["SEARCH"] = "search";
|
|
5
|
+
/** Force-included because the recruiter shortlisted them during calibration. */
|
|
6
|
+
EShortlistSource["CALIBRATION"] = "calibration_shortlist";
|
|
7
|
+
})(EShortlistSource || (EShortlistSource = {}));
|
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
import type { IResponse } from './utils.types';
|
|
2
|
+
export declare enum ESourcingRunStatus {
|
|
3
|
+
QUEUED = "queued",
|
|
4
|
+
PROCESSING = "processing",
|
|
5
|
+
SUCCESS = "success",
|
|
6
|
+
FAILED = "failed"
|
|
7
|
+
}
|
|
8
|
+
/**
|
|
9
|
+
* What kicked off a run. `closeout` fires automatically when intake commits the
|
|
10
|
+
* first requirements version; `manual` is a recruiter-triggered re-run (e.g.
|
|
11
|
+
* after a post-closeout requirement change marked the shortlist stale).
|
|
12
|
+
*/
|
|
13
|
+
export declare enum ESourcingRunTrigger {
|
|
14
|
+
CLOSEOUT = "closeout",
|
|
15
|
+
MANUAL = "manual"
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* One search the agent ran during the round. Searches are sequential and
|
|
19
|
+
* adaptive — each one is tailored from the previous results — and capped at 15
|
|
20
|
+
* per round.
|
|
21
|
+
*/
|
|
22
|
+
export type TSourcingSearchEntry = {
|
|
23
|
+
/** 1-based order within the round (1..15). */
|
|
24
|
+
index: number;
|
|
25
|
+
/** CrustData tool used, e.g. "people_search_db" / "company_search_db". */
|
|
26
|
+
tool: string;
|
|
27
|
+
/** Why this query was run / how it was tailored from prior results. */
|
|
28
|
+
rationale: string;
|
|
29
|
+
/** Short human-readable summary of the filters applied. */
|
|
30
|
+
filtersSummary: string;
|
|
31
|
+
/** How many rows the search returned. */
|
|
32
|
+
resultsCount: number;
|
|
33
|
+
/** Net-new candidates added to the pool after dedup. */
|
|
34
|
+
newCandidatesCount: number;
|
|
35
|
+
ranAt: string;
|
|
36
|
+
};
|
|
37
|
+
export interface ISourcingRun {
|
|
38
|
+
_id: string;
|
|
39
|
+
organizationId: string;
|
|
40
|
+
jobRoleId: string;
|
|
41
|
+
/** The requirements document this run sourced against. */
|
|
42
|
+
requirementId: string;
|
|
43
|
+
/** Denormalized requirement version for tagging / querying. */
|
|
44
|
+
requirementVersion: number;
|
|
45
|
+
status: ESourcingRunStatus;
|
|
46
|
+
trigger: ESourcingRunTrigger;
|
|
47
|
+
/** Sourcing agent SDK session id (for debugging / resume). */
|
|
48
|
+
agentSessionId: string;
|
|
49
|
+
/** Log of the searches run this round (max 15). */
|
|
50
|
+
searches: TSourcingSearchEntry[];
|
|
51
|
+
searchCount: number;
|
|
52
|
+
/** Distinct candidates found across all searches. */
|
|
53
|
+
poolSize: number;
|
|
54
|
+
/** Candidates committed to the shortlist for this run. */
|
|
55
|
+
shortlistSize: number;
|
|
56
|
+
failureReason: string | null;
|
|
57
|
+
startedAt: Date | null;
|
|
58
|
+
completedAt: Date | null;
|
|
59
|
+
/** Org user who triggered a manual run; null for automatic closeout runs. */
|
|
60
|
+
triggeredBy: string | null;
|
|
61
|
+
internalTags: {
|
|
62
|
+
key: string;
|
|
63
|
+
value: string;
|
|
64
|
+
}[];
|
|
65
|
+
isDeleted: boolean;
|
|
66
|
+
createdAt: string;
|
|
67
|
+
updatedAt: string;
|
|
68
|
+
}
|
|
69
|
+
export type TSourcingRunStatus = {
|
|
70
|
+
id: string;
|
|
71
|
+
jobRoleId: string;
|
|
72
|
+
requirementVersion: number;
|
|
73
|
+
status: ESourcingRunStatus;
|
|
74
|
+
trigger: ESourcingRunTrigger;
|
|
75
|
+
searchCount: number;
|
|
76
|
+
poolSize: number;
|
|
77
|
+
shortlistSize: number;
|
|
78
|
+
failureReason: string | null;
|
|
79
|
+
startedAt: string | null;
|
|
80
|
+
completedAt: string | null;
|
|
81
|
+
createdAt: string;
|
|
82
|
+
updatedAt: string;
|
|
83
|
+
};
|
|
84
|
+
export declare namespace SourcingRunsAPITypes {
|
|
85
|
+
type TListSourcingRunsResponse = IResponse<{
|
|
86
|
+
runs: TSourcingRunStatus[];
|
|
87
|
+
/** True when the latest committed requirement version has no successful run yet. */
|
|
88
|
+
shortlistStale: boolean;
|
|
89
|
+
latestRequirementVersion: number | null;
|
|
90
|
+
} | null>;
|
|
91
|
+
type TTriggerSourcingRunResponse = IResponse<{
|
|
92
|
+
run: TSourcingRunStatus;
|
|
93
|
+
} | null>;
|
|
94
|
+
}
|
|
95
|
+
//# sourceMappingURL=sourcingRuns.types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sourcingRuns.types.d.ts","sourceRoot":"","sources":["../src/sourcingRuns.types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAE/C,oBAAY,kBAAkB;IAC5B,MAAM,WAAW;IACjB,UAAU,eAAe;IACzB,OAAO,YAAY;IACnB,MAAM,WAAW;CAClB;AAED;;;;GAIG;AACH,oBAAY,mBAAmB;IAC7B,QAAQ,aAAa;IACrB,MAAM,WAAW;CAClB;AAED;;;;GAIG;AACH,MAAM,MAAM,oBAAoB,GAAG;IACjC,8CAA8C;IAC9C,KAAK,EAAE,MAAM,CAAC;IACd,0EAA0E;IAC1E,IAAI,EAAE,MAAM,CAAC;IACb,uEAAuE;IACvE,SAAS,EAAE,MAAM,CAAC;IAClB,2DAA2D;IAC3D,cAAc,EAAE,MAAM,CAAC;IACvB,yCAAyC;IACzC,YAAY,EAAE,MAAM,CAAC;IACrB,wDAAwD;IACxD,kBAAkB,EAAE,MAAM,CAAC;IAC3B,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,MAAM,WAAW,YAAY;IAC3B,GAAG,EAAE,MAAM,CAAC;IACZ,cAAc,EAAE,MAAM,CAAC;IACvB,SAAS,EAAE,MAAM,CAAC;IAClB,0DAA0D;IAC1D,aAAa,EAAE,MAAM,CAAC;IACtB,+DAA+D;IAC/D,kBAAkB,EAAE,MAAM,CAAC;IAC3B,MAAM,EAAE,kBAAkB,CAAC;IAC3B,OAAO,EAAE,mBAAmB,CAAC;IAC7B,8DAA8D;IAC9D,cAAc,EAAE,MAAM,CAAC;IACvB,mDAAmD;IACnD,QAAQ,EAAE,oBAAoB,EAAE,CAAC;IACjC,WAAW,EAAE,MAAM,CAAC;IACpB,qDAAqD;IACrD,QAAQ,EAAE,MAAM,CAAC;IACjB,0DAA0D;IAC1D,aAAa,EAAE,MAAM,CAAC;IACtB,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,SAAS,EAAE,IAAI,GAAG,IAAI,CAAC;IACvB,WAAW,EAAE,IAAI,GAAG,IAAI,CAAC;IACzB,6EAA6E;IAC7E,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,YAAY,EAAE;QACZ,GAAG,EAAE,MAAM,CAAC;QACZ,KAAK,EAAE,MAAM,CAAC;KACf,EAAE,CAAC;IACJ,SAAS,EAAE,OAAO,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,MAAM,kBAAkB,GAAG;IAC/B,EAAE,EAAE,MAAM,CAAC;IACX,SAAS,EAAE,MAAM,CAAC;IAClB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,MAAM,EAAE,kBAAkB,CAAC;IAC3B,OAAO,EAAE,mBAAmB,CAAC;IAC7B,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,aAAa,EAAE,MAAM,CAAC;IACtB,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,yBAAiB,oBAAoB,CAAC;IACpC,KAAY,yBAAyB,GAAG,SAAS,CAAC;QAChD,IAAI,EAAE,kBAAkB,EAAE,CAAC;QAC3B,oFAAoF;QACpF,cAAc,EAAE,OAAO,CAAC;QACxB,wBAAwB,EAAE,MAAM,GAAG,IAAI,CAAC;KACzC,GAAG,IAAI,CAAC,CAAC;IAEV,KAAY,2BAA2B,GAAG,SAAS,CAAC;QAClD,GAAG,EAAE,kBAAkB,CAAC;KACzB,GAAG,IAAI,CAAC,CAAC;CACX"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
export var ESourcingRunStatus;
|
|
2
|
+
(function (ESourcingRunStatus) {
|
|
3
|
+
ESourcingRunStatus["QUEUED"] = "queued";
|
|
4
|
+
ESourcingRunStatus["PROCESSING"] = "processing";
|
|
5
|
+
ESourcingRunStatus["SUCCESS"] = "success";
|
|
6
|
+
ESourcingRunStatus["FAILED"] = "failed";
|
|
7
|
+
})(ESourcingRunStatus || (ESourcingRunStatus = {}));
|
|
8
|
+
/**
|
|
9
|
+
* What kicked off a run. `closeout` fires automatically when intake commits the
|
|
10
|
+
* first requirements version; `manual` is a recruiter-triggered re-run (e.g.
|
|
11
|
+
* after a post-closeout requirement change marked the shortlist stale).
|
|
12
|
+
*/
|
|
13
|
+
export var ESourcingRunTrigger;
|
|
14
|
+
(function (ESourcingRunTrigger) {
|
|
15
|
+
ESourcingRunTrigger["CLOSEOUT"] = "closeout";
|
|
16
|
+
ESourcingRunTrigger["MANUAL"] = "manual";
|
|
17
|
+
})(ESourcingRunTrigger || (ESourcingRunTrigger = {}));
|