# Pre-Screen Gate Logic in Career-Ops Pipeline Processing: Economy Tier Deep Dive

> Understand santifer/career-ops economy tier pre-screen gate logic. Discover how it bypasses filtering for faster processing after liveness sweeps.

- Repository: [Santiago Fernández de Valderrama/career-ops](https://github.com/santifer/career-ops)
- Tags: deep-dive
- Published: 2026-08-19

---

**In the santifer/career-ops repository, the economy tier completely disables the pre-screen gate and proceeds directly to full A-F evaluation after liveness sweeps, while standard and premium tiers employ an economy-equivalent model to filter mismatches before expensive processing.**

The pre-screen gate logic in career-ops pipeline processing serves as a critical cost-optimization checkpoint that determines whether job postings undergo preliminary filtering or immediate evaluation. In the santifer/career-ops codebase, this behavior varies strictly by spend tier configuration, with the economy tier implementing a unique bypass mechanism that eliminates redundant latency while maintaining evaluation throughput.

## How the Pipeline Gating System Works

The pipeline mode defined in [`modes/pipeline.md`](https://github.com/santifer/career-ops/blob/main/modes/pipeline.md) orchestrates a two-step validation sequence for every URL stored in [`data/pipeline.md`](https://github.com/santifer/career-ops/blob/main/data/pipeline.md):

1. **Liveness sweep** – Validates URL accessibility and removes dead postings (lines 9-15).
2. **Pre-screen gate** – Conditionally executes a **North Star archetype** check using the **economy-equivalent model** defined in [`modes/_shared.md`](https://github.com/santifer/career-ops/blob/main/modes/_shared.md).

This architecture ensures that only viable, relevant postings consume expensive inference resources, though the second step is tier-dependent.

## Economy Tier Bypass Behavior

For **economy** tier configurations, the pre-screen gate is explicitly disabled. According to [`modes/pipeline.md`](https://github.com/santifer/career-ops/blob/main/modes/pipeline.md) (lines 19-25):

> **"economy tier: No gate. The tier is already the cheapest available. Every surviving pending URL goes straight to the full evaluation."**

After the liveness sweep eliminates dead links, economy tier pipelines proceed immediately to comprehensive A-F evaluation using the cheapest available model. This design eliminates redundant latency because applying an additional filter would not reduce costs—the economy tier already employs the most cost-efficient model configuration.

## Standard and Premium Tier Gate Logic

In contrast, **standard** and **premium** tiers activate the pre-screen gate to prevent wasting expensive inference credits on obvious mismatches. The system invokes the **economy-equivalent model** (mapped in the Spend-Tier table of [`modes/_shared.md`](https://github.com/santifer/career-ops/blob/main/modes/_shared.md), lines 37-48) to perform rapid **North Star archetype** validation.

When a job description fails to align with the user's defined archetypes, the pipeline:

- Marks the entry with a `#--` prefix in [`data/pipeline.md`](https://github.com/santifer/career-ops/blob/main/data/pipeline.md)
- Appends a discard record to `data/discard.log`
- Skips the expensive full evaluation

The skip marker appears as:

```markdown
- [x] #-- | https://jobs.example.com/posting/4 | skipped (pre-screen mismatch: not a North Star archetype)

```

## Configuration and Model Routing

The active spend tier is read from [`config/profile.yml`](https://github.com/santifer/career-ops/blob/main/config/profile.yml) via the `spend_tier` key. If unspecified, the system defaults to **standard**.

The mapping between tier names and actual model implementations resides in [`modes/_shared.md`](https://github.com/santifer/career-ops/blob/main/modes/_shared.md) within the "Spend Tier (Model Routing)" table. This abstraction allows the pre-screen gate to reference economy-equivalent models regardless of which specific provider or model version is currently assigned to the economy tier.

The same gate logic documented in [`modes/pipeline.md`](https://github.com/santifer/career-ops/blob/main/modes/pipeline.md) is mirrored in [`modes/batch.md`](https://github.com/santifer/career-ops/blob/main/modes/batch.md) for batch processing workflows, ensuring consistent behavior across execution modes.

## Practical Implementation Examples

### Economy Tier Execution

Configure [`config/profile.yml`](https://github.com/santifer/career-ops/blob/main/config/profile.yml) with the economy tier to bypass pre-screening:

```bash

# config/profile.yml

spend_tier: economy

# Execute pipeline

node pipeline.mjs

```

**Result**: Following the liveness sweep, each pending URL proceeds directly to full A-F evaluation. The [`data/pipeline.md`](https://github.com/santifer/career-ops/blob/main/data/pipeline.md) file contains no `#--` pre-screen markers, and `data/discard.log` remains empty because the gate is inactive.

### Standard Tier Execution

Enable the pre-screen gate using the standard tier:

```bash

# config/profile.yml

spend_tier: standard

# Execute pipeline

node pipeline.mjs

```

**Result**: The pipeline invokes the economy-equivalent model for preliminary North Star archetype screening. Mismatched URLs receive skip markers in the pipeline file and audit entries in the discard log, while matches proceed to full evaluation.

## Summary

- **Economy tier bypass**: The pre-screen gate is completely disabled in [`modes/pipeline.md`](https://github.com/santifer/career-ops/blob/main/modes/pipeline.md) (lines 19-25), allowing immediate progression to full evaluation after liveness verification.
- **Standard/premium filtering**: These tiers utilize an economy-equivalent model defined in [`modes/_shared.md`](https://github.com/santifer/career-ops/blob/main/modes/_shared.md) (lines 37-48) to filter North Star archetype mismatches before expensive processing.
- **Configuration source**: The `spend_tier` value in [`config/profile.yml`](https://github.com/santifer/career-ops/blob/main/config/profile.yml) controls gate behavior, defaulting to standard when omitted.
- **Audit trail**: Only standard and premium tiers populate `data/discard.log` with pre-screen rejection records.
- **Batch parity**: [`modes/batch.md`](https://github.com/santifer/career-ops/blob/main/modes/batch.md) implements identical tier-based gate logic for non-pipeline executions.

## Frequently Asked Questions

### Why does the economy tier skip the pre-screen gate?

The economy tier already utilizes the cheapest available model for full A-F evaluation. Adding a pre-screen gate would introduce latency without reducing costs, as there is no cheaper model tier to use for preliminary filtering. This optimization is explicitly documented in [`modes/pipeline.md`](https://github.com/santifer/career-ops/blob/main/modes/pipeline.md) lines 19-25.

### What happens to URLs that fail the pre-screen gate in standard tier?

Rejected URLs receive a `#--` marker in [`data/pipeline.md`](https://github.com/santifer/career-ops/blob/main/data/pipeline.md) indicating a pre-screen mismatch with the North Star archetype, and the system appends an audit entry to `data/discard.log`. These postings bypass expensive evaluation but remain cataloged for compliance review.

### Where is the economy-equivalent model defined for pre-screening?

The mapping resides in the Spend-Tier table within [`modes/_shared.md`](https://github.com/santifer/career-ops/blob/main/modes/_shared.md) (lines 37-48). This table routes standard and premium tier pre-screen checks to whichever model is currently assigned to the economy tier, ensuring cost-efficient preliminary filtering without hardcoding specific model names.

### Does the batch mode use the same pre-screen logic as the pipeline?

Yes. According to the source implementation, [`modes/batch.md`](https://github.com/santifer/career-ops/blob/main/modes/batch.md) mirrors the identical tier-based gate logic found in [`modes/pipeline.md`](https://github.com/santifer/career-ops/blob/main/modes/pipeline.md), ensuring consistent pre-screen behavior whether processing individual URLs or batch collections.