# Understanding the Eight Blocks of a Career-Ops Evaluation Report

> Discover the eight blocks of a career-ops evaluation report. Learn how this systematic assessment guides candidates from job discovery to application drafts.

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

---

**A Career-Ops evaluation report is divided into eight distinct blocks that systematically assess job postings, guiding candidates from initial role discovery through verification to ready-to-send application drafts.**

The open-source `santifer/career-ops` repository structures every assessment into a reproducible eight-section framework. Each **Career-Ops evaluation report** moves sequentially through labeled blocks—A through H—providing standardized analysis of role fit, legitimacy, and application strategy before a candidate submits any materials.

## The Eight Blocks of a Career-Ops Evaluation Report

### Block A — Role Summary

**Block A** provides the high-level overview of the position, outlining core responsibilities, required experience, and the fundamental scope of the role. This section establishes the baseline understanding of the opportunity before deeper analysis occurs. According to [`modes/oferta.md`](https://github.com/santifer/career-ops/blob/main/modes/oferta.md), this block serves as the foundation for all subsequent evaluation steps.

### Block B — Match with CV

**Block B** analyzes how well the posting aligns with the candidate’s résumé. It evaluates skill overlap, experience relevance, and keyword matching to quantify compatibility. This block bridges the gap between the role requirements documented in Block A and the candidate’s existing qualifications.

### Block C — Level and Strategy

**Block C** assesses the seniority level of the position and suggests a positioning strategy. It evaluates career trajectory implications and determines whether the role represents a lateral move, step up, or potential downgrade. The strategic guidance here helps candidates frame their experience appropriately for the target level.

### Block D — Comp and Demand

**Block D** examines compensation expectations and market demand signals. This section identifies red-flag cues related to unrealistic demands, salary transparency issues, or market saturation indicators that might affect the candidate’s negotiating position or long-term viability in the role.

### Block E — Customization Plan

**Block E** delivers tailored messaging recommendations that highlight the candidate’s unique value proposition for this specific role. Rather than generic advice, this block provides actionable customization strategies for résumés, cover letters, and initial outreach based on the gaps and opportunities identified in previous blocks.

### Block F — Interview Plan

**Block F** outlines suggested interview preparation steps, including key technical topics to study, behavioral questions to prepare for, and a recommended preparation timeline. This transforms the strategic assessment into concrete action items the candidate can execute immediately.

### Block G — Posting Legitimacy

**Block G** verifies legitimacy signals such as legal compliance, agency licensing status, and AI-screening disclosure requirements. This critical verification block determines whether the posting is trustworthy before the candidate invests significant time in the application process, protecting against fraudulent or exploitative listings.

### Block H — Draft Application Answers

**Block H** contains automatically generated answers to the application questions, presented as an editable draft the candidate can refine before submission. Unlike the analytical blocks A–G, Block H produces concrete output ready for copy-paste into application forms, representing the final deliverable of the evaluation workflow.

## Source Code Architecture

The eight blocks are defined across two primary mode files in the repository. **[`modes/oferta.md`](https://github.com/santifer/career-ops/blob/main/modes/oferta.md)** defines Blocks A through G, establishing the evaluation logic and content structure for role analysis and verification. **[`modes/apply.md`](https://github.com/santifer/career-ops/blob/main/modes/apply.md)** implements Block H, handling the transition from analysis to application generation.

Supporting files include **`web/src/lib/report-sections.mjs`**, which parses and renders the block headings when displaying reports in the web interface. The底层 logic for extracting and formatting Block H resides in **`application-answers.mjs`**. Developers can reference **[`examples/sample-report.md`](https://github.com/santifer/career-ops/blob/main/examples/sample-report.md)** for a fully rendered example showcasing all eight blocks in sequence.

## Generating the Eight Blocks

You can generate a complete evaluation report using the CLI interface. The `oferta` mode creates Blocks A–G and appends a Risk Summary, while the `apply` mode generates Block H using the report number:

```bash

# Generate Blocks A–G and Risk Summary

career-ops oferta https://company.com/jobs/12345

# Generate Block H (Draft Application Answers)

career-ops apply --from-report 045

```

For custom tooling integrations, the Node.js API exposes the underlying functions directly:

```javascript
import { generateReport } from './modes/oferta.mjs';
import { draftApplicationAnswers } from './modes/apply.mjs';

(async () => {
  const report = await generateReport({ url: 'https://company.com/jobs/12345' });
  console.log(report['Block A']); // Role Summary
  console.log(report['Block G']); // Posting Legitimacy

  const draft = await draftApplicationAnswers({ reportNumber: report.num });
  console.log(draft['Block H']); // Draft answers ready for editing
})();

```

## Summary

- **Block A** establishes the role overview and baseline requirements
- **Block B** quantifies résumé alignment through skill and keyword matching
- **Block C** determines seniority fit and positioning strategy
- **Block D** evaluates compensation and market demand signals
- **Block E** provides tailored messaging customization plans
- **Block F** delivers concrete interview preparation timelines
- **Block G** verifies posting legitimacy and compliance signals
- **Block H** outputs editable draft answers for immediate application submission

## Frequently Asked Questions

### Why is Block H generated separately from Blocks A through G?

Block H requires the complete evaluation context from Blocks A–G to generate accurate application answers, but it resides in a separate mode because it performs a different function. While [`modes/oferta.md`](https://github.com/santifer/career-ops/blob/main/modes/oferta.md) handles analytical assessment, [`modes/apply.md`](https://github.com/santifer/career-ops/blob/main/modes/apply.md) focuses on content generation, allowing candidates to create Block H only after confirming they want to pursue the specific opportunity analyzed in the first seven blocks.

### How does the system determine Posting Legitimacy in Block G?

According to [`modes/oferta.md`](https://github.com/santifer/career-ops/blob/main/modes/oferta.md), Block G evaluates specific trust signals including legal compliance documentation, agency licensing verification, and mandatory AI-screening disclosures. The system flags missing compliance elements or suspicious patterns that indicate potential fraud, protecting candidates from engaging with exploitative or fake job postings.

### What file controls the rendering of the eight blocks in the web interface?

The **`web/src/lib/report-sections.mjs`** module handles parsing and rendering of all eight block headings when reports are displayed in the browser. This file ensures consistent presentation of the standardized block labels across the web interface while maintaining the structural integrity defined in the underlying mode documentation.

### Can Block H answers be customized before submission?

Yes, Block H produces draft application answers specifically designed for editing. The output from `application-answers.mjs` via the `draftApplicationAnswers` function generates baseline responses that candidates should review and personalize before submitting, ensuring the final application reflects their authentic voice while maintaining the strategic positioning developed in earlier blocks.