Harness Intelligence Wiki
SpecsCLIIssue 181 Lint Feedback Adoption

Implementation Notes: Issue 181 Lint Feedback Adoption

Implementation Notes: Issue 181 Lint Feedback Adoption

Summary

Automated implementation is complete on team/stefan/fix/ultracite-lint-config.

Deviations From Plan

No disposable Codex App fixture was created and same-turn /hooks delivery was not observed. Manual trust and observation remain an explicit gate.

Sanity Checks

CheckResultEvidence
Scaffold/configPassHierarchy: 2 tests, 17 expectations; public config: 3 tests, 37 expectations.
Edited-file and provider feedbackPass16 tests, 47 expectations; safe fix, JSON diagnostics, clean silence, native output, bounded retries.
Candidate previewPassRuntime/update: 20 tests, 37 expectations; full scan; 256 MiB Node capture ceiling; overflow/null-status fails before JSON parsing; Effect lifecycle measured at ~45s.
ToolchainPassFrozen install and exact version readback; lint-only Effect patch succeeds.
QualityPassCLI type-check, syntax, changed-file Oxlint/Oxfmt, wiki sync/content, and diff checks pass.

Skill Application Evidence

TaskSkillStatusEvidence
T1codebase-designappliedCompiler owns lint policy and compatibility.
T1effectappliedExact compatible tuple and lint-only patch verified.
T1quality-typesappliedSupported asset state is explicit and incompatible tuples fail closed.
T1tddappliedPublic scaffold RED was recovered before GREEN.
T1turborepoappliedWorkspace tasks own lint/format; root owns toolchain and patch lifecycle.
T2codebase-designappliedOne normalized runner seam owns transforms and diagnostics.
T2tddappliedReal-process safe-fix, diagnostic, failure, and retry tests pass.
T3codebase-designappliedProvider envelopes remain thin over normalized results.
T3tddappliedProvider response RED/GREEN fixtures pass for all four adapters.
T4codebase-designappliedCandidate execution stays behind one injected process seam.
T4effectappliedTyped failures and finalizer cleanup are preserved.
T4quality-typesappliedFindings and operational failures remain distinct.
T4tddappliedUpdate warning, blocking, exact-tree, and cleanup slices pass.
T5writing-for-agentsappliedCommands, provider channels, trust boundary, and exclusions are documented.

Architecture Conformance Evidence

lint catalog -> scaffold compiler -> generated config/scripts/receipts
edited-file runner -> normalized result -> provider and update consumers
WaveVerdictEvidence
A1PassRAC-001 and RAC-002 automated evidence is green.
A2Automated pass; manual gate outstandingRAC-003 and RAC-004 automated evidence is green; Codex App observation remains unverified.
A3Automated pass; manual gate outstandingRunbook and routed wiki agree; the manual App check remains.

UI/Visual Evidence

N/A. No UI surface changed.

Runtime Validation Evidence

TaskObserved resultCleanupStatus
T1Exact tuple, Effect patch, structured diagnostic, and explicit @typescript-eslint/utils@8.22.0 dependency for the Effect JS plugin pass.Research fixture removed.Met
T2File-only fix, JSON diagnostics, clean silence, failures, and retry exhaustion pass.Marked fixture removed.Met
T3Process witness and four provider fixtures pass; Codex App /hooks was not observed.No App fixture was created.Automated met; manual gate outstanding
T4Full candidate scan runs without changed-path skipping. Node capture has a 256 MiB ceiling; overflow or null status fails operationally before JSON parsing. Findings warn; operational failures block; live tree remains unchanged. Effect lifecycle measured ~45s.Candidate cleanup tests pass.Met

Behavior Verification Evidence

CriteriaStatusEvidence
AC-001–AC-008MetT1/T2 focused suites and tuple readback.
AC-009–AC-015Automated pass; manual gate outstandingProvider, preview, cleanup, command, and exclusion evidence passes; App trust/same-turn observation remains manual.

Acceptance Criteria Status

CriterionStatusEvidence
RAC-001MetScaffold/config suite and exact tuple pass.
RAC-002MetEdited-file runner suite passes.
RAC-003Automated pass; manual gate outstandingProvider fixtures pass; Codex App trust/same-turn delivery is unverified.
RAC-004MetCandidate preview and update publication-gate suites pass.
RAC-005MetRunbook and routed projection pass.

Manual Review Checklist

AreaCheckExpected result
Codex AppTrust the changed hook in /hooks, edit a managed file, inspect PostToolUse, then make a clean edit.Actionable block, then silence. This remains outstanding.
UltraciteRun bounded check, doctor, fix, and fix --codex commands.Explicit targets; fix --codex is separate and never automatic.
UpdateExercise findings and operational-failure preview cases.Findings warn; operational failures stop publication.

Pre-existing Issues

Full lint remains historical debt: apps/cli reports 4,320 diagnostics across 155 files and wiki reports 497 diagnostics across 22 files. Formatter checks also retain three unchanged CLI files and eight unchanged wiki files. Focused Issue 181 paths are clean.

Out-of-Scope

Historical bulk cleanup, upstream AI prompts/rules/skills, generated upstream hooks, release publication, and backlog/provider mutation.

Steering

Manual Codex App trust and same-turn /hooks observation remain a platform-owned follow-up. Automated evidence does not claim that observation.

Remaining Work

Complete the manual Codex App trust and same-turn observation gate.

On this page