# noCV engineering task library

Content version 5

Fictional engineering practice briefs. Starter repositories, fixtures, automated grading, and verified ownership are not included.

Tests, patches, and runbooks are requested deliverables. They become Outcome Evidence only through a qualified Mission and immutable Evidence IDs.

Independent adaptation must be observed under a declared verification policy and cite immutable Evidence IDs. Completing a planning ticket establishes no Ownership Evidence.

## CPARSE — A configuration-language parser with usable diagnostics

Fictional build tool Sprig reads a tiny configuration language with identifiers, strings, lists and assignments. Author the grammar and synthetic source corpus locally; parsing never executes source.

**Field:** Compiler and language tooling. **Suggested stack:** TypeScript, Vitest, Parser fixtures.

**Engineer value:** Practice source positions, grammar boundaries and error recovery.

**Company value:** Inspect whether tooling errors help users correct configuration safely.

**Delivery agreement:** Keep each change within the declared grammar; runtime evaluation is excluded.

### Setup prerequisites

- Write the tiny language grammar and generated source examples.

- Create fixtures with Unicode, truncated tokens and nested lists.

### Specify source tokens

Preserve spans and literal meaning.

#### CPARSE-101 — Track configuration token spans across mixed newline styles

**Bug · Medium priority · Foundational**

noCV practice brief v5 · CPARSE-101 · A configuration-language parser with usable diagnostics

Fictional engineering practice briefs. Starter repositories, fixtures, automated grading, and verified ownership are not included.

Phase: Specify source tokens. Depends on: No preceding ticket.

Difficulty: Foundational. Estimated focused work: 90 minutes; setup and prerequisite tickets are additional.

Estimated field mix: Compiler and language tooling 100%.

Field percentages are editorial estimates of the ticket's engineering focus. They total 100%; they are not measured time, proficiency scores, or ownership evidence.

Windows configuration files report errors one line late. Define offsets and line mapping for LF and CRLF.

Acceptance criteria

- Spans cover exact token bytes or declared code units

- CRLF counts as one line break

- EOF has a valid location

Implementation constraints

- State the offset unit explicitly.

Verification

- Tokenize mixed newline fixture

- Locate error at EOF

Deliverables

- Span mapper and boundary cases

Rollout and recovery: Fall back to offsets if line mapping is unreliable.

Project prerequisites: Write the tiny language grammar and generated source examples. Create fixtures with Unicode, truncated tokens and nested lists.

Engineer value: Practice source positions, grammar boundaries and error recovery.

Company value: Inspect whether tooling errors help users correct configuration safely.

AI tools are welcome during implementation. Record assumptions, review the result, and verify its behavior.

Planning status does not create Outcome Evidence or Ownership Evidence.

#### CPARSE-102 — Reject unterminated configuration strings with one useful diagnostic

**Task · Medium priority · Foundational**

noCV practice brief v5 · CPARSE-102 · A configuration-language parser with usable diagnostics

Fictional engineering practice briefs. Starter repositories, fixtures, automated grading, and verified ownership are not included.

Phase: Specify source tokens. Depends on: CPARSE-101.

Difficulty: Foundational. Estimated focused work: 75 minutes; setup and prerequisite tickets are additional.

Estimated field mix: Compiler and language tooling 100%.

Field percentages are editorial estimates of the ticket's engineering focus. They total 100%; they are not measured time, proficiency scores, or ownership evidence.

A missing quote produces dozens of bogus tokens. Add a bounded string error and recovery boundary.

Acceptance criteria

- Diagnostic identifies opening quote

- Lexer makes forward progress

- Later valid line can tokenize

Implementation constraints

- Do not guess a closing quote silently.

Verification

- Tokenize valid escaped string

- Tokenize missing final quote

Deliverables

- String lexer and error cases

Rollout and recovery: Stop at first string error if recovery becomes ambiguous.

Project prerequisites: Write the tiny language grammar and generated source examples. Create fixtures with Unicode, truncated tokens and nested lists.

Engineer value: Practice source positions, grammar boundaries and error recovery.

Company value: Inspect whether tooling errors help users correct configuration safely.

AI tools are welcome during implementation. Record assumptions, review the result, and verify its behavior.

Planning status does not create Outcome Evidence or Ownership Evidence.

#### CPARSE-103 — Preserve configuration string escape meaning

**Bug · High priority · Intermediate**

noCV practice brief v5 · CPARSE-103 · A configuration-language parser with usable diagnostics

Fictional engineering practice briefs. Starter repositories, fixtures, automated grading, and verified ownership are not included.

Phase: Specify source tokens. Depends on: CPARSE-102.

Difficulty: Intermediate. Estimated focused work: 120 minutes; setup and prerequisite tickets are additional.

Estimated field mix: Compiler and language tooling 100%.

Field percentages are editorial estimates of the ticket's engineering focus. They total 100%; they are not measured time, proficiency scores, or ownership evidence.

Backslashes disappear inconsistently between parsed values and printed output. Define recognized escapes and reject unknown ones.

Acceptance criteria

- Supported escapes decode exactly

- Unknown escape reports its span

- Decoded values retain nonescaped Unicode

Implementation constraints

- Keep raw span separate from decoded value.

Verification

- Decode quote and backslash fixtures

- Reject unknown escape

Deliverables

- Escape decoder and round-trip cases

Rollout and recovery: Reject affected literals until decoding is corrected.

Project prerequisites: Write the tiny language grammar and generated source examples. Create fixtures with Unicode, truncated tokens and nested lists.

Engineer value: Practice source positions, grammar boundaries and error recovery.

Company value: Inspect whether tooling errors help users correct configuration safely.

AI tools are welcome during implementation. Record assumptions, review the result, and verify its behavior.

Planning status does not create Outcome Evidence or Ownership Evidence.

### Build recoverable syntax

Handle malformed structure deterministically.

#### CPARSE-104 — Parse configuration lists without unbounded recursion

**Task · High priority · Advanced**

noCV practice brief v5 · CPARSE-104 · A configuration-language parser with usable diagnostics

Fictional engineering practice briefs. Starter repositories, fixtures, automated grading, and verified ownership are not included.

Phase: Build recoverable syntax. Depends on: CPARSE-101, CPARSE-103.

Difficulty: Advanced. Estimated focused work: 165 minutes; setup and prerequisite tickets are additional.

Estimated field mix: Compiler and language tooling 70% · Performance engineering 30%.

Field percentages are editorial estimates of the ticket's engineering focus. They total 100%; they are not measured time, proficiency scores, or ownership evidence.

Deeply nested synthetic lists exhaust the call stack. Enforce a documented nesting limit.

Acceptance criteria

- Valid nesting parses

- Limit breach gives structured diagnostic

- Parser consumes bounded work after failure

Implementation constraints

- Do not increase runtime stack limits as the fix.

Verification

- Parse at supported depth

- Exceed depth limit

Deliverables

- List parser and depth cases

Rollout and recovery: Lower accepted nesting cap if resource behavior is uncertain.

Project prerequisites: Write the tiny language grammar and generated source examples. Create fixtures with Unicode, truncated tokens and nested lists.

Engineer value: Practice source positions, grammar boundaries and error recovery.

Company value: Inspect whether tooling errors help users correct configuration safely.

AI tools are welcome during implementation. Record assumptions, review the result, and verify its behavior.

Planning status does not create Outcome Evidence or Ownership Evidence.

#### CPARSE-105 — Recover configuration assignments at a documented synchronization point

**Story · Medium priority · Advanced**

noCV practice brief v5 · CPARSE-105 · A configuration-language parser with usable diagnostics

Fictional engineering practice briefs. Starter repositories, fixtures, automated grading, and verified ownership are not included.

Phase: Build recoverable syntax. Depends on: CPARSE-104.

Difficulty: Advanced. Estimated focused work: 180 minutes; setup and prerequisite tickets are additional.

Estimated field mix: Compiler and language tooling 100%.

Field percentages are editorial estimates of the ticket's engineering focus. They total 100%; they are not measured time, proficiency scores, or ownership evidence.

One missing equals sign hides all later keys. Resume at a safe assignment boundary.

Acceptance criteria

- Error names expected token

- Later valid assignments appear

- Recovery never loops at same offset

Implementation constraints

- Specify which tokens terminate recovery.

Verification

- Parse malformed then valid assignment

- Use repeated unexpected delimiters

Deliverables

- Recovery strategy and progress tests

Rollout and recovery: Use fail-fast parsing if recovery corrupts structure.

Project prerequisites: Write the tiny language grammar and generated source examples. Create fixtures with Unicode, truncated tokens and nested lists.

Engineer value: Practice source positions, grammar boundaries and error recovery.

Company value: Inspect whether tooling errors help users correct configuration safely.

AI tools are welcome during implementation. Record assumptions, review the result, and verify its behavior.

Planning status does not create Outcome Evidence or Ownership Evidence.

#### CPARSE-106 — Detect duplicate configuration keys with both source locations

**Task · Medium priority · Intermediate**

noCV practice brief v5 · CPARSE-106 · A configuration-language parser with usable diagnostics

Fictional engineering practice briefs. Starter repositories, fixtures, automated grading, and verified ownership are not included.

Phase: Build recoverable syntax. Depends on: CPARSE-105.

Difficulty: Intermediate. Estimated focused work: 120 minutes; setup and prerequisite tickets are additional.

Estimated field mix: Compiler and language tooling 100%.

Field percentages are editorial estimates of the ticket's engineering focus. They total 100%; they are not measured time, proficiency scores, or ownership evidence.

Repeated keys silently overwrite earlier values. Report the later assignment with a related earlier location.

Acceptance criteria

- Duplicate is explicit

- Both spans are available

- Distinct nested scopes remain independent

Implementation constraints

- Do not normalize identifiers beyond the grammar contract.

Verification

- Detect duplicate in one scope

- Use same key in separate scopes

Deliverables

- Duplicate-key pass and cases

Rollout and recovery: Reject duplicate-bearing files if diagnostics cannot disambiguate them.

Project prerequisites: Write the tiny language grammar and generated source examples. Create fixtures with Unicode, truncated tokens and nested lists.

Engineer value: Practice source positions, grammar boundaries and error recovery.

Company value: Inspect whether tooling errors help users correct configuration safely.

AI tools are welcome during implementation. Record assumptions, review the result, and verify its behavior.

Planning status does not create Outcome Evidence or Ownership Evidence.

#### CPARSE-107 — Preserve configuration comments through syntax-tree editing

**Story · Medium priority · Expert**

noCV practice brief v5 · CPARSE-107 · A configuration-language parser with usable diagnostics

Fictional engineering practice briefs. Starter repositories, fixtures, automated grading, and verified ownership are not included.

Phase: Build recoverable syntax. Depends on: CPARSE-105, CPARSE-106.

Difficulty: Expert. Estimated focused work: 240 minutes; setup and prerequisite tickets are additional.

Estimated field mix: Compiler and language tooling 80% · Developer tooling 20%.

Field percentages are editorial estimates of the ticket's engineering focus. They total 100%; they are not measured time, proficiency scores, or ownership evidence.

A key-renaming tool deletes nearby comments because the parser discards trivia. Retain comment attachment with explicit rules.

Acceptance criteria

- Unchanged comments survive print

- Ambiguous attachment is documented

- Malformed comments retain source spans

Implementation constraints

- This ticket covers one rename transform only.

Verification

- Rename commented key

- Rename near malformed trailing comment

Deliverables

- Trivia representation and rename round-trip

Rollout and recovery: Disable rename when comment attachment is uncertain.

Project prerequisites: Write the tiny language grammar and generated source examples. Create fixtures with Unicode, truncated tokens and nested lists.

Engineer value: Practice source positions, grammar boundaries and error recovery.

Company value: Inspect whether tooling errors help users correct configuration safely.

AI tools are welcome during implementation. Record assumptions, review the result, and verify its behavior.

Planning status does not create Outcome Evidence or Ownership Evidence.

### Prepare editor consumers

Keep diagnostics and printing stable.

#### CPARSE-108 — Print configuration trees with stable parse equivalence

**Task · Medium priority · Advanced**

noCV practice brief v5 · CPARSE-108 · A configuration-language parser with usable diagnostics

Fictional engineering practice briefs. Starter repositories, fixtures, automated grading, and verified ownership are not included.

Phase: Prepare editor consumers. Depends on: CPARSE-103, CPARSE-107.

Difficulty: Advanced. Estimated focused work: 180 minutes; setup and prerequisite tickets are additional.

Estimated field mix: Compiler and language tooling 70% · Quality engineering 30%.

Field percentages are editorial estimates of the ticket's engineering focus. They total 100%; they are not measured time, proficiency scores, or ownership evidence.

Formatting can change string values and list meaning. Add a deterministic printer for the supported syntax.

Acceptance criteria

- Parse-print-parse preserves semantic tree

- Formatting is idempotent

- Unsupported nodes fail explicitly

Implementation constraints

- Do not claim preservation of arbitrary source formatting.

Verification

- Round-trip all grammar fixtures

- Reject unsupported synthetic node

Deliverables

- Printer and equivalence cases

Rollout and recovery: Keep original source when printer cannot represent the tree.

Project prerequisites: Write the tiny language grammar and generated source examples. Create fixtures with Unicode, truncated tokens and nested lists.

Engineer value: Practice source positions, grammar boundaries and error recovery.

Company value: Inspect whether tooling errors help users correct configuration safely.

AI tools are welcome during implementation. Record assumptions, review the result, and verify its behavior.

Planning status does not create Outcome Evidence or Ownership Evidence.

#### CPARSE-109 — Bound configuration diagnostic counts for hostile input

**Chore · Medium priority · Intermediate**

noCV practice brief v5 · CPARSE-109 · A configuration-language parser with usable diagnostics

Fictional engineering practice briefs. Starter repositories, fixtures, automated grading, and verified ownership are not included.

Phase: Prepare editor consumers. Depends on: CPARSE-105, CPARSE-108.

Difficulty: Intermediate. Estimated focused work: 105 minutes; setup and prerequisite tickets are additional.

Estimated field mix: Compiler and language tooling 60% · Performance engineering 40%.

Field percentages are editorial estimates of the ticket's engineering focus. They total 100%; they are not measured time, proficiency scores, or ownership evidence.

A large malformed file emits thousands of repeated messages and stalls the editor. Cap diagnostics and include truncation status.

Acceptance criteria

- Count is bounded

- Earliest useful errors remain

- Suppressed count is disclosed

Implementation constraints

- Parsing must still terminate within documented input limits.

Verification

- Parse ordinary invalid file

- Use dense malformed fixture

Deliverables

- Diagnostic budget and stress fixture

Rollout and recovery: Stop parsing at budget exhaustion if recovery remains costly.

Project prerequisites: Write the tiny language grammar and generated source examples. Create fixtures with Unicode, truncated tokens and nested lists.

Engineer value: Practice source positions, grammar boundaries and error recovery.

Company value: Inspect whether tooling errors help users correct configuration safely.

AI tools are welcome during implementation. Record assumptions, review the result, and verify its behavior.

Planning status does not create Outcome Evidence or Ownership Evidence.

#### CPARSE-110 — Publish a configuration parser compatibility corpus

**Chore · Low priority · Intermediate**

noCV practice brief v5 · CPARSE-110 · A configuration-language parser with usable diagnostics

Fictional engineering practice briefs. Starter repositories, fixtures, automated grading, and verified ownership are not included.

Phase: Prepare editor consumers. Depends on: CPARSE-108, CPARSE-109.

Difficulty: Intermediate. Estimated focused work: 120 minutes; setup and prerequisite tickets are additional.

Estimated field mix: Compiler and language tooling 60% · Quality engineering 40%.

Field percentages are editorial estimates of the ticket's engineering focus. They total 100%; they are not measured time, proficiency scores, or ownership evidence.

Downstream tools cannot tell whether parser changes altered accepted syntax. Add a versioned local corpus and expected public diagnostics.

Acceptance criteria

- Corpus covers grammar productions

- Invalid cases specify diagnostic categories

- No hidden evaluator answers are included

Implementation constraints

- These are public engineering regressions, not grading material.

Verification

- Run corpus on current parser

- Introduce a deliberate local grammar regression and observe failure

Deliverables

- Corpus manifest and execution record

Rollout and recovery: Revert syntax changes that break declared compatibility unintentionally.

Project prerequisites: Write the tiny language grammar and generated source examples. Create fixtures with Unicode, truncated tokens and nested lists.

Engineer value: Practice source positions, grammar boundaries and error recovery.

Company value: Inspect whether tooling errors help users correct configuration safely.

AI tools are welcome during implementation. Record assumptions, review the result, and verify its behavior.

Planning status does not create Outcome Evidence or Ownership Evidence.
