Reason codes
Stable, language-independent tokens for why something happened. Branch on the code. Show the text to a person.
State fields answer what happened. Reason codes answer why. The code is stable and language-independent.
Selection
| Code | Meaning |
|---|---|
| manual_pin | A person pinned this company to the top. |
| good_market_fit | The offering assessment rated this company a strong or good fit. |
| recent_relevant_signal | A Watch source reported a relevant event inside the project's lookback. |
| several_sources | More than one project source contributed this company. |
| held_by_budget | The cycle reached its research budget before this company's turn. |
| selected_for_research | The cycle selected this company and spent a research place on it. |
| current_research_exists | Research against the current offering already exists, so the cycle skipped it. |
| no_current_source | Every source that once contributed this company has retired its contribution. |
| dismissed | A person dismissed this company from the project. |
Eligibility
| Code | Meaning |
|---|---|
| manual_exclusion | A person excluded this company from the project. |
| relationship_excluded | An account relationship the project excludes applies to this company. |
| outside_territory | The company sits outside the project's territory. |
| not_a_fit | The offering assessment rated this company a poor fit. |
| insufficient_information | Too little is known about the company to assess it. |
| awaiting_external_qualification | An external qualification job for this company is still open. |
| awaiting_external_research | An external research job for this company is still open. |
| awaiting_external_outreach | An external outreach job for this company is still open. |
Identity
| Code | Meaning |
|---|---|
| identity_confirmed | The researched pages are this company. |
| identity_ambiguous | The researched pages could belong to more than one company. |
| identity_mismatch | The researched pages belong to a different company. |
| identity_unresolved | The supplied identifiers did not resolve to one Prospex company. |
Research
| Code | Meaning |
|---|---|
| specific_angle_supported | The evidence supports a specific, project-relevant angle. |
| no_defensible_angle | Research finished without a defensible project-specific angle. |
| source_unavailable | A cited or required public page could not be read. |
| research_failed | Research stopped on an operational error. |
| research_stale | The offering changed after this research was accepted. |
| research_needs_review | Research stopped on an ambiguity a person or a later pass must resolve. |
| evidence_unverified_external | The cited pages were submitted by an external worker and not retrieved by Prospex. |
Outreach
| Code | Meaning |
|---|---|
| bundle_ready | A verified outreach bundle is ready for approval. |
| bundle_needs_review | The outreach bundle has validation findings to resolve before approval. |
| bundle_approved | A named immutable bundle revision was approved. |
| unsupported_claim | The copy makes a factual claim no submitted evidence supports. |
| new_angle_available | A newer bundle exists on the current offering than the approved one. |
| ambiguous_identity | The bundle rests on research whose company identity is not confirmed. |
| missing_copy | The subject, opener or angle explanation is empty. |
| subject_too_long | The subject exceeds 200 characters once its evidence marks are removed. |
| unknown_angle_type | The angle type is not one of the five the product defines. |
| language_mismatch | The copy is not in one of the project's three languages. |
| unknown_evidence | The copy cites an evidence key the research revision does not contain. |
| untracked_claim | A listed claim does not appear in the copy it is supposed to describe. |
| interpretation_as_fact | The copy presents an interpretation as a sourced fact. |
| dishonest_date | The copy calls something recent that no cited evidence dates inside six months. |
| verification_failed | The verification stage rejected the copy for a reason outside the named set. |
External stage
| Code | Meaning |
|---|---|
| input_stale | The submitted input fingerprint no longer matches the job's snapshot. |
| result_schema_invalid | The submitted result did not match the documented result schema. |
| evidence_reference_missing | A claim references evidence the submission does not contain. |
| job_expired | The job reached its deadline unfinished. |
| external_worker_failed | The external worker reported that it could not complete the job. |
| job_cancelled | A customer cancelled the job explicitly. |
| lease_expired | A claim lease ran out and the job returned to the external queue. |
| job_allowance_full | The project is at its outstanding-stage-job allowance, so no job was created. |
| job_not_open | The job has reached a terminal state and takes no further submissions. |
| job_not_claimed | A result was submitted for a job this worker does not hold a live claim on. |
| upstream_revision_changed | The research or offering revision the job was built on is no longer current. |
| identity_not_confirmed | An external result declared a company ready whose identity is not confirmed. |