Releases: grammy-jiang/research-pipeline
v0.28.0
Added
-
architectureskill — Cross-Section Consistency Gate (skill manifest 0.9.0 → 1.0.0).
Prevents downstream stages from discovering architecture gaps too late by adding
a Cross-Section Consistency Pass insidearchitecture --mode design.prompts/22_architecture_draft.md— adds step 2c: Cross-Section
Consistency Pass verifying (i) every MVP operation in §23 exists in §12,
(ii) every user-visible state in §23.3/§23.4 maps onto §14, (iii) every
human-review action in §23.6 has a §12 contract + §14 transition + §16 audit
event + §18 failure behaviour, (iv) every progress item in §23.4 has a §16
observability event, (v) §24 handoffs reference only formalized or deferred
operations. Gaps logged in §25 and §27.prompts/23_quality_gate_self_check.md— adds five v0.9.0 cross-section
consistency gates (20–24); updates Instructions to include them in the §26
table.templates/architecture_design_template.md— adds
### Cross-Section Consistency Gatesub-table to §26.SKILL.md— adds quality gate 29.manifest.json— bumped to 1.0.0.
-
ux-designskill — MVP phase and testability metadata (skill manifest 0.2.0 → 0.3.0).
Enablesimplementation-planto convert E2E seeds into concrete test tasks
without guessing and to scope MVP-0 correctly.prompts/07_user_stories.md— requires phase/release-gate header on
every story (Phase, Primary Surface, Release Gate, Depends On); updates
validation gate.prompts/10_e2e_scenario_seeds.md— requires testability metadata block
on every seed and a Testability Summary Table in §20; updates validation gate.templates/e2e-scenario-template.md— adds testability metadata fields
to skeleton and worked example.templates/user-story-template.md— adds phase + release-gate fields;
updates Rules.prompts/13_quality_gate_self_check.md— adds six gate rows, five fail
conditions, six warning conditions.SKILL.md— adds quality gate 11.manifest.json— bumped to 0.3.0.
v0.27.0
Added
architectureskill —materializemode (skill manifest 0.8.0 → 0.9.0).
Addsarchitecture --mode materializeto consolidate the base architecture
design plus all accepted update notes into one canonical implementation-ready
source of truth beforeimplementation-plan.prompts/materialize_02_discover_and_order.md— discovers the base
architecture by topic slug, discovers and validates accepted update notes
(acceptance criteria:Artifact Type = architecture_update, quality-gate
PASS, no unresolved blocking conflicts), sorts by version/update history,
builds a section-level patch plan, flags preliminary conflicts.prompts/materialize_03_apply_patches.md— checks six BLOCKING conflict
classes (SECTION_CONFLICT, PATCH_TARGET_MISSING, TEXT_ANCHOR_GONE,
CONTRACT_CONFLICT, SUPERSESSION_CONFLICT, BREAKING_CHANGE_UNRESOLVED); on
any conflict writes a materialization-blocked report and stops; otherwise
applies patches in order, removes resolved provisional wording, updates ADRs
/ open questions / handoffs.prompts/materialize_04_final_document.md— produces the 30-section
canonical architecture (27 original + Applied Updates + Superseded Patch
Notes + Implementation-Plan Readiness), the artifact registry, and the
open-question ledger; runs the Materialization Quality-Gate Self-Check.templates/architecture_canonical_template.md— 30-section canonical
architecture skeleton with Applied Updates, Superseded Patch Notes, and
Implementation-Plan Readiness sections;Artifact Type = architecture_canonical.templates/artifact_registry_template.md— artifact registry skeleton
(Current Canonical Artifacts + Superseded / Historical Artifacts + Pipeline
Stage Summary) telling downstream agents which files to read and which are
audit history.templates/open_question_ledger_template.md— open-question ledger
skeleton centralizing all open questions with source, owner stage, blocking
status, and required resolution action.templates/materialization_blocked_template.md— blocked report skeleton
emitted when a BLOCKING conflict prevents safe materialization.references/materialization-guide.md— full guide: when to use, what it
owns / must not own, accepted-update discovery rules, conflict classes, output
files, quality-gate fail/warn conditions.references/patch-manifest-guide.md— Patch Manifest YAML format guide
and update-type taxonomy (NONE / NOTE_ONLY / ADR_ONLY / CONTRACT_PATCH /
SECURITY_PATCH / OBSERVABILITY_PATCH / STRUCTURAL_PATCH / BREAKING_CHANGE).references/artifact-registry-guide.md— artifact registry purpose,
controlled status values, artifact role vocabulary, and rules.references/open-question-ledger-guide.md— ledger purpose, ID prefix
convention, status and owner-stage values, blocking-status values.- Mode resolver (
prompts/00_mode_resolver.md) updated: addsmaterialize
to the mode table and routing JSON; adds explicit materialize triggers and
negative triggers; updates preconditions for six modes. - Mode-selection guide (
references/mode-selection-guide.md) updated: adds
materializemode description, selection logic, negative triggers, and
downstream flow showing full pipeline through materialize to
implementation-plan.
architecture --mode updatemetadata improvements (skill manifest 0.8.0 → 0.9.0).
Update mode output grows from 11 to 13 sections:- §5 Patch Manifest — machine-readable YAML consumed by
materialize;
every accepted decision maps to a patch entry with target section, operation,
patch type, and implementation-blocking flag. - §12 Feedback Closure Matrix — tracks which downstream feedback items
(ux-design Architecture Feedback, security-review findings) are resolved by
which patches;NOT_APPLICABLEwhen no downstream feedback was applied. - Patch-Type Taxonomy added to Generation Metadata §1; multi-type allowed.
- Skill version metadata —
UNKNOWN — resolver could not determine this valuereplaces bareunknown; quality gate warns on any UNKNOWN field. prompts/update_02_apply_decisions.mdandupdate_03_final_document.md
updated to instruct producing §5, §12, and classified patch types.references/architecture-update-guide.mdupdated with taxonomy table,
Feedback Closure Matrix guidance, and 13-section quality gate.SKILL.mdupdated: six-mode table, references table,materializemode
description, method section withmaterialize_taskstask graph.manifest.jsonversion 0.8.0 → 0.9.0;materialize_taskstask graph and
materialize_mandatory_gatesadded; mode resolver routing updated.
- §5 Patch Manifest — machine-readable YAML consumed by
v0.26.0
Added
- Cross-Skill Artifact Contract across the
blueprint,architecture, and
ux-designskills (blueprint skill 0.7.0 → 0.8.0, architecture 0.7.0 → 0.8.0,
ux-design 0.1.0 → 0.2.0). A shared standard so every generated document is both
a human report and a machine-readable handoff artifact, preventing pipeline
drift / artifact mismatch / unstable topic slugs as the skill graph grows.references/artifact-contract.md— the canonical contract (artifact-type
registry, stable-topic-slug rules, filename rules, required Generation
Metadata, Source/Resolved artifacts, decision register, assumptions, open
questions, recommended next stage, quality-gate, controlled vocabulary,
per-skill requirements). Skills install independently (each is symlinked to
its own dir), so the file ships identically inside each of the three
skills; a guard test asserts the copies stay byte-identical.- Templates aligned (7): the blueprint, the five architecture mode
templates (design / tech-stack / update / reconciliation / review), and the
ux-design template now carryArtifact Type+ stableTopic Slugmetadata,
an unnumbered## Cross-Skill Artifact Contractblock (Source Artifacts
Consumed, Resolved Input Artifacts where discovery is used, and a Contract
Field Map that points at each skill's existing decision/assumption/
open-question/next-stage sections — alignment, not duplication), and a
Cross-Skill Artifact Contract Gate in every self-check. No existing
section numbering changed. - Prompts: the seven main generation / final-document prompts now instruct
contract compliance with the controlled vocabulary; each SKILL.md References
table listsartifact-contract.md. - Guard tests:
tests/unit/test_artifact_contract.pyenforces the contract
structurally (templates include Generation Metadata / Topic Slug / Source
Artifacts Consumed / Recommended Next Stage / Quality-Gate Self-Check; the
five architecture mode templates include Resolved Input Artifacts; every
self-check includes the contract gate; every skill references the contract;
the contract file carries the registry + controlled vocabulary; the three
copies are identical). - Worked examples are dated pre-contract snapshots and adopt the contract on
next regeneration;implementation-plan/security-review/test-design
will comply from day one.
v0.25.0
Added
architectureskill —review/update/reconcilemodes (skill
manifest 0.6.0 → 0.7.0). The three remaining modes are now fully implemented
(previously recognized-but-deferred), completing the architecture lifecycle:
design → stack → update → ux-design → reconcile → review → implementation-plan.- Shared artifact resolver (
prompts/resolve_artifacts.md,
references/artifact-discovery-guide.md). When the user passes no filenames,
all three modes auto-discover the most relevant prior skill/mode outputs from
the working dir /docs/design/artifactsby topic slug + candidate
scoring (filename suffix, section markers, recency), require the architecture
design (STOP with a clear message if missing), ASK_USER on ambiguity, and
embed a Resolved Input Artifacts table in every output. review— evaluates architecture quality without changing it: a
10-point score breakdown with justifications, blocking/warning/polish issue
classification, readiness assessments, and recommended next actions →
<topic-slug>-architecture-review.md(19 sections). It is the safe default
when barearchitectureis invoked and an architecture already exists.update— applies already-accepted decisions (priority source: a
tech-stack with Architecture Update Required? = Yes, then accepted
reconciliation, security-review, newer blueprint, explicit user decision;
never ux-design directly) into<topic-slug>-architecture-update.md(11
sections) — an update note that does not overwrite the design document by
default.reconcile— turns downstream feedback (primarily a ux-design
Architecture Feedback section) into findings, a missing-architecture-support
map, a minimal patch plan, and an explicit Architecture Update Required?
verdict + handoff toupdate→<topic-slug>-architecture-reconciliation.md
(11 sections). It does not patch the architecture by default and does not
blindly accept a downstream artifact that contradicts the blueprint.- No-silent-mutation rule across all three modes; three new task graphs
(review_tasks/update_tasks/reconcile_tasks) + mandatory gates; the
mode resolver and mode-selection guide updated (barearchitecture+
existing architecture →review, neverupdate); three templates, four
references, three worked translation-system examples that chain off the
existing stack (Architecture Update Required? = Yes) and ux-design
(Architecture Feedback) examples; and Phase-5 guard tests.
- Shared artifact resolver (
Changed
- AGENTS.md: the
architectureskill is now described as five implemented
modes.
v0.24.0
Added
ux-designskill (new; skill manifest 0.1.0). The fifth bundled skill and
the fourth stage of the design chain:research-pipeline → blueprint → architecture → ux-design → implementation-plan. It consumes an architecture
design document (architecture --mode designoutput; the matching blueprint
and tech-stack are optional) and emits<topic-slug>-ux-design.md. Pure
prompt-driven (no CLI/MCP backend); auto-discovered bysetup.- User-story-driven, not screen-drawing. It separates Skill Operator UX
(how the user drives the skill workflow) from Target Software UX (how end
users and agents interact with the product), and produces structured user
stories (preconditions, main / alternative / failure-recovery flows,
user-visible states resolving to the architecture state model, acceptance
criteria), core journeys, surface-specific UX (only for
architecture-supported surfaces), human-in-the-loop UX, error / empty /
loading / degraded / recovery states, acceptance criteria, and Gherkin-style
E2E scenario seeds (seeds, not executable tests). - Mandatory architecture feedback. §21 records UX-exposed architecture gaps
(missing states / events / review schema / permissions) with severity and
recommendsarchitecture --mode reconcilewhen needed — the UX→architecture
feedback loop. - Input discovery + fail-fast. Auto-discovers
*-architecture-design.mdin
the working dir /docs/design/artifacts, ranks candidates, and
STOPs with a clear message if none is found (it does not run from a blueprint
alone). Hybrid is the default operating mode. - 22-section + Appendix-A output template, 13-task manifest, 13 prompts, 3
templates, 4 references, a worked translation-system example, and structural
tests (tests/unit/test_skill_ux_design.py).
- User-story-driven, not screen-drawing. It separates Skill Operator UX
Changed
architectureskill references updated to reflect thatux-designnow
exists (the mode-selection and Experience-Architecture guides no longer call it
a "future skill not yet built"; no behavior change, architecture manifest stays
0.6.0).- AGENTS.md: "Four skills" → "Five skills" with a
ux-designrow and description.
v0.23.0
Changed
architectureskill —design/stackmode split (skill manifest 0.5.0 →
0.6.0). Phase 1 of the architecture-skill mode-split improvement plan
(docs/architecture-skill-mode-split-improvement-plan.md). The skill becomes
one skill with internal modes instead of mixing architecture design and
tech-stack selection in one pass. Tech/domain-neutral; the existing
prompts/template/example are extended, not rewritten.- Mode resolver. A new
prompts/00_mode_resolver.md+ a## Modessection
in SKILL.md +references/mode-selection-guide.mdselect the mode (design
/stack/update/review/reconcile) from an explicitmode
argument or automatic detection.designandstackare fully specified;
updatereuses design mode's existing regenerate/patch/compare/adr-only/
resume machinery;review/reconcileare recognized but deferred (never
silently mutate an architecture). designmode consumes blueprint §9 and §19. It now reads the blueprint's
§9 Product Experience Direction into a new §23 Experience Architecture
section (interaction surfaces, user-visible states mapped onto the §14 state
model, feedback/progress, error/recovery, human-review flow, trust/
transparency, UX handoff — architecture-level UX support, not UX design), and
reflects the §19 Recommended Next Stages routing in a new §24 Recommended
Next Stages and Downstream Handoffs section (tech-stack / ux-design /
security-review / test-design handoffs + update/reconciliation triggers). The
design output grows from 25 to 27 sections.- Provisional-tech discipline. §7 keeps the tech stack provisional with
new §7.1 Provisional Tech Assumptions and §7.2 Tech-Stack Selection Handoff
sub-sections whenever §19 routestech-stack-selection = RUN/DEFER; final
selection is owned bystackmode. Five new §26 self-check gates enforce
this (Product Experience Direction consumed, Experience Architecture
produced, Recommended Next Stages consumed, tech-stack-provisional, and
downstream-handoffs-present). stackmode. A separate 6-task graph (prompts/stack_01–stack_06,
templates/architecture_tech_stack_template.md,
references/tech-stack-selection-guide.md) selects the concrete technology
stack against the architecture — one decision per area with alternatives,
rationale, risk, reversibility, and architecture impact — and ends with an
explicit Architecture Update Required? verdict. It satisfies the
architecture and never redesigns it; on a genuine conflict it declares the
update instead of rewriting. Output:<topic-slug>-architecture-tech-stack.md.- A worked
stackexample (examples/translation_tech_stack_example.md) is
added and thedesignexample is updated to 27 sections.
- Mode resolver. A new
v0.22.0
Changed
blueprintskill — adaptive next-stage routing clarity (skill manifest
0.6.0 → 0.7.0). A focused follow-up to the §19 router and §9 Product
Experience Direction, acting on an external review of a generated blueprint.
No redesign — the changes are columns, a couple of small tables, and a short
rationale, all tech/domain-neutral and folded into the existing
prompts/templates/reference/example:- §19.2
Depends Oncolumn. The Stage Recommendations table now states
each stage's prerequisite explicitly (e.g. security-review and ux-design
depend on architecture-design), distinct from the revisit trigger, so the
pipeline no longer looks more rigid — or more parallel — than intended. - §19.4 Recommended Pipeline split. The single flat pipeline list is now a
Recommended Linear Path (core ordered sequence) plus a Conditional
Follow-up Gates table (Gate | Run When | Typical Input | Output), so
deferred conditional stages — chieflyarchitecture-update/
architecture-reconciliation— are never silently dropped from the routing
picture. - §19.3 ASK_USER Decision Rationale. When no stage is
ASK_USER, §19 now
justifies why (each high-impact unknown is already answered by the source
report / §9, deferred to architecture-design, or delegated to
security-review, with a named owner) instead of looking over-confident;
FAILifASK_USERis absent despite an unresolved high-impact unknown with
no downstream owner. - §19.1 complexity score labelled a routing heuristic. The output now
states that the/ 21score is a routing heuristic, not a formal project
estimate, to be revisited after architecture-design — preventing false
precision. - §9.4 / §9.5 interaction-mode
Classification. Every interaction mode now
carries a controlled classification — primary surface / secondary
surface / wrapper / integration surface / future surface — with an
explicit rule that "AI Skill" must be disambiguated (usually a
wrapper/integration surface around the CLI/core, not a separate runtime) and
never conflated with MCP (a tool surface for external AI agents). - Quality gates. The Product Experience Gate gains an "Interaction modes
classified" row; the Adaptive Stage-Gate Recommendation Gate gains
"Stage table has Depends On", "Linear-path vs conditional-gates split",
"ASK_USER absence explained", and "Complexity score labelled heuristic" rows,
plus matching WARNING conditions. The §19 output-discipline budget was
updated so the additions (columns + small tables) do not contradict the
"keep §19 compact" rule.
- §19.2
v0.21.0
Added
blueprintskill — Recommended Next Stages (adaptive stage-gate routing;
skill manifest 0.5.0 → 0.6.0). The blueprint is now the first adaptive
stage-gate router after research extraction: instead of leaving every
optional downstream stage to manual choice, it evaluates the project and
recommends which stages should run next — with evidence, confidence, and
revisit triggers — without silently expanding the pipeline. Folded into the
existing prompts/templates/example (no new manifest tasks),
tech/domain-neutral:- New §19 Recommended Next Stages (the output template grows from 19 to 20
sections; §19 sits after the technical-design handoff and before the
Traceability Appendix, which renumbers to §20). It contains a Pipeline
Complexity Assessment (seven 0–3 dimensions — user-facing complexity,
technical ambiguity, security/privacy risk, AI/LLM uncertainty, integration
complexity, human-review complexity, testing/E2E importance — with a total
/ 21and a simple/lightweight/medium/complex workflow class), a Stage
Recommendations table covering architecture-design, tech-stack-selection,
ux-design, security-review, test-design, architecture-update, and
architecture-reconciliation, a short Recommended Pipeline, and a
Stage-Gate Decision Log. - Controlled decision vocabulary — every stage uses exactly one of
RUN / SKIP / DEFER / ASK_USER (no vague "maybe / consider / nice to
have"). Every RUN/ASK_USER needs evidence, every SKIP a reason, every DEFER
a revisit trigger; recommendations are overrideable defaults.
architecture-designis normally RUN;architecture-updateand
architecture-reconciliationdefault to DEFER at blueprint stage (no
architecture document exists yet). - Adaptive Stage-Gate Recommendation Gate added to the quality-gate prompt
(Gate 9) and the Appendix A self-check (seven rows: section exists,
controlled decisions, RUN evidence, SKIP reason, DEFER revisit trigger,
ASK_USER missing-info, and Product Experience Direction informs the
recommendations), with explicit FAIL and WARNING conditions. - Product Experience Direction integration — §9 signals drive the routing
(human review → ux-design / test-design; external egress → security-review;
CLI-first → ux-design DEFER; future MCP → tech-stack-selection RUN/DEFER),
making §9 actionable rather than decorative. - New reference
references/adaptive-stage-gate-routing.md— the decision
vocabulary, per-stage RUN/SKIP/DEFER/ASK_USER rules, complexity scoring, the
PED-integration table, the output-discipline budget, and the gate
definition. SKILL.md, prompts 04/05, the template, the example, and both
checklists were updated; the shipped example models a realistic 16/21
"complex" routing recommendation.
- New §19 Recommended Next Stages (the output template grows from 19 to 20
Changed
blueprintSKILL.md now documents 20 sections, adds adaptive-routing trigger
phrases ("what should we build next?", "which design stages should we run
next?"), and a ninth quality gate.
v0.20.0
Added
blueprintskill — Product Experience Direction (lightweight UX-intent
support; skill manifest 0.4.0 → 0.5.0). The blueprint now captures enough
product-experience direction to keep downstream architecture and
implementation from inventing UX assumptions, without turning blueprint into a
full UX-design stage. The boundary is explicit: blueprint defines UX intent
· architecture defines the UX-enabling technical structure · a later UX-design
skill defines the detailed experience · implementation-plan turns it into
build tasks. Folded into the existing prompts/templates/example (no new
manifest tasks), tech/domain-neutral:- New §9 Product Experience Direction (the output template grows from 18
to 19 sections; §9 sits after Workflow Model and before Logical
Architecture, so UX intent exists before the architecture handoff). It
captures, compactly (1–2 pages, tables): Primary Experience Thesis · Primary
User / Operator · Primary Job-to-Be-Done · Primary Interaction Mode
(CLI/Web/GUI/TUI/API/AI-Skill/MCP/Hybrid, with MVP stage + rationale) ·
Secondary / Future Interaction Modes · Critical Trust, Control, and
Transparency Requirements · Human-in-the-Loop Experience · Failure and
Recovery Expectations · UX Assumptions for Architecture · Product Experience
Handoff to Architecture. - Product Experience Gate added to the quality-gate prompt and the
Appendix A self-check (eight rows: primary user, job-to-be-done, experience
thesis, interaction mode, trust/control/transparency, human-in-the-loop,
failure/recovery, UX handoff), with explicit FAIL and WARNING conditions. - UX-intent boundary enforced — §9 must not contain screen layout,
wireframes, CSS/visual design, full user journeys, exact CLI syntax/flags,
exact MCP/API schemas, copywriting, mobile navigation, full accessibility
checklists, or implementation tasks (UX over-reach is a gate FAIL). SKILL.md
gains UX trigger phrases and negative triggers (detailed UI/UX → a later
UX-design skill); the forbidden-content checklist gains a detailed-UX
section. - New reference
references/product-experience-direction.md— the section
template, the boundary rule, the grill-me-style clarification-question
format (good vs. bad questions), the Product Experience Gate, and the output
budget. - Chain handoff — the
architectureskill's blueprint-parse prompt now
extractsproduct_experience(interaction mode, trust/control/transparency,
human-in-the-loop, failure/recovery, UX assumptions) so it preserves UX
intent instead of inventing it. - Updates the manifest, SKILL.md, prompt 04 (generate), prompt 05
(quality-gate), the output template, both test checklists, and the worked
example (now modelling §9 + a PASS-with-warning PE-gate row), with new guard
tests including a Copilot description-length check.
- New §9 Product Experience Direction (the output template grows from 18
v0.19.5
�[38;2;0;136;0;03m## Changed�[39;00m
�[38;2;102;102;102m�[39marchitecture�[38;2;187;187;187m �[39mskill�[38;2;187;187;187m �[39m—�[38;2;187;187;187m �[39mprovenance�[38;2;187;187;187m �[39m�[38;2;102;102;102m&�[39m�[38;2;187;187;187m �[39moutput�[38;2;102;102;102m-�[39mdiscipline�[38;2;187;187;187m �[39mhardening�[38;2;187;187;187m �[39mpass�[38;2;187;187;187m �[39m(skill�[38;2;187;187;187m �[39mmanifest�[38;2;187;187;187m �[39m�[38;2;102;102;102m0.4�[39m�[38;2;102;102;102m.0�[39m�[38;2;187;187;187m �[39m→�[38;2;187;187;187m �[39m�[38;2;102;102;102m0.5�[39m�[38;2;102;102;102m.0�[39m).�[38;2;102;102;102m�[39m�[38;2;187;187;187m �[39mFourth�[38;2;187;187;187m �[39mreview�[38;2;102;102;102m-�[39mdriven�[38;2;187;187;187m �[39mpass.�[38;2;187;187;187m �[39mThe�[38;2;187;187;187m �[39mreviewed�[38;2;187;187;187m �[39mdocument�[38;2;187;187;187m �[39mwas�[38;2;187;187;187m �[39mconfirmed�[38;2;187;187;187m �[39m�[38;2;170;34;255;01mgenerated�[39;00m�[38;2;187;187;187m �[39m�[38;2;170;34;255;01mby�[39;00m�[38;2;187;187;187m �[39mv0�[38;2;102;102;102m.19�[39m�[38;2;102;102;102m.4�[39m�[38;2;187;187;187m �[39m(metadata�[38;2;187;187;187m �[39mreports�[38;2;187;187;187m �[39mskill�[38;2;187;187;187m �[39m�[38;2;102;102;102m0.4�[39m�[38;2;102;102;102m.0�[39m)�[38;2;187;187;187m �[39m�[38;2;170;34;255;01mand�[39;00m�[38;2;187;187;187m �[39mthe�[38;2;187;187;187m �[39mv0�[38;2;102;102;102m.19�[39m�[38;2;102;102;102m.4�[39m�[38;2;187;187;187m �[39mfixes�[38;2;187;187;187m �[39mverified�[38;2;187;187;187m �[39m�[38;2;170;34;255;01mas�[39;00m�[38;2;187;187;187m �[39mlanded�[38;2;187;187;187m �[39m(�[38;2;170;34;255;01mdata�[39;00m�[38;2;102;102;102m-�[39megress�[38;2;187;187;187m �[39m�[38;2;102;102;102m+�[39m�[38;2;187;187;187m �[39mverification�[38;2;102;102;102m-�[39m�[38;2;170;34;255;01mtable�[39;00m�[38;2;187;187;187m �[39m§17�[38;2;102;102;102m.12�[39m,�[38;2;187;187;187m �[39mzero�[38;2;187;187;187m �[39munchecked�[38;2;187;187;187m �[39mcheckboxes).�[38;2;187;187;187m �[39mFive�[38;2;187;187;187m �[39mtargeted�[38;2;187;187;187m �[39madditions,�[38;2;187;187;187m �[39mfolded�[38;2;187;187;187m �[39m�[38;2;170;34;255;01minto�[39;00m�[38;2;187;187;187m �[39mexisting�[38;2;187;187;187m �[39mprompts�[38;2;187;187;187m �[39m�[38;2;102;102;102m+�[39m�[38;2;187;187;187m �[39mself�[38;2;102;102;102m-�[39m�[38;2;170;34;255;01mcheck�[39;00m�[38;2;187;187;187m �[39m(�[38;2;170;34;255;01mno�[39;00m�[38;2;187;187;187m �[39m�[38;2;170;34;255;01mnew�[39;00m�[38;2;187;187;187m �[39mmanifest�[38;2;187;187;187m �[39mtasks),�[38;2;187;187;187m �[39mtech�[38;2;102;102;102m-�[39mneutral�[38;2;102;102;102m:�[39m
�[38;2;102;102;102m-�[39m�[38;2;187;187;187m �[39m�[38;2;102;102;102m�[39mDecision�[38;2;187;187;187m �[39mevidence�[38;2;187;187;187m �[39m�[38;2;102;102;102m/�[39m�[38;2;187;187;187m �[39mprovenance�[38;2;102;102;102m�[39m�[38;2;187;187;187m �[39m—�[38;2;187;187;187m �[39mhigh�[38;2;102;102;102m-�[39mimpact�[38;2;187;187;187m �[39m§3�[38;2;187;187;187m �[39mdecisions�[38;2;187;187;187m �[39mcarry�[38;2;187;187;187m �[39ma�[38;2;187;187;187m �[39mDecision�[38;2;187;187;187m �[39mEvidence�[38;2;187;187;187m �[39m�[38;2;170;34;255;01mvalue�[39;00m�[38;2;187;187;187m �[39m�[38;2;170;34;255;01mand�[39;00m�[38;2;187;187;187m �[39mare�[38;2;187;187;187m �[39m�[38;2;170;34;255;01mnever�[39;00m�[38;2;187;187;187m �[39mlabelled�[38;2;187;187;187m �[39muser-confirmed�[38;2;187;187;187m �[39m�[38;2;170;34;255;01mwithout�[39;00m�[38;2;187;187;187m �[39man�[38;2;187;187;187m �[39mexplicit�[38;2;187;187;187m �[39m�[38;2;170;34;255;01msource�[39;00m;�[38;2;187;187;187m �[39munclear�[38;2;187;187;187m �[39mprovenance�[38;2;187;187;187m �[39mdowngrades�[38;2;187;187;187m �[39m�[38;2;170;34;255;01mto�[39;00m�[38;2;187;187;187m �[39marchitecture_assumption�[38;2;187;187;187m �[39m�[38;2;102;102;102m+�[39m�[38;2;187;187;187m �[39mreview.
�[38;2;102;102;102m-�[39m�[38;2;187;187;187m �[39m�[38;2;102;102;102m�[39mRaw�[38;2;187;187;187m �[39m�[38;2;170;34;255;01msource�[39;00m�[38;2;187;187;187m �[39mcontent�[38;2;187;187;187m �[39mforbidden�[38;2;187;187;187m �[39m�[38;2;170;34;255;01min�[39;00m�[38;2;187;187;187m �[39m�[38;2;170;34;255;01mlogs�[39;00m�[38;2;187;187;187m �[39m�[38;2;170;34;255;01mby�[39;00m�[38;2;187;187;187m �[39m�[38;2;170;34;255;01mdefault�[39;00m�[38;2;102;102;102m�[39m�[38;2;187;187;187m �[39m�[38;2;170;34;255;01mfor�[39;00m�[38;2;187;187;187m �[39mexternal�[38;2;102;102;102m-�[39mmodel�[38;2;187;187;187m �[39msystems�[38;2;187;187;187m �[39m—�[38;2;187;187;187m �[39mredaction�[38;2;187;187;187m �[39m�[38;2;102;102;102m+�[39m�[38;2;187;187;187m �[39mlog�[38;2;102;102;102m-�[39m�[38;2;170;34;255;01msnapshot�[39;00m�[38;2;187;187;187m �[39m�[38;2;102;102;102m+�[39m�[38;2;187;187;187m �[39mprovider�[38;2;102;102;102m-�[39m�[38;2;170;34;255;01mwrapper�[39;00m�[38;2;187;187;187m �[39mtests�[38;2;187;187;187m �[39m�[38;2;170;34;255;01mas�[39;00m�[38;2;187;187;187m �[39ma�[38;2;187;187;187m �[39m�[38;2;170;34;255;01mrelease�[39;00m�[38;2;102;102;102m-�[39mblocking�[38;2;187;187;187m �[39m§17�[38;2;102;102;102m.12�[39m�[38;2;187;187;187m �[39mgate�[38;2;187;187;187m �[39m(operator�[38;2;187;187;187m �[39mconfig�[38;2;187;187;187m �[39malone�[38;2;187;187;187m �[39minsufficient).
�[38;2;102;102;102m-�[39m�[38;2;187;187;187m �[39m�[38;2;102;102;102m�[39mWarning�[38;2;187;187;187m �[39msurfacing�[38;2;102;102;102m�[39m�[38;2;187;187;187m �[39m—�[38;2;187;187;187m �[39m�[38;2;170;34;255;01mevery�[39;00m�[38;2;187;187;187m �[39m§24�[38;2;187;187;187m �[39mWARNING�[38;2;187;187;187m �[39m�[38;2;102;102;102m/�[39m�[38;2;187;187;187m �[39mPASS�[38;2;102;102;102m-�[39m�[38;2;170;34;255;01mwith�[39;00m�[38;2;102;102;102m-�[39mwarning�[38;2;187;187;187m �[39m�[38;2;170;34;255;01mrow�[39;00m�[38;2;187;187;187m �[39m�[38;2;170;34;255;01mis�[39;00m�[38;2;187;187;187m �[39mechoed�[38;2;187;187;187m �[39m�[38;2;170;34;255;01minto�[39;00m�[38;2;187;187;187m �[39m§1�[38;2;187;187;187m �[39m(�[38;2;170;34;255;01mnew�[39;00m�[38;2;187;187;187m �[39m§1�[38;2;102;102;102m.2�[39m)�[38;2;187;187;187m �[39m�[38;2;170;34;255;01mand�[39;00m�[38;2;187;187;187m �[39m§25�[38;2;187;187;187m �[39m�[38;2;170;34;255;01mwith�[39;00m�[38;2;187;187;187m �[39mits�[38;2;187;187;187m �[39mrequired�[38;2;187;187;187m �[39m�[38;2;170;34;255;01maction�[39;00m�[38;2;187;187;187m �[39m�[38;2;170;34;255;01mand�[39;00m�[38;2;187;187;187m �[39mblocking�[38;2;187;187;187m �[39m�[38;2;170;34;255;01mstatus�[39;00m.
�[38;2;102;102;102m-�[39m�[38;2;187;187;187m �[39m�[38;2;102;102;102m�[39mStricter�[38;2;187;187;187m �[39mstandard�[38;2;102;102;102m-�[39moutput�[38;2;187;187;187m �[39mbudget�[38;2;102;102;102m�[39m�[38;2;187;187;187m �[39m�[38;2;170;34;255;01mwith�[39;00m�[38;2;187;187;187m �[39mconcrete�[38;2;187;187;187m �[39mtargets.
�[38;2;102;102;102m-�[39m�[38;2;187;187;187m �[39m�[38;2;102;102;102m�[39mBuild�[38;2;102;102;102m-�[39msequencing�[38;2;187;187;187m �[39mcap�[38;2;102;102;102m�[39m�[38;2;187;187;187m �[39m—�[38;2;187;187;187m �[39m§25�[38;2;187;187;187m �[39m≤�[38;2;187;187;187m �[39m�[38;2;102;102;102m5�[39m�[38;2;187;187;187m �[39mhigh�[38;2;102;102;102m-�[39m�[38;2;170;34;255;01mlevel�[39;00m�[38;2;187;187;187m �[39mconstraints;�[38;2;187;187;187m �[39m�[38;2;170;34;255;01mno�[39;00m�[38;2;187;187;187m �[39m�[38;2;170;34;255;01mfile�[39;00m�[38;2;102;102;102m-�[39m�[38;2;170;34;255;01mby�[39;00m�[38;2;102;102;102m-�[39m�[38;2;170;34;255;01mfile�[39;00m�[38;2;102;102;102m/�[39mtickets�[38;2;102;102;102m/�[39mPR�[38;2;102;102;102m/�[39mmigration�[38;2;187;187;187m �[39mordering.
The�[38;2;187;187;187m �[39mreview�[38;2;187;68;68m'�[39m�[38;2;187;68;68ms lower-priority items were already shipped in v0.19.3/v0.19.4 and were not re-implemented. The worked example now models a realistic PASS-with-warning and surfaces it. See CHANGELOG.�[39m