Governed AI product workflow

AI CareerOperating System

A governed AI workflow for turning approved career evidence into recruiter-ready artifacts.

The system connects portfolio proof, source-audited evidence retrieval, role-aware resume generation, authenticated APIs, evals, and human review, showing how AI can improve high-stakes knowledge work without hiding claim boundaries.

Personal operating context with authenticated boundaries, source-audited retrieval, eval-backed grounding, and human approval. No external-adoption claim.

Diagram showing a governed AI workflow from approved career evidence to portfolio proof, claim-to-evidence retrieval, role-aware tailoring, specialized reviews, and a human-approved artifact.

Product problem

Why this matters

Hiring teams often see polished claims without knowing what evidence supports them. This system separates authored proof, source-audited evidence, role-specific tailoring, AI-assisted critique, and final human approval so career materials can be stronger without becoming less trustworthy.

Hands-on AI product leadership

Daniel's responsibility

Daniel defined the product architecture, evidence boundaries, claim-safety rules, workflow stages, evaluation criteria, and portfolio positioning. He used AI-assisted development to build and iterate across the Portfolio Guide and ResumeCustomizer while preserving human review as the final approval layer.

Governance and guardrails stay active from approved evidence through the final human-approved artifact.

Clear product boundaries

The products share an operating context and authenticated contracts, but each retains a distinct responsibility. Human review remains the final accountability layer.

01

Portfolio

Recruiter UX, authored page grounding, Portfolio Guide interactions, download, and optional email delivery.

02

ResumeCustomizer

Public-safe evidence retrieval, role mapping, generation, specialized reviews, rendering, and temporary artifacts.

03

Human review

Final accountability for what is approved, represented publicly, and submitted to a hiring team.

System mechanics

How the system works

Approved evidence becomes portfolio proof, role-specific mapping, a generated draft, specialized review, and finally a human-approved artifact.

01

Proof Engine

Recruiter-facing evidence discovery with explicit source priority and claim boundaries.

What does this system prove about Daniel's AI product judgment?

Page evidence
Ownership boundary
Useful next step
  • Authored page content stays primary
  • Role context changes navigation, not facts
  • Actions are separated from evidence

Server-to-server boundary

02

Tailoring Engine

Role-aware evidence mapping, specialized critique, and validated document rendering through six configured advisory reviewers.

  1. 1Role-specific mapping
  2. 2Draft generation
  3. 3Six advisory reviewers
  4. 4Structural validation
  5. 5Human-approved artifact
  • Three positioning lanes
  • Unsupported requirements become true gaps
  • Structural validation before PDF delivery

Models assist with mapping, drafting, and critique; Daniel remains responsible for what is approved and submitted.

Governed retrieval

Claim-to-Evidence Engine

This is the core governed-product mechanism: it lets the Portfolio Guide answer deeper hiring-manager questions without inventing claims or exposing unsafe or private details. Retrieval reuses the existing bearer-authenticated server boundary rather than adding a browser credential.

Diagram of the Claim-to-Evidence Engine showing a Portfolio Guide question, authenticated API call, public-safe and source-audited filters, structured evidence response, and safe fallback.

01 / Question

Portfolio Guide tool call

A deeper hiring-manager question triggers source-audited career evidence retrieval.

02 / Governance

Conservative filters

publicSafeOnly and sourceAuditedOnly default to true before evidence can be returned.

03 / Response

Structured evidence or safe fallback

The API returns claims, metrics, source status, and answerability without exposing raw resume bullets.

What it is

An implemented public-safe evidence search contract with structured claims, metrics, source status, answerability, and graceful degradation. Raw resume bullets remain private.

What it is not

A complete shared evidence graph. Durable page-to-evidence identifiers and unified publishing remain future work.

Launch condition: the Portfolio tool and ResumeCustomizer evidence endpoint must be merged and deployed together.

Transferable AI product judgment

What this proves

This system shows Daniel can design AI products where models are useful but constrained: retrieval is source-aware, claims are bounded, unsafe gaps are surfaced instead of hidden, outputs are reviewed, and quality is measured through evals before being represented publicly.

Evaluation evidence

Evals define quality before they measure it

In a stored 12-case Portfolio Guide eval set, grounding and source-separation changes improved acceptable responses from 5/12 to 11/12. This is a historical comparison from comparable runs, not a current full-suite quality claim.

Evaluation card showing Portfolio Guide grounding improvement from 5 out of 12 acceptable responses to 11 out of 12 in a historical comparable run.

Six configured reviewers

Different agents own different failure modes

The baseline-template pass uses four strategic reviewers before drafting. The final-resume pass runs all six against the completed content and rendering evidence. Their findings are advisory; structural checks can block output, and Daniel retains final approval.

Infographic showing six advisory resume review agents: Recruiter Screen, Hiring Manager, Career Coach, Source Auditor, ATS Readability, and Positioning and Bridge Strategist, followed by structured findings, scores, issue severity, source status, and human approval.
  1. 01

    Recruiter Screen

    Baseline + final

    Top-third fit and supported JD keyword coverage.

    Buried qualifications, weak skim-read clarity, and exact terms that are supported but missing.

  2. 02

    Hiring Manager

    Baseline + final

    Role-specific proof, seniority calibration, and likely hiring questions.

    True gaps, adjacent evidence that needs a safe bridge, and strong proof the draft failed to surface.

  3. 03

    Career Coach

    Baseline + final

    AI product leadership positioning and story coherence.

    Stale positioning, credibility risks, and language that undersells or overstates supported experience.

  4. 04

    Source Auditor

    Final

    Exact claim verification against approved or current-run evidence.

    Missing sources, contradictions, overclaims, credential inflation, and supported claims weakened by over-hedging.

  5. 05

    ATS Readability

    Final

    Parseability, density, section clarity, and document hygiene.

    Template leakage, unusual characters, dense bullets, ambiguous labels, and page length padded with filler.

  6. 06

    Positioning & Bridge Strategist

    Baseline + final

    Candidate archetype, bridge classification, and the highest-leverage positioning change.

    Off-archetype framing, unsafe domain leaps, underplayed proof, and bridges that need evidence instead of invention.

Structured output

Findings, 1–5 scores, issue severity, source status, and recommendations labeled source-backed, needs-source, or reject.

Credibility boundary

Review artifacts expose tradeoffs and gaps. They do not prove universal uplift or replace final human judgment.

Portfolio Guide

43 cases

Authored evaluation inventory

Resume review

6 agents

Configured advisory perspectives

Role strategy

3 lanes

Configured positioning lanes

Evaluation journal

Better routing was only the first hypothesis

I used evaluations to separate a working routing mechanism from a useful answer. More relevant evidence could make an answer more helpful while making it too long or losing a source limitation. That mixed result shaped the next product decisions.

Local candidate with saved evaluations; current validation exposed output-processing limits, and release review is pending.

  1. 01 · October 8, 2026 · Pacific

    Baseline

    37/43 local checks

    The saved gpt-oss:20b baseline had six failures: four sentence-limit failures and two missing expected signals. Seven routing-eligible questions passed 7/7 before routing.

    Limit: These are preserved baseline failures from one local answer run, not a production benchmark or semantic-quality percentage.

    Saved 43-case run; uncommitted local snapshot.

  2. 02 · October 8, 2026 · Pacific

    Routing mechanism

    32/32 routing fixtures

    An OpenAI Decisions API layer using gpt-6-luna selected topics, depth and evidence needs before Responses API answer generation. Fixtures covered routed questions and direct-question bypasses.

    Limit: Routing behavior does not establish answer quality or production readiness. This remained a locally tested prototype.

    Routing version 2026-10-08.v1; saved result October 9 at 03:50 UTC.

  3. 03 · October 8, 2026 · Pacific

    Controlled answer comparison

    33/36 → 27/36 combined passes

    Twelve questions ran three times per arm: 72 answers using gpt-5, gpt-6-luna routing and a source-aware gpt-5-mini judge. Helpfulness averaged 3.97/5 off and 4.28/5 on, while combined check-and-judge passes fell.

    Limit: Routing alone was not an overall quality win. Concision and source-limit flags remained. Both arms used matched loaded code and sources; later edits are a different snapshot.

    Stored routing-file fingerprint d0457ca5c44a; complete file fingerprints retained locally.

  4. 04 · October 8–9, 2026

    Fixes and targeted follow-up

    12/14 → 14/14 matched smoke

    Answer processing kept qualifiers with proof, bounded sentence counts and preserved question scope. A separate ownership follow-up passed 8/8 trials across four models, twice each.

    Limit: The 14-case smoke and eight ownership trials are different datasets. Targeted repair checks do not replace a complete regression after the final change.

    Saved local smoke and ownership artifacts; not a committed release snapshot.

  5. 05 · October 16 Pacific / October 17 UTC, 2026

    The same evidence rule in resumes

    564/564 deterministic tests

    A linked skills bank registered 31 skill and tool labels, with supported labels connected to approved bullet variants and four mappings explicitly unresolved. Drafting and rendering checked proof visible in the resume. A synthetic PDF retained the Decisions API local-prototype skill and its qualifier.

    Limit: Four mappings remained explicitly unresolved. Structural/provenance and rendering tests do not measure resume persuasiveness or establish deployment.

    Local ResumeCustomizer commit 25892de; no model evaluation is included in this test count.

  6. 06 · October 17, 2026 · UTC

    Bounded paid validation

    32/32 routing; 5/6 enabled vs 6/6 disabled

    Six synthetic, public-safe scenarios ran once per routing arm using gpt-5.6-terra, Luna routing and a source-aware gpt-6.1-sol paired judge. The enabled ownership answer lost its AI-assisted implementation distinction during sentence bounding, even though the raw answer contained it. The 41 API requests price to about $0.57 from reported token/cache usage at published standard rates; the invoice was not independently reconciled.

    Limit: Routing worked on this small authored set, but enabled answer quality was not a win. A deterministic repair replayed all 12 unchanged raw answers with byte-identical prompts and changed only that ownership answer. The original failed grade is retained; the repair has no new paid quality score. Complete current local validation, service compatibility and deployed configuration remain separate gates.

    Canary snapshot 7371d60; original answers, grades, usage and the separate repair replay are retained locally.

  7. 07 · October 17, 2026 · UTC

    A passing judge still needed review

    41/43 hard checks; 43/43 local judge

    A complete original 43-case pass at e2a72a4 used installed gpt-oss:20b answers and the same source-aware qwen2.5:14b judge. Two hard failures were wording or typography mismatches, but manual review still found a lost checkout estimate qualifier and AI Career measurement and release-status limits. Three deterministic probes exposed related output-processing gaps.

    Limit: The two hard failures remain in the recorded 41/43 result. Judge passes did not override the manual findings, and the local models did not establish Terra or production quality. This snapshot remains part of the record after repairs.

    Frozen e2a72a4 answers, original rubrics, grades and file hashes retained separately from later repairs.

  8. 08 · October 17, 2026 · UTC

    Repair the claim boundary, then rerun

    276 deterministic passes

    Captured raw answers and supplied canonical evidence drove bounded repairs for estimate qualifiers, unspecified time units, exact static-inventory figures, unlaunched integration scope, empty assistance credit, adjacent media-outcome claims and retrieval typography. Focused tests covered missing evidence, already-qualified answers and unrelated measured runtime facts; four existing tests stayed skipped.

    Limit: These are regression checks, not a semantic-quality score. The complete 43-case local answer and same-judge rerun is separate evidence and retains its original rubric. All prior comparisons, including the model bake-off and the paid enabled failure, remain preserved; no additional paid model score or production verification is claimed.

    Repair and full-run manifests identify their own code and source snapshots; release remains held for review and owner configuration verification.

  9. 09 · October 17, 2026 · UTC

    Keep the answer inside its source

    42/43 hard checks; 42/43 local judge

    A complete follow-up at bcf571e retained all 43 original questions and rubrics. Manual review still found generic retrieval wording without its disabled-release limit, stronger survey agency and broader platform-delivery claims. The one judge failure alleged metrics absent from the displayed answer; separate source review found a real helped-lead qualifier to retain.

    Limit: That combined result remains 41/43. A further source-gated repair passed 285 deterministic tests with four existing skips, including absent-source and already-qualified negatives. Its complete local rerun and actual-answer review are separate evidence; no old answer, grade, paid result or bake-off comparison is replaced.

    Frozen bcf571e outputs and grades are retained. The later repair and full-run manifests identify their own snapshot; Production configuration remains unverified after the denied metadata read.

  10. 010 · October 17, 2026 · UTC

    Align the evidence before strengthening the answer

    42/43 hard checks; 43/43 local judge

    The complete 3cec994 run preserved one literal professional-grounding mismatch and one recommendation advisory. Source review found that approved career evidence already confirmed February 2026 platform production, while the Guide packet emphasized prototype framing. A conservative follow-up carried the timeline and original-vision caveat into the packet and retained helped-lead and worked-on agency.

    Limit: The recorded combined result remains 42/43. Recommendation coverage alone is not a factual release blocker, and the source cross-check does not establish sole engineering ownership, preservation of the full original vision or stronger performance outcomes. The new snapshot receives its own complete local run; original scores, rubrics and the model bake-off remain unchanged.

    Frozen 3cec994 answers and grades remain separate from the source-alignment revision and its later validation; Production configuration is still a separate gate.

  11. 011 · October 17, 2026 · UTC

    Paraphrase repairs reached their limit

    39/43 hard checks; 41/43 local judge

    The frozen a611b35 run completed all 43 original questions with gpt-oss:20b answers and qwen2.5:14b judging. Actual-answer review still found an incorrect 16-month timeline, unsupported measurable-business-outcome language and a missing helped-lead qualifier. Each claim originated in raw local generation and survived processing; the combined recorded result remains 38/43.

    Limit: Four literal or coverage failures and one recommendation advisory remain separately recorded. These local failures are not evidence that Terra made the same claims. The earlier paid Terra canary retained its own 6/6 disabled and 5/6 enabled grades; the enabled ownership failure was a demonstrated processing loss of credit.

    Original a611b35 questions, raw answers, displayed text, rubrics and grades remain immutable alongside every prior comparison and bake-off.

  12. 012 · October 17, 2026 · UTC

    Select evidence before rendering the answer

    Approved simplification; validation separate

    Daniel approved replacing expanding prose repairs with selection of approved claim-block IDs. The renderer keeps each source claim and its qualifications together, rejects invented IDs and free-form answer text, and uses a canonical fallback. The existing budget guard reconciles completed prior usage before admitting a small Terra/Luna regression comparison.

    Limit: Deterministic contracts do not establish Terra answer quality or Production readiness. The comparison uses synthetic questions and public-safe approved evidence, with remote career retrieval disabled and no automatic paid retries. Its actual outcomes are recorded separately after completion.

    All historical stages and the separate 72-trial model bake-off are retained. Owner Production configuration confirmation remains pending.

  13. 013 · October 17, 2026 · UTC

    Constrained facts still needed a useful answer

    Terra: 2/4 candidate vs 3/4 baseline

    A new four-question comparison at 09db575 used eight Terra answer calls, four blinded Sol paired judgments and one Luna routing request shared across identical comparison inputs. It covered the three latest local claim failures and the original ownership-credit question. Terra selected valid approved block IDs in all four candidate answers, retaining their qualifications and implementation credit.

    Limit: The candidate still failed relevance and concision: the judge preferred the baseline in three cases and the candidate in one. All three original page cases exceeded the unchanged four-sentence limit, and the impact answer missed one requested proof signal. Both ownership answers stayed on the current project despite the broader question. The small run established no universal quality gain or Production readiness; no automatic paid retry or regrade followed.

    The a611b35 baseline code and 09db575 candidate used the same scoped public request per pair, with no remote career retrieval. Original rubrics, raw outputs, original paid 6/6-versus-5/6 grades and all historical bake-off evidence remain unchanged. Quality and owner Production configuration gates remain open.

  14. 014 · October 17, 2026 · UTC

    Narrow the selection before adding prose

    3/3 unchanged hard rubrics in saved-output replay

    A bounded local follow-up replaced broad bundles with concise authored claim-and-qualification blocks, pinned to the supplied approved source fields. Page catalogs now expose relevant proof blocks, role answers name the stated role, and across-portfolio ownership requires a supplied supporting project. The same four saved Terra ID outputs drove deterministic replay; no new model calls were made.

    Limit: The original paid 2/4 candidate and 3/4 baseline judge results remain unchanged. Two saved selections use canonical fallback under the narrower catalog, so replay does not establish how Terra will select under the new schema or what a fresh judge would conclude. The spending-admission block and owner Production configuration gate remain open.

    All paid raw answers, source/selection traces, original rubrics, earlier comparisons and the separate model bake-off are retained. New local checks are distinct from live semantic evidence.

  15. 015 · October 17, 2026 · UTC

    Verify the narrow fix, retain the tradeoff

    2/2 targeted candidate passes; 1–1 preference

    Two new Terra selections used the concise claim catalog for role relevance and cross-portfolio ownership, with one Luna routing call and two Sol paired judgments against preserved baseline answers. Both selections were valid without canonical fallback. Complete qualifications stayed with the rendered proof, including prototype reuse intent, AI-assisted implementation credit, disabled retrieval and production-ownership limits.

    Limit: Both baseline answers also passed. The judge preferred the baseline's more explicit role connection and the candidate's attributed cross-portfolio ownership comparison; the candidate was more concise in both cases. This is one observation per question against archived baselines, not a full 43-case Terra result or a universal quality gain. Impact and strategy retain replay-only coverage, and owner Production configuration remains unconfirmed.

    Answer runtime 0f1ba7b with reviewed ledger correction be59b62; all five requests completed with known usage and no retries. Original four-question paid grades, source traces, historical stages and the separate model bake-off remain unchanged. The targeted semantic check passes; deployment remains a separate gate.

Judge results also needed scrutiny. Later checks corrected four unchanged answers' source-aware grades, and a persisted Terra check regraded a malformed judge response against the unchanged answer. These are grading corrections, not newly improved answers; original outcomes remain part of the record.

Each stage keeps its own questions, models, dates, snapshot and denominator. The historical 12-case OpenAI comparison elsewhere on this page is a separate experiment. These small authored sets share source material and do not establish independent scientific validation, hiring outcomes, cost savings or generalized AI-quality gains.

October 8, 2026 · America/Los_Angeles

Model bake-off: a separate decision

I also compared answer models after the routing experiment. This was a separate 12-question study, with 72 answer trials, rather than another routing-off/on result. It informed the local Terra configuration alongside product judgment; it did not establish a universal model winner.

Four existing page, role and next-read questions plus eight broader creative, enterprise AI, director-fit, healthcare, scientific-research, comparison, ownership and architecture questions. Luna and Terra each ran twice per question in alternating order; GPT-5 and Sol each had one exploratory repeat. All used Luna Decisions routing, low reasoning effort, hybrid retrieval disabled and a fixed source-aware gpt-5-mini judge blinded to answer-model identity.

Historical answer-model results before the final ownership guardrail repair
Answer modelTrialsDeterministicSource-aware judgedMedian workflowHelpfulness / 5
gpt-51212/1211/1214.65 s4.25
gpt-5.6-terra2424/2423/244.82 s4.54
gpt-6-luna2424/2423/245.84 s4.33
gpt-6.1-sol1212/1211/127.37 s4.33

Terra and Luna produced similarly supported answers on this small set. Terra was the faster answer-model candidate; Sol showed no clear quality gain here and took longer. The table retains the original ownership failures before the final guardrail repair. Eight separate ownership follow-ups passed across all four models after that repair; they do not replace failed main trials.

Latency covers the generation workflow, including routing and career retrieval, and excludes judging. Eight of 60 routing-eligible trials hit the 1.5-second router timeout and used the page-grounded fallback. Among 18 paired Terra/Luna trials without either router timing out, medians were 4.55 s and 5.09 s; the median paired difference was 0.69 s. These are local workflow observations, not a general API latency guarantee.

No reconciled dollar-cost comparison was recorded. Saved answer-call usage for Terra's 24 trials was 378,696 input and 9,744 output tokens; Luna's 24 used 404,482 input and 10,396 output tokens. Cache hits and call counts differed. These totals exclude judge/router token costs and do not establish lower bills or savings.

All 72 answers were regraded after the judge received complete captured sources; four unchanged answers then needed recommendation-bucket grading corrections. Original grades and rechecks remain in the local artifacts. Answer-generation file fingerprints stayed stable during the paired Terra/Luna study; the judge file changed during source-packet repair. Unequal repeats, small authored datasets, live career retrieval and later code changes limit generalization and comparison with the earlier routing study.

The comparison informed the local Terra configuration. Daniel separately confirmed gpt-5.6-terra as the intended answer model on October 17. Current release validation and production configuration verification remain separate gates; no new paid model bake-off is included here.

Source: the saved October 8 model-comparison report, aggregate results, original grades and follow-up records. Complete file references and fingerprints are retained in the repository review notes.

Capability boundary

What is real. What gets stronger next.

The credible product story includes its limits. Current capabilities are visible on the left; the investments required for stronger reliability and measurement stay visible on the right.

Implemented

  • Authenticated API boundary
  • Site-wide assistant with authenticated career hybrid retrieval
  • Decisions routing for eligible broader questions
  • Recorded-output replay and source-cited Codex review packets
  • Nine-state job lifecycle
  • Six specialized review perspectives
  • Structural PDF validation

Needs implementation or instrumentation

  • Durable queue and job store
  • Shared evidence identifiers
  • Joined recruiter funnel
  • Versioned latency and failure metrics
  • Hard gate or explicit override for rejected output

Private local workflow

Added a private local application profile with reviewed facts, source references, confirmation dates, and employer-specific answers. Implemented locally in ResumeCustomizer on October 8, 2026; Daniel directed requirements and reviewed facts, with Codex assisting implementation. The profile remains private and local.

No measured time savings, hiring outcomes, external adoption, application-quality gains, or semantic AI-quality gains are established for this profile.

Released a site-wide portfolio assistant connected to public-safe career evidence through authenticated hybrid retrieval. Decisions routing handles eligible broader questions; direct questions can bypass it. Daniel directed the AI-assisted implementation. The warm October 22 question verified career and Portfolio hybrid retrieval, while both checked questions bypassed Decisions. The ownership repair shipped without a new generated-answer or hosted cold-start check. These checks establish no universal answer quality, citation success, measured cost savings or real-user adoption.

Deployment media

Separated large portfolio recordings from deployment bundles, preserving the original media with checksum verification and adding asset-budget checks. Documented uncompressed static files decreased from 147.65 MiB to 81.58 MiB. Daniel directed the AI-assisted implementation. PR #11 and docs/deployment-storage.md document this inventory, excluding server bundles; this content review did not independently rerun the measurement. This file inventory establishes no lower bills, page-speed change, reclaimed historical storage, or semantic AI-quality gain.

Review the media migration evidence
Continue exploring

Explore the evidence first. Try the workflow when it is useful.

Use the generator when a role-specific artifact would help a hiring team evaluate the same evidence in context.

The generator is an action surface, not evidence of role fit.

Share feedback

Reviewed with AI to improve this site. Includes this page and, when analytics is enabled, pseudonymous browsing context. Raw feedback is kept for 90 days. Please avoid personal or sensitive details.

0 / 2,000