Quality Improvement Loop Method

About this pattern

This is a generated FPF pattern page projected from the published FPF source. It is canonical FPF content for this ID; it is not a FPF Reference product feature page.

How to use this pattern

Read the ID, status, type, and normativity first. Use the content for exact wording, the relations for adjacent concepts, and citations to keep active work grounded without pasting the whole specification.

Status: Core.

Use E.23 when an object version will be improved through repeated passes under a declared object-under-improvement evaluation. The object can be a pattern, DRR, FPF corpus object, engineering quality object, naming candidate, OEE/NQD candidate, archive/front member, selected set, parity report, refresh report, or declared transformation result, if an exact evaluation supplies values and stop meanings for that object kind.

Relations

E.23coordinates withParity / Benchmark Harness
E.23explicit referenceUnified Lexical Rules for FPF
E.23explicit referenceParity / Benchmark Harness
E.23explicit referenceTask-family adaptation signature
E.23explicit referenceDecision Theory (Decsn-CAL)
E.23explicit referenceEvidence Graph Referring (C-4)
E.23explicit referenceEpistemic Precision Restoration

Content

Problem frame

Use E.23 when an object version will be improved through repeated passes under a declared object-under-improvement evaluation. The object can be a pattern, DRR, FPF corpus object, engineering quality object, naming candidate, OEE/NQD candidate, archive/front member, selected set, parity report, refresh report, or declared transformation result, if an exact evaluation supplies values and stop meanings for that object kind.

Not this pattern when one direct quality evaluation is enough. Use E.22 to frame one evaluation and then run the named object-under-improvement evaluation. Use A.19.ECS first if the needed evaluation characteristic space does not exist.

First useful move: name the object version under improvement, the exact evaluation that will re-evaluate it, the improvement aim, protected trade-offs, cost and risk account, and local stop condition.

What goes wrong if missed: teams close discharge rows instead of improving quality, retry blindly, optimize visible values while damaging protected qualities, stop forever after a local all-5 result, or let a review recommendation become decision, work, evidence, selected-set publication, parity, or refresh by stealth.

Primary EntityOfConcern in plain terms: the repeated quality-improvement method for one object version under one declared evaluation.

Problem

FPF often improves artifacts by repeated review, repair, and re-evaluation. The loop is useful only when the changed object is evaluated again by the same object-under-improvement evaluation or by a declared stronger one. Without that discipline, repeated passes become checklist closure, agentic retry, source citation, or process state.

The loop must also avoid the maturity-ladder trap. A floor or all-5 result can close this loop under current use, comparison set, source state, and cost boundary; it is not proof that the object cannot improve under a new use, source, front, or payoff.

The loop also fails when an ordinal value becomes a work target. 5 is an assigned result after measurement, not an instruction to add apparatus until a 5 can be defended. Below-floor values return repair work. Above-floor improvement remains a real obligation when the frame requests it, but the target is a substantive content move: stronger positive action guidance, worked slice, case/countercase, source-currentness carry-through, mature-content discharge, relation cleanup, deletion of displaced apparatus, split of overloaded content, or another named content gain. Stay at 4 or no proposal is admissible only after a by-value search finds no non-dominated content move worth its cost under protected qualities.

Forces

ForceTension
Improvement ambition vs costExceptional improvement can be valuable; ordinary floor work must stay affordable.
General adaptive methods vs specialized cyclesBroad loops scale, while specialized cycles can be cheaper when the characteristic space fits.
Feedback vs self-confirming retryFeedback helps only when re-evaluation checks changed quality.
Operation hardening vs bureaucracyVerification, memory, decomposition, and supervision can help but must justify cost.
Visible improvement vs protected trade-offsOne coordinate can rise while use, source preservation, locality, or ecology worsens.
Proposal portfolio vs selector overreadProposals can guide improvement without becoming selected results or work plans.

Solution

E.23 is the general method for repeated improvement of an object version under an object-under-improvement evaluation named by value. It changes the object, re-evaluates the changed version using that evaluation's required evidence basis and result-row shape, checks trade-offs and cost, and decides whether to stop, continue, switch method family, open a new frame, or hold for exact information.

Local names and kind settlement

Local nameKind and role
QualityImprovementLoopMethodRepeated improvement method for one object version under one evaluation.
ObjectUnderImprovementRefExact object kind and version being changed.
ObjectUnderImprovementEvaluationRefExact evaluation pattern, characteristic space, Q-Bundle, rubric, or review profile that supplies values.
LoopEvaluationEvidenceBasisEvidence loci checked or named for the current loop evaluation result, including missing loci that lower values.
LoopEvaluationResultFormResult-row shape required by the object-under-improvement evaluation for the current pass.
ImprovementAimDesired movement: floor repair, optional exceptional improvement, trade-off inspection, absorption impact, open-question discovery, source-front reach, or another exact aim. It names desired quality movement, not a value that the repair must prove.
MethodFamilySelectionSelected method family for the current object and evaluation.
OperationFamilySelectionSetOptional operation families selected because they can move the evaluation enough to justify cost.
ObjectUnderImprovementReEvaluationRe-run or cited result of the evaluation on the changed object version.
CostAndRiskAccountCost and risk account used to judge another pass or operation.
StopContinueSwitchFrameHoldDecisionLocal loop decision after re-evaluation.
QualityImprovementLoopRecordRecord of object versions, applied rows, re-evaluation, trade-offs, cost/risk, and loop decision.
QualitySideMovementClaimLocal claim that a changed object moved on declared Q components under NQD/OEE comparison.
SourceComposedResultClaimResult produced by composing accepted source or practice lines and readable by the evaluation.
KindRestorationCheckRequired precision-repair check that records pre-repair kind, relation, slot or use-position, admissible use, and scope, proposed post-repair kind, relation, slot or use-position, admissible use, and scope, and whether each live field is not triggered, ordinary prose, preserved, split, intentionally changed by accepted decision, or blocking.

These names belong to loop method. They do not create quality values, project evidence, release state, selected-set publication, parity, refresh, or proof of quality.

Loop method

For one quality-improvement loop:

  1. Declare ObjectUnderImprovementRef, object version, and ObjectUnderImprovementEvaluationRef.
  2. Declare ImprovementAim, declared floor or desired substantive quality movement, protected trade-offs, cost and risk account, and local stop condition. Do not declare 5, all-5, or 5-defensible as the work target; name the content property to improve instead.
  3. Use E.22 to frame the first quality evaluation when the purpose is not already explicit.
  4. Run the object-under-improvement evaluation in its required result form. For one FPF pattern version, this is an E.21 result with every required coordinate, every ShortRationale, the PrecisionRestorationProfile, evidence basis, coordinate-specific payloads, and status. A loop record, profile pass, blocker summary, two-column table, or "no blockers" note is not a substitute.
  5. Record row-atomic findings or proposal rows when work is returned. A step is closed only after its finding or proposal row is written; do not rely on memory or a later grouped summary.
  6. Apply repairs or variants to the object. Repair below-floor findings first. When exceptional improvement is requested, search coordinate-by-coordinate for substantive content moves: better positive action guidance, a missing worked slice, case/countercase coverage, source-currentness carry-through, mature-content discharge, relation cleanup, deletion of displaced apparatus, split of overloaded content, or relocation of quality/process proof. Repairs must not add guards, boundary catalogues, relation menus, or quality proof solely to make a higher value defensible. A no-change closure is admissible only when the row gives loci and explains why no non-dominated content move is available under the protected trade-offs. When generation, selection, publication, parity, refresh, decision, planning, work, evidence, or assurance claims leave quality improvement, keep the pattern that governs that claim, relation, or boundary in the loop record or Relations. Do not let loop-method prose replace the object's positive content. For precision-restoration defects, use the selected restoration or governing pattern named by the evaluation: E.10, E.10.ARCH, F.18, F.19, or an object-specific pattern. Also record a bounded complete KindRestorationCheck before closing the finding: the repair must say what kind, relation, slot or use-position, admissible use, and scope were present before the edit and what kind, relation, slot or use-position, admissible use, and scope the changed text now carries when those items are live. No-op closure is admissible only as not triggered, ordinary prose, or already satisfied with loci; otherwise unchanged text remains a live finding. When another pattern governs the kind under repair, relation, claim, or position, cite that pattern; E.23 records the repair and reruns the evaluation, it does not duplicate the restoration algorithm.
  7. Re-evaluate the changed object version through the object-under-improvement evaluation, using that evaluation's required coordinate set, evidence basis, result-row shape, short rationales, mandatory attention-discharge rows, and coordinate-specific payloads.
  8. Record what improved, what stayed floor-only, what was unchanged by value with loci, what became worse, and which rows moved outside the evaluation.
  9. Decide stop, continue, switchMethodFamily, openNewFrame, or holdForExactInformation.
  10. Leave a QualityImprovementLoopRecord sufficient for the next reader to replay the object versions, evidence basis, evaluation result, trade-offs, cost/risk, and loop decision.

Stop, continue, and reopen

Stop when the current object version meets the declared floor or improvement aim and no feasible non-dominated proposal remains worth its cost under the current use, comparison set, source state, and protected trade-offs. If the remaining proposal mainly makes a value easier to argue while adding apparatus or worsening use, affordability, locality, source preservation, or ecology, reject that proposal; continue searching for a substantive content move if the improvement aim is still open, and stop only with a by-value no-proposal disposition.

Continue only when the next pass has an expected evaluation movement and acceptable cost/risk. Switch method when the current method family is not moving the object, is too costly, or no longer fits the evaluation. Hold when object, evaluation, authority, evidence, source condition, or comparison set is too under-specified.

An all-5, all-exceptional, current-front-reaching, or current-front-improving result closes this loop locally. It does not say that future development is impossible. A new use, Q component, source line, SoTA front, comparison set, affordability boundary, or higher-payoff proposal can open a later loop.

Method-family selection

Method familyUse when
PDSAorPDCAFamilyLearning quality, baseline comparison, measuring instruments, or standardize/repeat action matter for the improvement loop.
POOGIFamilyThe evaluation problem is throughput-shaped or constraint-shaped.
OODAFamilyOrientation quality and feedback under changing conditions affect the evaluation.
RalphLikeGeneralAdaptiveFamilyA broadly capable agent can improve the object through repeated specification, feedback, memory, and verification under C.19.1 cost/risk discipline.
FixedPerformerObjectVersionUnderImprovementOptimizationFamilyThe performer or harness stays fixed while the object version is edited and re-evaluated.
NQDQualitySideImprovementFamilyThe evaluation supplies the Q side for a declared NQD/OEE comparison and loop changes seek non-dominated Q movement.
SoTAReachAndMaintainFamilySeveral accepted source or practice lines must be composed to reach or maintain an externally assigned front.
SpecializedObjectFamilyCycleA specialized method family fits a declared characteristic space and is BLP-compatible.

The selected family is justified by characteristic-space fit, expected evaluation movement, cost/risk, and protected trade-offs. Familiarity, automation, or current popularity is not enough.

Operation-family selection

An operation family is selected only when the loop record names:

  1. expected movement under the object-under-improvement evaluation;
  2. failure mode addressed;
  3. cost or risk reason;
  4. protected trade-offs;
  5. stop or removal condition.

Typical operation families are specification articulation, task decomposition, context refresh with carry-forward evidence, failure-context retry, verification against specification, memory or distillation, external critic or co-regulation, proposal portfolio use, search breadth or variants, bounded object-change budget, held-out evaluation, rejected-change memory, optimizer-memory separation, source-line contribution assignment, agent-tool-interface hardening, and task-family adaptation signature. They remain selectable only for the loop that justifies them.

Cost and BLP discipline

C.19.1 governs the preference for broad, scale-amenable methods when safety, legality, and practical fitness are comparable. E.23 uses that preference but still evaluates end-to-end accepted-work cost:

AcceptedWorkCost ~= token_or_compute_cost + tool_cost + adaptation_attempt_cost + human_supervision_cost + rework_cost - avoided_loss_value

This is not a hidden quality score. It is a prompt for cost/risk reasoning. If avoided loss is large, an expensive loop can be right. If the object is simple, a human edit, small direct repair, lower-cost model, specialized cycle, or one-shot evaluation can be better.

Harness improvement is usually the first high-leverage move when it reduces blind retry: better frames, row shapes, test cases, source references, local tools, memory, verification, and stop conditions.

Source-bearing and OEE/NQD improvement

Accepted SoTA is the working external front only when assigned by the object-under-improvement evaluation, accepted source-use decision, or declared comparison set. E.23 can govern a loop that reaches, maintains, or improves relative to that front; it does not self-assign SoTA.

When several source lines are used, the loop records each line's contribution: value semantics, operation family, boundary, comparison discipline, failure mode, protected trade-off, or stop discipline. The changed object version then states the SourceComposedResultClaim and is re-evaluated.

For NQD/OEE, E.23 can change one object version or candidate to improve declared Q movement. C.17, C.18, C.19, G.5, G.9, and G.11 keep authority over novelty, diversity, descriptors, distances, archive/front insertion, pool policy, selected-set publication, parity, and refresh.

Worked slices

Affordable floor evaluation. A pattern needs admission readiness. E.22 frames floorEvaluation; E.21 evaluates all required coordinates. If the result is admissible and no improvement aim is requested, E.23 stays closed. If an admission, refresh, landing, or release crossing is claimed, E.19 and the release named by value/admission process still check the gate conditions; the E.21 status is necessary quality evidence, not the gate itself.

Pattern exceptional improvement. A pattern already passes floor but lacks worked slices and source-currentness. E.22 frames optional exceptional improvement for named coordinates. E.23 searches for substantive non-dominated content moves, applies proposal rows, re-evaluates by E.21, checks what became worse, and stops locally only when no worthwhile content improvement remains under the declared use. The loop may stop at 4, but only after the missing-exceptional opportunity has been searched and discharged by value; it is not a proof-building run toward all-5.

DRR improvement. A DRR needs drafting adequacy for multi-locus authoring. E.9.DA supplies coordinates; E.23 applies decision repairs and re-evaluates. The improved object is still a decision record, not prewritten pattern prose.

NQD quality-side improvement. A generated candidate has declared Q components and a comparison set. E.22 returns proposal rows. E.23 may change the candidate and re-evaluate Q; archive/front insertion, selected-set publication, parity, and refresh remain under the pattern that governs each claim and are not quality-loop decisions.

Bias annotation

This pattern biases FPF toward adaptive improvement with explicit re-evaluation. The bias is useful because many real objects improve only through feedback and revision.

The bias is bounded. One direct evaluation can close without a loop. Repetition is justified only by expected evaluation movement and acceptable cost/risk.

Conformance checklist

CheckRequirement
CC-E23-1Name object version and object-under-improvement named by value evaluation before claiming quality movement.
CC-E23-2Use E.22 or an equivalent frame when the evaluation purpose is not already explicit.
CC-E23-3Represent returned work as row-atomic findings or proposal rows with expected evaluation movement and closure tests; a step is not closed until its row is written, and grouped memory summaries do not discharge skipped rows.
CC-E23-4Re-evaluate the changed object version before claiming coordinate, status, Q, or front movement.
CC-E23-5Record what became worse and protected trade-offs.
CC-E23-6Continue only with expected evaluation movement and cost/risk reason.
CC-E23-7Treat all-5, exceptional, or front-reaching results as local loop stops, not permanent maturity endings.
CC-E23-7aDo not treat 5, all-5, or 5-defensible as a repair target. The loop repairs below-floor results first. Exceptional-improvement work may proceed only through non-dominated proposal rows that name the expected substantive content movement, protected trade-offs, and cost/risk. A no-proposal or stay-at-current-value disposition must show the checked loci and why every plausible content move is dominated, unavailable, or outside the declared scope. If a change would only add guards, relation catalogues, evidence theatre, or quality proof while reducing use, affordability, locality, or ecology, reject that change rather than counting it as improvement.
CC-E23-8Keep candidate generation, pool policy, selected-set publication, parity, refresh, decision, planning, work, evidence, assurance, gate, release, safety, and compliance claims with the pattern that governs each claim, relation, or boundary. State those pattern relations declaratively in loop records or Relations; keep loop-method and architecture-placement prose out of the object under improvement unless that prose is the object's own user-facing content.
CC-E23-8aWhen the evaluation names a precision-restoration defect, apply the selected restoration or governing pattern named by that evaluation. For E.21, use its PrecisionRestorationProfile to decide whether the repair is word/head/use precision (E.10, E.10.ARCH, F.18), phrase-level plain rewriting (F.19), or a governing-pattern repair. The repair row is not closed until it includes a KindRestorationCheck: pre-repair kind/relation/slot-or-use-position/admissible use/scope, post-repair kind/relation/slot-or-use-position/admissible use/scope, or not triggered/ordinary prose/already satisfied/blocker disposition with loci.
CC-E23-9Apply E.10 to load-bearing loop names, status values, examples, stop conditions, and result wording introduced or repaired by the loop.
CC-E23-10Preserve the named evaluation's required evidence basis, result-row shape, short-rationale rule, mandatory attention-discharge rows, and coordinate-specific payloads in every re-evaluation.

Common anti-patterns and repairs

Anti-patternRepair
Checklist closed, quality improved. Discharge count replaces re-evaluation.Re-evaluate the changed object.
Loop result without evaluation form. The loop says the object improved but records only prose, applied rows, or values without the named evaluation's evidence basis.Re-run the object-under-improvement evaluation in its required result-row shape.
Agentic retry as method law. Repetition continues without expected movement.Add evaluation movement, cost/risk, trade-offs, and stop/switch condition.
Operation-family creep. Verification, memory, supervision, or search is added everywhere.Keep only operations that can move the evaluation enough to justify cost.
Goodharted pass. Visible values rise while protected qualities worsen, or a non-5 value is treated as a defect to be fixed by more apparatus.Use trade-off inspection; apply E.13 when the visible value is replacing the intended value; reject, delete, split, relocate, or hold dominated changes; continue searching for substantive content movement when the improvement aim is still open; record stay at current value only with loci showing that no non-dominated content improvement remains.
Lexical substitution closure. A trigger word disappears, but the replacement narrows, widens, or changes the object kind; for example a graph-shaped method/workflow cue becomes a work sequence without a selected ontology decision.Reopen the row, recover the pre/post kind through E.10, F.19, F.18, or the governing pattern, and leave the repair blocking if the kind cannot be preserved or explicitly changed by accepted decision.
Maturity-ceiling stop. All-5 is treated as end of development.Close this loop locally and record reopen conditions.
SoTA citation as self-assignment. Sources are cited as proof of frontier quality.State source contributions and re-evaluate the composed result.

Consequences

ConsequenceBenefitCost
Repeated improvement has one method locus.FPF no longer relies on hidden authoring habits.Users must name object and evaluation.
Row discharge is separated from quality movement.Improvement claims become replayable.Re-evaluation is required.
General and specialized loops are comparable.BLP can be applied without craft folklore.Cost/risk and characteristic-space fit must be explicit.
Exceptional stop remains local.All-5 or front-reaching closure no longer freezes future development.Reopen conditions must be recorded.

Rationale

The shared method is simple: change an object version, re-evaluate it by the exact evaluation that gives values, check trade-offs and cost, then stop, continue, switch method, open a new frame, or hold. Classical improvement cycles, agentic loops, fixed-performer optimization, MCDA, Goodhart, and OEE/NQD lines contribute useful operations and boundaries, but they do not replace this method.

SoTA-Echoing

ClaimPractice or source lineLocal adoption
Improvement needs aim, measures, changes, learning, and adaptation.Model for Improvement/PDSA-PDCA lineage, including aim-measure-change discipline.The loop names aim, current evaluation, applied changes, re-evaluation, learning, and stop/continue decision.
Formative feedback requires more than a score.Sadler and Hattie/Timperley feedback traditions.The loop requires substantive proposal rows or checked no-proposal dispositions, not value-only closure.
Broad adaptive loops are useful but costly.Ralph-like current technique signal, Reflexion/Self-Refine/ReAct/LATS/SWE-agent lineage.General adaptive methods are selectable under C.19.1 cost/risk and re-evaluation discipline.
Fixed-performer object-version optimization is a useful current line.SkillOpt-like work with fixed performer and mutable external skill/document object.FixedPerformerObjectVersionUnderImprovementOptimizationFamily, bounded change budget, held-out evaluation, rejected-change memory, and optimizer-memory separation.
Multi-coordinate improvement needs trade-offs.MCDA, Pareto, ATAM, and current proxy-failure work.Re-evaluation includes what became worse, rejects dominated changes, and applies E.13 when the visible value under optimization starts replacing the intended value.
Measures and specifications can be gamed under optimization pressure.Goodhart/Campbell, surrogation, specification-gaming, and reward-hacking lines.The loop forbids all-5 targeting, separates floor repair from substantive exceptional proposals, rejects apparatus-only proof as dominated change, and opens E.13 when the loop target becomes a proxy for value.
OEE/NQD improvement is relative to declared Q, comparison sets, and fronts.Current quality-diversity and open-ended exploration survey lines.NQDQualitySideImprovementFamily changes object versions while OEE/NQD neighbours keep archive/front and selected-set authority.
Source-bearing improvement must synthesize contributions.Current source-currentness discipline in FPF plus source-composition practice.The loop records contribution strata and SourceComposedResultClaim before claiming front reach or maintenance.

Relations

PatternRelation
A.19.ECSConstructs or repairs an object-under-improvement evaluation when none exists.
E.22Frames each quality evaluation and can return finding or proposal rows.
E.21Supplies pattern-quality values for pattern-improvement loops.
E.9.DASupplies DRR decision-adequacy values for DRR loops.
E.2.DASupplies FPF Pillar-adequacy values for corpus-level loops.
E.13Governs pragmatic utility and proxy-to-value alignment when loop targets, quality values, metrics, or review results become substitutes for the intended value.

| F.18 | Supplies durable-name evaluation for naming loops. | | C.25, C.16.Q | Govern engineering quality bundles and quality-word precision repair. | | C.19.1 | Governs BLP and cost/risk comparison for method-family choice. | | C.22.1, C.24 | Govern durable task-family adaptation and tool-call planning when the loop makes those claims. | | C.17, C.18, C.19, G.5, G.9, G.11 | Govern OEE/NQD candidate characteristics, archive/front, pool, selected set, parity, and refresh. | | C.11, A.10, B.3, A.15, A.20, A.21 | Govern decision, evidence, assurance, work, gate, and release claims when a loop result is reused beyond quality improvement. | | E.10, A.6.P, C.2.P, F.18 | Repair load-bearing wording and names introduced by loop records. |

E.23:End


Last Updated: 2026-06-05 — this section last modified in upstream FPF commit eaafd3a4 (github.com/ailev/FPF)