Career-Ops A-G Evaluation Blocks: Structure and Implementation Guide

The career-ops framework evaluates job postings through seven sequential blocks (A-G) defined in modes/oferta.md, each scoring specific risk factors from role alignment to posting legitimacy before generating a composite 1-5 rating.

The A-G evaluation blocks form the core analytical pipeline of the santifer/career-ops repository, transforming raw job descriptions into structured risk assessments. Each block examines a distinct dimension of an opportunity, from cultural fit to compensation transparency, producing discrete scores that aggregate into a final hiring recommendation.

Block A — Role Summary

Block A extracts fundamental position metadata and performs initial cultural screening. According to modes/oferta.md, this section captures the job title, seniority level, and work-authorization requirements while evaluating cultural alignment through predefined screening criteria.

The block implements a hard cap mechanism: if the posting fails mandatory "require" criteria (specified in modes/_shared.md), the block score cannot exceed a threshold regardless of other positive signals. This ensures deal-breaker conditions surface immediately in the evaluation pipeline.

Block B — Match with CV

Block B compares the job description against the candidate’s CV, identifying alignment proof-points and contradictory evidence. The evaluation logic scans for resume excerpts that directly support or conflict with stated requirements.

When contradictory evidence emerges, the block flags specific discrepancies with annotated "flag" lines, enabling downstream scripts to weight mismatch severity programmatically.

Block C — Skills Gap

Block C quantifies competency shortfalls using the jd-skill-gap.mjs classifier. Unlike simple keyword matching, this block parses required technical skills and cross-references them against the candidate’s documented experience.

Missing competencies generate a structured gap list that directly influences the block’s 1-5 rating. The classifier implementation resides in jd-skill-gap.mjs, which the evaluation pipeline invokes during batch processing.

Block D — Compensation

Block D parses advertised salary ranges and evaluates pay transparency compliance. The block checks whether compensation data meets regional transparency mandates and compares ranges against the candidate’s target thresholds.

Ambiguous or missing compensation metadata triggers specific risk flags, ensuring financial expectations align before interview investment occurs.

Block E — Company Health

Block E aggregates public organizational data including funding rounds, revenue trajectories, and employee count trends. This block surfaces stability signals and growth trajectory indicators derived from external data sources.

Red flags such as recent layoffs, leadership turnover, or liquidity concerns are explicitly catalogued here to inform the candidate’s risk calculus.

Block F — Interview Red-Flags

Block F analyzes the posting for process friction indicators that typically predict poor interview experiences. Drawing from interview-redflag.md heuristics, the block identifies vague timelines, excessive screening rounds, or non-standard evaluation criteria.

These signals help candidates anticipate administrative burden and interviewer preparedness before committing to the application process.

Block G — Posting Legitimacy

Block G verifies active posting status and authenticity cues using Playwright-based live checks (check-liveness.mjs and liveness-core.mjs). The block assigns a legitimacy tier: high_confidence, proceed_with_caution, or suspicious.

This verification prevents candidates from investing effort in stale listings or fraudulent postings, with the tier classification feeding directly into the final risk summary.

How the Scoring System Works

Each block produces an independent 1-5 score based on its specific rubric. After Blocks A through G complete, the pipeline generates a Risk Summary section that condenses critical signals—particularly from Block A (culture screen) and Block G (legitimacy)—into an actionable composite.

The final output aggregates these seven scores into a single recommendation: proceed, discard, or investigate further. According to docs/ARCHITECTURE.md, this structured approach ensures repeatable evaluations across high-volume job searches.

Implementation Files and Code Examples

The A-G framework resides primarily in modes/oferta.md, with supporting logic distributed across specialized modules. The batch processing template in batch/batch-prompt.md references each block header for automated evaluations.

Execute a full A-G evaluation via the command line:


# Run complete A-G block analysis on a specific job URL

node oferta.mjs https://jobs.example.com/12345

Extract specific block data for downstream processing:


# Isolate Block A output in JSON format

node parse-report.mjs --block A --output json reports/042-acme-senior-engineer.md

Key implementation files include:

  • modes/oferta.md — Central definition of all seven evaluation blocks and scoring rubrics
  • modes/_shared.md — Shared rules governing score caps and cross-block dependencies
  • jd-skill-gap.mjs — Block C skill-gap detection algorithm
  • check-liveness.mjs / liveness-core.mjs — Block G posting verification engine
  • docs/ARCHITECTURE.md — High-level pipeline documentation

Summary

  • Seven structured blocks (A through G) evaluate distinct risk dimensions of job postings, from cultural fit to compensation transparency.
  • Source definitions reside in modes/oferta.md, with specialized logic implemented in jd-skill-gap.mjs and check-liveness.mjs.
  • Scoring mechanism assigns 1-5 ratings per block, with hard caps triggered by mandatory criteria failures in Block A.
  • Risk Summary synthesizes critical signals from Blocks A and G to produce the final hiring recommendation.
  • Command-line interface supports both full evaluations and targeted block extraction via oferta.mjs and parse-report.mjs.

Frequently Asked Questions

What file contains the A-G evaluation block definitions?

The complete A-G block specifications are defined in modes/oferta.md within the santifer/career-ops repository. This file contains the markdown headers "## Block A — Role Summary" through "## Block G — Posting Legitimacy" along with their respective scoring rubrics and evaluation criteria.

How is the composite score calculated from individual blocks?

Each block generates an independent 1-5 rating based on its specific heuristics. The pipeline then aggregates these seven scores into a final recommendation tier (apply, discard, or investigate) through the Risk Summary section, which prioritizes signals from Block A (culture screen) and Block G (legitimacy verification) as primary decision drivers.

What distinguishes Block C from other skill assessment methods?

Block C leverages the jd-skill-gap.mjs classifier to perform semantic analysis of required competencies rather than simple keyword matching. This implementation identifies nuanced skill gaps—such as framework-specific experience versus general language familiarity—that generic keyword scanners often miss.

Which blocks influence the final Risk Summary?

While all seven blocks contribute to the composite score, the Risk Summary explicitly emphasizes signals from Block A (cultural alignment and mandatory criteria failures) and Block G (posting legitimacy tier). These two blocks carry disproportionate weight because culture mismatches and fraudulent listings represent the highest-cost evaluation errors for candidates.

Have a question about this repo?

These articles cover the highlights, but your codebase questions are specific. Give your agent direct access to the source. Share this with your agent to get started:

Share the following with your agent to get started:
curl -s "https://instagit.com/install.md"

Works with
Claude Codex Cursor VS Code OpenClaw Any MCP Client

Maintain an open-source project? Get it listed too →