From 36ccc9a3c936c785af9d943609eec58b161f872d Mon Sep 17 00:00:00 2001 From: Alberto Arroyo Raygada Date: Wed, 8 Jul 2026 15:38:56 -0500 Subject: [PATCH] =?UTF-8?q?feat(gates):=20T-036=20phase=202=20=E2=80=94=20?= =?UTF-8?q?intake=20hides=20evidence;=20phase-gate=20criteria=20guarded=20?= =?UTF-8?q?on=20Core=20artifacts?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Per T-036 §2.2: at the intake gate the required-evidence section is hidden (opportunities carry no deliverable restrictions; intake is the promotion gate — its parametrization is the criteria/rules on the opportunity). At phase gates, 'Add criterion' is replaced by an informational message when Core defines no artifacts for the phase ('no Core artifacts ⇒ no criteria', the Rule of gold), while intake keeps its opportunity criteria always available. Verified live: the intake editor shows only Gate mode / Approval policy / Evaluation criteria / Requires-Core-verdict — no evidence section. Frontend lint 0 / typecheck / build green. (ADR T-036 plan §6.2) Co-Authored-By: Claude Opus 4.8 --- .../src/components/gate/GatePolicyEditor.tsx | 22 +++++++++++++++---- 1 file changed, 18 insertions(+), 4 deletions(-) diff --git a/src/apps/tracker-web/src/components/gate/GatePolicyEditor.tsx b/src/apps/tracker-web/src/components/gate/GatePolicyEditor.tsx index eb1ab57..80e530e 100644 --- a/src/apps/tracker-web/src/components/gate/GatePolicyEditor.tsx +++ b/src/apps/tracker-web/src/components/gate/GatePolicyEditor.tsx @@ -248,7 +248,9 @@ const EditPolicyBody: React.FC<{ - {/* Required evidence editor */} + {/* Required evidence editor — hidden at intake: opportunities have no + deliverable/evidence restrictions; intake is a promotion gate (T-036 §2.2). */} + {phase !== 'intake' && (
)} + )} {/* Approval policy */}
@@ -550,9 +553,20 @@ const EditPolicyBody: React.FC<{
))} - + {phase !== 'intake' && phaseArtifacts.length === 0 ? ( +

+ {profiles.isLoading + ? t('Loading Core artifacts…', 'Cargando artefactos del Core…') + : t( + 'Evolith Core defines no artifacts for this phase — no gate criteria can be added here (ADR T-036).', + 'Evolith Core no define artefactos para esta fase — no se pueden agregar criterios de gate aquí (ADR T-036).', + )} +

+ ) : ( + + )} {/* Core verdict toggle */}