santismm-knowledge-mcp 0.2.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.md +62 -0
- package/content/CONVENTIONS.md +77 -0
- package/content/LICENSE +55 -0
- package/content/architectures/ai-workforce.json +280 -0
- package/content/architectures/customer-service-agent.json +292 -0
- package/content/architectures/enterprise-knowledge-assistant.json +292 -0
- package/content/architectures/operations-center.json +280 -0
- package/content/architectures/sales-copilot.json +280 -0
- package/content/governance/agentic-ai-governance-checklist.json +323 -0
- package/content/governance/audit-framework-for-agentic-systems.json +280 -0
- package/content/governance/enterprise-ai-governance-framework.json +277 -0
- package/content/governance/eu-ai-act.json +162 -0
- package/content/governance/human-oversight-and-accountability-policy.json +275 -0
- package/content/governance/iso-42001.json +161 -0
- package/content/governance/mitre-atlas.json +280 -0
- package/content/governance/nist-ai-rmf.json +161 -0
- package/content/governance/owasp-llm-top10.json +301 -0
- package/content/harness/HRN-001-definition-and-overview.es.md +76 -0
- package/content/harness/HRN-001-definition-and-overview.md +125 -0
- package/content/harness/HRN-001-definition-and-overview.pt.md +76 -0
- package/content/harness/HRN-002-a-brief-history-of-harness-engineering.es.md +83 -0
- package/content/harness/HRN-002-a-brief-history-of-harness-engineering.md +113 -0
- package/content/harness/HRN-002-a-brief-history-of-harness-engineering.pt.md +83 -0
- package/content/harness/HRN-003-the-harness-taxonomy.es.md +105 -0
- package/content/harness/HRN-003-the-harness-taxonomy.md +158 -0
- package/content/harness/HRN-003-the-harness-taxonomy.pt.md +105 -0
- package/content/harness/HRN-004-harness-engineering-principles.es.md +91 -0
- package/content/harness/HRN-004-harness-engineering-principles.md +135 -0
- package/content/harness/HRN-004-harness-engineering-principles.pt.md +91 -0
- package/content/harness/HRN-005-memory-in-agentic-systems.es.md +98 -0
- package/content/harness/HRN-005-memory-in-agentic-systems.md +145 -0
- package/content/harness/HRN-005-memory-in-agentic-systems.pt.md +98 -0
- package/content/harness/HRN-006-observability-for-agentic-systems.es.md +97 -0
- package/content/harness/HRN-006-observability-for-agentic-systems.md +139 -0
- package/content/harness/HRN-006-observability-for-agentic-systems.pt.md +97 -0
- package/content/harness/HRN-007-evaluation-of-agentic-systems.es.md +96 -0
- package/content/harness/HRN-007-evaluation-of-agentic-systems.md +145 -0
- package/content/harness/HRN-007-evaluation-of-agentic-systems.pt.md +96 -0
- package/content/harness/HRN-008-governance-within-the-harness.es.md +105 -0
- package/content/harness/HRN-008-governance-within-the-harness.md +146 -0
- package/content/harness/HRN-008-governance-within-the-harness.pt.md +105 -0
- package/content/harness/HRN-009-planning-and-goal-management.es.md +102 -0
- package/content/harness/HRN-009-planning-and-goal-management.md +142 -0
- package/content/harness/HRN-009-planning-and-goal-management.pt.md +102 -0
- package/content/harness/HRN-010-orchestration.es.md +107 -0
- package/content/harness/HRN-010-orchestration.md +149 -0
- package/content/harness/HRN-010-orchestration.pt.md +107 -0
- package/content/harness/HRN-011-security-for-agentic-systems.es.md +107 -0
- package/content/harness/HRN-011-security-for-agentic-systems.md +147 -0
- package/content/harness/HRN-011-security-for-agentic-systems.pt.md +107 -0
- package/content/harness/HRN-012-case-studies-in-harness-engineering.es.md +120 -0
- package/content/harness/HRN-012-case-studies-in-harness-engineering.md +157 -0
- package/content/harness/HRN-012-case-studies-in-harness-engineering.pt.md +120 -0
- package/content/harness/HRN-013-glossary.es.md +109 -0
- package/content/harness/HRN-013-glossary.md +124 -0
- package/content/harness/HRN-013-glossary.pt.md +109 -0
- package/content/harness/HRN-014-bibliography.es.md +89 -0
- package/content/harness/HRN-014-bibliography.md +109 -0
- package/content/harness/HRN-014-bibliography.pt.md +89 -0
- package/content/homeric/episodes/achilles-and-hector.json +139 -0
- package/content/homeric/episodes/aeolus-and-the-winds.json +131 -0
- package/content/homeric/episodes/agamemnons-murder.json +162 -0
- package/content/homeric/episodes/calypso-ogygia.json +157 -0
- package/content/homeric/episodes/catalogue-of-ships.json +177 -0
- package/content/homeric/episodes/cattle-of-the-sun.json +131 -0
- package/content/homeric/episodes/chryse-and-the-plague.json +131 -0
- package/content/homeric/episodes/cicones-at-ismarus.json +131 -0
- package/content/homeric/episodes/circe-on-aeaea.json +131 -0
- package/content/homeric/episodes/cyclops-polyphemus.json +162 -0
- package/content/homeric/episodes/laestrygonians.json +153 -0
- package/content/homeric/episodes/lotus-eaters.json +138 -0
- package/content/homeric/episodes/menelaus-and-proteus.json +130 -0
- package/content/homeric/episodes/nekyia.json +160 -0
- package/content/homeric/episodes/phaeacians-on-scheria.json +129 -0
- package/content/homeric/episodes/priams-ransom.json +131 -0
- package/content/homeric/episodes/return-to-ithaca.json +167 -0
- package/content/homeric/episodes/scylla-and-charybdis.json +131 -0
- package/content/homeric/episodes/suitors-ambush-at-asteris.json +131 -0
- package/content/homeric/episodes/telemachus-at-pylos.json +130 -0
- package/content/homeric/episodes/telemachus-in-sparta.json +130 -0
- package/content/homeric/episodes/the-achaean-camp.json +138 -0
- package/content/homeric/episodes/the-sirens.json +129 -0
- package/content/homeric/episodes/wooden-horse.json +168 -0
- package/content/homeric/places/aeaea.json +129 -0
- package/content/homeric/places/aeolia.json +161 -0
- package/content/homeric/places/asteris.json +120 -0
- package/content/homeric/places/aulis.json +122 -0
- package/content/homeric/places/cape-malea.json +126 -0
- package/content/homeric/places/chryse.json +120 -0
- package/content/homeric/places/dodona.json +129 -0
- package/content/homeric/places/dulichium.json +177 -0
- package/content/homeric/places/egypt.json +125 -0
- package/content/homeric/places/ephyra-acheron.json +127 -0
- package/content/homeric/places/hellespont.json +125 -0
- package/content/homeric/places/house-of-hades.json +91 -0
- package/content/homeric/places/ismarus.json +120 -0
- package/content/homeric/places/ithaca.json +240 -0
- package/content/homeric/places/knossos.json +132 -0
- package/content/homeric/places/laestrygonia.json +168 -0
- package/content/homeric/places/land-of-the-cyclopes.json +169 -0
- package/content/homeric/places/land-of-the-lotus-eaters.json +122 -0
- package/content/homeric/places/mount-ida.json +126 -0
- package/content/homeric/places/mycenae.json +152 -0
- package/content/homeric/places/ogygia.json +125 -0
- package/content/homeric/places/pharos.json +120 -0
- package/content/homeric/places/planctae.json +77 -0
- package/content/homeric/places/pylos.json +188 -0
- package/content/homeric/places/same.json +177 -0
- package/content/homeric/places/scheria.json +129 -0
- package/content/homeric/places/scylla-and-charybdis.json +135 -0
- package/content/homeric/places/sirens.json +127 -0
- package/content/homeric/places/sparta.json +179 -0
- package/content/homeric/places/tenedos.json +129 -0
- package/content/homeric/places/thrinacia.json +116 -0
- package/content/homeric/places/tiryns.json +123 -0
- package/content/homeric/places/troy.json +224 -0
- package/content/homeric/places/zacynthus.json +126 -0
- package/content/homeric/routes/achaean-expedition.json +132 -0
- package/content/homeric/routes/nostoi-of-the-others.json +205 -0
- package/content/homeric/routes/odysseus-nostos.json +307 -0
- package/content/homeric/routes/telemachy.json +134 -0
- package/content/knowledge/agent-memory.json +153 -0
- package/content/knowledge/agentic-ai.json +158 -0
- package/content/knowledge/agentic-evaluation.json +156 -0
- package/content/knowledge/agentic-threat-model.json +287 -0
- package/content/knowledge/ai-agent.json +153 -0
- package/content/knowledge/ai-cyberdefense.json +274 -0
- package/content/knowledge/ai-governance.json +155 -0
- package/content/knowledge/ai-observability.json +156 -0
- package/content/knowledge/context-engineering.json +153 -0
- package/content/knowledge/embeddings.json +153 -0
- package/content/knowledge/enterprise-rag.json +154 -0
- package/content/knowledge/fine-tuning.json +153 -0
- package/content/knowledge/foundation-models.json +154 -0
- package/content/knowledge/guardrails.json +153 -0
- package/content/knowledge/harness-engineering.json +158 -0
- package/content/knowledge/human-in-the-loop.json +153 -0
- package/content/knowledge/mcp-security.json +284 -0
- package/content/knowledge/model-context-protocol.json +154 -0
- package/content/knowledge/multi-agent-architecture.json +153 -0
- package/content/knowledge/prompt-engineering.json +153 -0
- package/content/knowledge/prompt-injection.json +138 -0
- package/content/knowledge/reasoning-models.json +153 -0
- package/content/knowledge/tool-use.json +156 -0
- package/content/library/cognitive-architecture-emergent-ai.md +15 -0
- package/content/library/devready-ep108-ai-customer-experiences.md +14 -0
- package/content/library/how-genai-impact-business.md +12 -0
- package/content/library/lmm-reshaping-industries-2024.md +12 -0
- package/content/library/rethinking-ai-pause.md +12 -0
- package/content/library/rise-of-agentic-ai.md +16 -0
- package/content/library/self-improving-autonomous-ai.md +16 -0
- package/content/library/the-stopwatch-and-the-exam.md +12 -0
- package/content/library/unlock-gpt4-secrets.md +12 -0
- package/content/library/vibe-coding-enterprise.md +15 -0
- package/content/library/video-transformando-negocios-genai.md +14 -0
- package/content/library/video-volando-alto-sky-airlines.md +13 -0
- package/content/matrix/agentic-control-matrix.json +967 -0
- package/content/patterns/attributed-memory.json +237 -0
- package/content/patterns/context-compression.json +304 -0
- package/content/patterns/egress-allowlist.json +310 -0
- package/content/patterns/evaluator-optimizer.json +180 -0
- package/content/patterns/goal-decomposition.json +290 -0
- package/content/patterns/human-approval-gate.json +311 -0
- package/content/patterns/human-escalation.json +288 -0
- package/content/patterns/least-privilege-tooling.json +333 -0
- package/content/patterns/long-term-memory.json +305 -0
- package/content/patterns/orchestrator-workers.json +202 -0
- package/content/patterns/parallelization.json +180 -0
- package/content/patterns/prompt-chaining.json +181 -0
- package/content/patterns/recovery-strategy.json +305 -0
- package/content/patterns/reflection.json +298 -0
- package/content/patterns/routing.json +294 -0
- package/content/patterns/sandboxed-execution.json +311 -0
- package/content/patterns/semantic-caching.json +201 -0
- package/content/patterns/supervisor-agent.json +290 -0
- package/content/patterns/task-prioritization.json +307 -0
- package/dist/content.js +181 -0
- package/dist/index.js +27 -0
- package/dist/shape.js +649 -0
- package/dist/tools.js +652 -0
- package/package.json +47 -0
|
@@ -0,0 +1,290 @@
|
|
|
1
|
+
{
|
|
2
|
+
"slug": "goal-decomposition",
|
|
3
|
+
"category": "orchestration",
|
|
4
|
+
"updated": "2026-06-21",
|
|
5
|
+
"version": "1.0",
|
|
6
|
+
"featured": false,
|
|
7
|
+
"technologies": [
|
|
8
|
+
"Planner/executor frameworks",
|
|
9
|
+
"LangGraph",
|
|
10
|
+
"ReAct / Plan-and-Solve",
|
|
11
|
+
"Task graphs"
|
|
12
|
+
],
|
|
13
|
+
"related": [
|
|
14
|
+
"supervisor-agent",
|
|
15
|
+
"orchestrator-workers",
|
|
16
|
+
"task-prioritization"
|
|
17
|
+
],
|
|
18
|
+
"references": [
|
|
19
|
+
{
|
|
20
|
+
"title": "Yao et al. — ReAct (2022)",
|
|
21
|
+
"url": "https://arxiv.org/abs/2210.03629"
|
|
22
|
+
},
|
|
23
|
+
{
|
|
24
|
+
"title": "Wang et al. — Plan-and-Solve Prompting (2023)",
|
|
25
|
+
"url": "https://arxiv.org/abs/2305.04091"
|
|
26
|
+
}
|
|
27
|
+
],
|
|
28
|
+
"evidence": {
|
|
29
|
+
"evidenceLevel": "industry_observation",
|
|
30
|
+
"confidenceLevel": "high",
|
|
31
|
+
"sourceType": [
|
|
32
|
+
"industry_observation",
|
|
33
|
+
"paper"
|
|
34
|
+
]
|
|
35
|
+
},
|
|
36
|
+
"locales": {
|
|
37
|
+
"en": {
|
|
38
|
+
"name": "Goal Decomposition",
|
|
39
|
+
"summary": "Goal decomposition has an agent break a high-level goal into an ordered set of smaller, tractable sub-tasks — a plan — before acting, then execute and monitor that plan, re-planning when steps fail. The explicit plan becomes an inspectable artifact you can review, gate, and debug. Use it when a goal needs several dependent steps and reactive, step-at-a-time agents drift or stall; skip it for simple, single-shot tasks.",
|
|
40
|
+
"problem": "A single LLM call handed a broad, multi-step goal tends to improvise. Reactive agents that choose one action at a time can lose the thread on long horizons: they repeat work, skip prerequisites, or chase a dead end without realizing the overall objective is now unreachable. Because no plan exists as an artifact, you cannot review intended steps before they run, cannot tell whether a failure came from a bad strategy or a bad execution, and cannot easily resume after an interruption. The agent's reasoning is implicit, transient, and hard to audit.",
|
|
41
|
+
"context": "This pattern fits goals that decompose into multiple interdependent steps with a meaningful ordering — research-then-synthesize, migrate-then-verify, gather-then-reconcile-then-report. It assumes the model can produce a reasonable plan from the goal and available tools, and that steps are observable enough to detect failure. It is most valuable where steps are costly, side-effecting, or hard to undo, so reviewing the plan before execution pays off. It is a poor fit when the next action is obvious from the current state, or when the environment changes so fast that any upfront plan is stale before the second step.",
|
|
42
|
+
"solution": [
|
|
43
|
+
"Split the agent into a planning phase and an execution phase. The planner reads the goal, the available tools, and the current state, and emits an explicit, ordered plan: a list (or graph) of sub-tasks with their dependencies and expected outputs. Treating the plan as a first-class artifact is the core idea — it can be logged, shown to a human for approval, scored against policy, and diffed across runs. Encode dependencies explicitly so independent sub-tasks can run in parallel and dependent ones wait for their inputs, rather than forcing a brittle linear sequence the model invented.",
|
|
44
|
+
"An executor then runs the plan step by step, feeding each step's result forward and checking it against the step's expected output. When a step fails, returns something unusable, or invalidates a downstream assumption, hand control back to the planner to re-plan from the current state instead of blindly continuing — this closed loop is what separates robust decomposition from one-shot planning. Keep plans as shallow as the goal allows: prefer a few well-chosen steps over a deep tree, gate re-planning with a budget so the agent cannot loop forever, and let trivial goals bypass planning entirely."
|
|
45
|
+
],
|
|
46
|
+
"components": [
|
|
47
|
+
"Planner that emits an ordered, dependency-aware plan",
|
|
48
|
+
"Plan representation (task list or task graph) as an inspectable artifact",
|
|
49
|
+
"Executor that runs steps and forwards results",
|
|
50
|
+
"Per-step verification against expected outputs",
|
|
51
|
+
"Re-planning trigger and loop with a step/iteration budget",
|
|
52
|
+
"Optional human approval gate before execution"
|
|
53
|
+
],
|
|
54
|
+
"benefits": [
|
|
55
|
+
"Long-horizon goals stay coherent because intended steps are decided up front, not improvised one at a time.",
|
|
56
|
+
"The explicit plan is inspectable: it can be reviewed, approved, audited, and diffed before any side effect runs.",
|
|
57
|
+
"Failures are easier to localize — a bad plan is distinguishable from a bad step execution.",
|
|
58
|
+
"Independent sub-tasks expose parallelism and let work resume from the last completed step after an interruption."
|
|
59
|
+
],
|
|
60
|
+
"risks": [
|
|
61
|
+
"A flawed initial decomposition propagates: every downstream step inherits a wrong assumption or missing prerequisite.",
|
|
62
|
+
"Over-planning adds latency and cost on simple goals that a reactive agent would finish in one step.",
|
|
63
|
+
"Plans go stale in fast-changing environments, so executing a step still based on an outdated world state.",
|
|
64
|
+
"Unbounded re-planning loops where the agent repeatedly rewrites the plan without making real progress."
|
|
65
|
+
],
|
|
66
|
+
"whenNot": [
|
|
67
|
+
"The next action is obvious from the current state and a single reactive step solves the goal.",
|
|
68
|
+
"The environment changes faster than a plan stays valid, making any upfront sequence stale.",
|
|
69
|
+
"Steps are cheap, reversible, and independent, so the overhead of planning outweighs its benefit."
|
|
70
|
+
],
|
|
71
|
+
"examples": [
|
|
72
|
+
"A research assistant plans gather-sources, extract-claims, cross-check, then synthesize, running the source gathering in parallel before the dependent synthesis step.",
|
|
73
|
+
"A code-migration agent plans inventory-usages, transform-files, run-tests, then re-plans the transform step when the test step surfaces a missed edge case.",
|
|
74
|
+
"A data-reconciliation agent decomposes a 'close the books' goal into pull-ledgers, normalize, match-entries, and flag-exceptions, with matching gated behind successful normalization."
|
|
75
|
+
],
|
|
76
|
+
"kpis": [
|
|
77
|
+
{
|
|
78
|
+
"metric": "Goal completion rate",
|
|
79
|
+
"note": "Share of goals fully achieved end-to-end; good looks like decomposition beating a reactive baseline on the same multi-step tasks."
|
|
80
|
+
},
|
|
81
|
+
{
|
|
82
|
+
"metric": "Re-plan frequency",
|
|
83
|
+
"note": "How often a run triggers re-planning; a healthy band means the loop catches real failures without thrashing on every step."
|
|
84
|
+
},
|
|
85
|
+
{
|
|
86
|
+
"metric": "Steps per goal vs. minimum",
|
|
87
|
+
"note": "Plan length relative to a sensible minimum; watch for over-planning that inflates steps on simple goals."
|
|
88
|
+
},
|
|
89
|
+
{
|
|
90
|
+
"metric": "Plan-approval pass rate",
|
|
91
|
+
"note": "Fraction of plans accepted by reviewers or policy checks before execution; low rates signal systematically weak decomposition."
|
|
92
|
+
}
|
|
93
|
+
],
|
|
94
|
+
"failureModes": [
|
|
95
|
+
"Bad decomposition propagates: a wrong early assumption corrupts every dependent step downstream.",
|
|
96
|
+
"Re-planning loop: the agent rewrites the plan repeatedly without converging or making progress.",
|
|
97
|
+
"Stale plan execution: a step runs against a world state that changed since the plan was made.",
|
|
98
|
+
"Over-decomposition: a trivial goal is split into needless steps, adding latency, cost, and failure surface."
|
|
99
|
+
],
|
|
100
|
+
"lessons": [
|
|
101
|
+
"Make the plan a real artifact — log it, show it, diff it — so failures are debuggable rather than mysterious.",
|
|
102
|
+
"Always close the loop: detect step failure and re-plan from current state instead of continuing blindly.",
|
|
103
|
+
"Bound both plan depth and re-planning with explicit budgets to prevent shallow goals from spiraling.",
|
|
104
|
+
"Let trivial goals skip the planner; reserve decomposition for genuinely multi-step, dependent work."
|
|
105
|
+
],
|
|
106
|
+
"faqs": [
|
|
107
|
+
{
|
|
108
|
+
"q": "How is this different from a reactive ReAct-style agent?",
|
|
109
|
+
"a": "A reactive agent decides one action at a time from the current state, with no plan as an artifact. Goal decomposition commits to an ordered plan up front, making intended steps inspectable and dependency ordering explicit. In practice the two are often combined: plan first, then execute reactively within each step and re-plan when a step fails."
|
|
110
|
+
},
|
|
111
|
+
{
|
|
112
|
+
"q": "What happens when a step fails mid-plan?",
|
|
113
|
+
"a": "Hand control back to the planner to re-plan from the current state rather than continuing blindly. The closed re-planning loop is what makes decomposition robust. Bound it with a budget so a persistently failing step cannot trigger endless rewrites without progress."
|
|
114
|
+
},
|
|
115
|
+
{
|
|
116
|
+
"q": "When does planning hurt more than it helps?",
|
|
117
|
+
"a": "On simple, single-step goals where the next action is obvious, or in environments that change faster than a plan stays valid. There, upfront planning adds latency and a stale-plan risk. Detect trivial goals and let them bypass the planner, reserving decomposition for genuinely multi-step, dependent work."
|
|
118
|
+
}
|
|
119
|
+
]
|
|
120
|
+
},
|
|
121
|
+
"es": {
|
|
122
|
+
"name": "Descomposición de objetivos",
|
|
123
|
+
"summary": "La descomposición de objetivos hace que un agente divida una meta de alto nivel en un conjunto ordenado de subtareas más pequeñas y abordables — un plan — antes de actuar, para luego ejecutar y supervisar ese plan, replanificando cuando algún paso falla. El plan explícito se vuelve un artefacto inspeccionable que puedes revisar, controlar y depurar. Úsalo cuando una meta requiera varios pasos dependientes y los agentes reactivos paso a paso se desvían o se estancan; omítelo en tareas simples de un solo paso.",
|
|
124
|
+
"problem": "Una sola llamada a un LLM con una meta amplia y de múltiples pasos tiende a improvisar. Los agentes reactivos que eligen una acción a la vez pueden perder el hilo en horizontes largos: repiten trabajo, omiten prerrequisitos o persiguen un callejón sin salida sin advertir que el objetivo general ya es inalcanzable. Como no existe un plan como artefacto, no puedes revisar los pasos previstos antes de ejecutarlos, no distingues si un fallo vino de una mala estrategia o de una mala ejecución, y no puedes reanudar fácilmente tras una interrupción. El razonamiento del agente es implícito, transitorio y difícil de auditar.",
|
|
125
|
+
"context": "Este patrón encaja con metas que se descomponen en múltiples pasos interdependientes con un orden significativo — investigar-luego-sintetizar, migrar-luego-verificar, recopilar-conciliar-luego-reportar. Supone que el modelo puede producir un plan razonable a partir de la meta y las herramientas disponibles, y que los pasos son lo bastante observables para detectar fallos. Es más valioso cuando los pasos son costosos, con efectos secundarios o difíciles de deshacer, de modo que revisar el plan antes de ejecutarlo compensa. Encaja mal cuando la siguiente acción es obvia desde el estado actual, o cuando el entorno cambia tan rápido que cualquier plan inicial queda obsoleto antes del segundo paso.",
|
|
126
|
+
"solution": [
|
|
127
|
+
"Divide el agente en una fase de planificación y una de ejecución. El planificador lee la meta, las herramientas disponibles y el estado actual, y emite un plan explícito y ordenado: una lista (o grafo) de subtareas con sus dependencias y salidas esperadas. Tratar el plan como un artefacto de primera clase es la idea central — puede registrarse, mostrarse a una persona para su aprobación, evaluarse frente a una política y compararse entre ejecuciones. Codifica las dependencias de forma explícita para que las subtareas independientes corran en paralelo y las dependientes esperen sus entradas, en lugar de forzar una secuencia lineal frágil inventada por el modelo.",
|
|
128
|
+
"Un ejecutor recorre el plan paso a paso, propagando el resultado de cada paso y contrastándolo con su salida esperada. Cuando un paso falla, devuelve algo inutilizable o invalida una suposición posterior, devuelve el control al planificador para replanificar desde el estado actual en lugar de continuar a ciegas — este bucle cerrado es lo que separa la descomposición robusta de la planificación de un solo intento. Mantén los planes tan superficiales como la meta lo permita: prefiere unos pocos pasos bien elegidos antes que un árbol profundo, limita la replanificación con un presupuesto para que el agente no entre en bucle infinito, y deja que las metas triviales eviten por completo la planificación."
|
|
129
|
+
],
|
|
130
|
+
"components": [
|
|
131
|
+
"Planificador que emite un plan ordenado y consciente de dependencias",
|
|
132
|
+
"Representación del plan (lista o grafo de tareas) como artefacto inspeccionable",
|
|
133
|
+
"Ejecutor que corre los pasos y propaga resultados",
|
|
134
|
+
"Verificación por paso frente a las salidas esperadas",
|
|
135
|
+
"Disparador y bucle de replanificación con presupuesto de pasos/iteraciones",
|
|
136
|
+
"Compuerta opcional de aprobación humana antes de ejecutar"
|
|
137
|
+
],
|
|
138
|
+
"benefits": [
|
|
139
|
+
"Las metas de horizonte largo se mantienen coherentes porque los pasos previstos se deciden por adelantado, no se improvisan uno a uno.",
|
|
140
|
+
"El plan explícito es inspeccionable: puede revisarse, aprobarse, auditarse y compararse antes de cualquier efecto secundario.",
|
|
141
|
+
"Los fallos son más fáciles de localizar — un mal plan se distingue de una mala ejecución de un paso.",
|
|
142
|
+
"Las subtareas independientes exponen paralelismo y permiten reanudar el trabajo desde el último paso completado tras una interrupción."
|
|
143
|
+
],
|
|
144
|
+
"risks": [
|
|
145
|
+
"Una descomposición inicial defectuosa se propaga: cada paso posterior hereda una suposición errónea o un prerrequisito ausente.",
|
|
146
|
+
"Planificar de más añade latencia y coste en metas simples que un agente reactivo terminaría en un solo paso.",
|
|
147
|
+
"Los planes quedan obsoletos en entornos cambiantes, ejecutando un paso aún basado en un estado del mundo desactualizado.",
|
|
148
|
+
"Bucles de replanificación sin límite en los que el agente reescribe el plan una y otra vez sin avanzar de verdad."
|
|
149
|
+
],
|
|
150
|
+
"whenNot": [
|
|
151
|
+
"La siguiente acción es obvia desde el estado actual y un solo paso reactivo resuelve la meta.",
|
|
152
|
+
"El entorno cambia más rápido de lo que un plan se mantiene válido, dejando obsoleta cualquier secuencia inicial.",
|
|
153
|
+
"Los pasos son baratos, reversibles e independientes, de modo que la sobrecarga de planificar supera su beneficio."
|
|
154
|
+
],
|
|
155
|
+
"examples": [
|
|
156
|
+
"Un asistente de investigación planifica recopilar-fuentes, extraer-afirmaciones, contrastar y luego sintetizar, corriendo la recopilación de fuentes en paralelo antes del paso dependiente de síntesis.",
|
|
157
|
+
"Un agente de migración de código planifica inventariar-usos, transformar-archivos, ejecutar-pruebas, y luego replanifica el paso de transformación cuando las pruebas revelan un caso límite omitido.",
|
|
158
|
+
"Un agente de conciliación de datos descompone la meta de 'cerrar los libros' en extraer-libros-mayores, normalizar, emparejar-asientos y marcar-excepciones, con el emparejamiento condicionado a una normalización exitosa."
|
|
159
|
+
],
|
|
160
|
+
"kpis": [
|
|
161
|
+
{
|
|
162
|
+
"metric": "Tasa de cumplimiento de objetivos",
|
|
163
|
+
"note": "Proporción de metas logradas de extremo a extremo; lo bueno se ve como una descomposición que supera a una línea base reactiva en las mismas tareas de múltiples pasos."
|
|
164
|
+
},
|
|
165
|
+
{
|
|
166
|
+
"metric": "Frecuencia de replanificación",
|
|
167
|
+
"note": "Con qué frecuencia una ejecución dispara replanificación; una banda sana significa que el bucle captura fallos reales sin oscilar en cada paso."
|
|
168
|
+
},
|
|
169
|
+
{
|
|
170
|
+
"metric": "Pasos por meta frente al mínimo",
|
|
171
|
+
"note": "Longitud del plan respecto a un mínimo sensato; vigila la planificación excesiva que infla los pasos en metas simples."
|
|
172
|
+
},
|
|
173
|
+
{
|
|
174
|
+
"metric": "Tasa de aprobación de planes",
|
|
175
|
+
"note": "Fracción de planes aceptados por revisores o controles de política antes de ejecutar; tasas bajas indican una descomposición sistemáticamente débil."
|
|
176
|
+
}
|
|
177
|
+
],
|
|
178
|
+
"failureModes": [
|
|
179
|
+
"La mala descomposición se propaga: una suposición temprana errónea corrompe cada paso dependiente posterior.",
|
|
180
|
+
"Bucle de replanificación: el agente reescribe el plan repetidamente sin converger ni avanzar.",
|
|
181
|
+
"Ejecución de plan obsoleto: un paso corre contra un estado del mundo que cambió desde que se hizo el plan.",
|
|
182
|
+
"Sobredescomposición: una meta trivial se divide en pasos innecesarios, añadiendo latencia, coste y superficie de fallo."
|
|
183
|
+
],
|
|
184
|
+
"lessons": [
|
|
185
|
+
"Haz del plan un artefacto real — regístralo, muéstralo, compáralo — para que los fallos sean depurables y no misteriosos.",
|
|
186
|
+
"Cierra siempre el bucle: detecta el fallo de un paso y replanifica desde el estado actual en vez de continuar a ciegas.",
|
|
187
|
+
"Limita tanto la profundidad del plan como la replanificación con presupuestos explícitos para evitar que las metas superficiales se descontrolen.",
|
|
188
|
+
"Deja que las metas triviales salten el planificador; reserva la descomposición para trabajo realmente de múltiples pasos y dependiente."
|
|
189
|
+
],
|
|
190
|
+
"faqs": [
|
|
191
|
+
{
|
|
192
|
+
"q": "¿En qué se diferencia esto de un agente reactivo estilo ReAct?",
|
|
193
|
+
"a": "Un agente reactivo decide una acción a la vez desde el estado actual, sin un plan como artefacto. La descomposición de objetivos se compromete con un plan ordenado por adelantado, haciendo inspeccionables los pasos previstos y explícito el orden de dependencias. En la práctica suelen combinarse: planificar primero, luego ejecutar de forma reactiva dentro de cada paso y replanificar cuando un paso falla."
|
|
194
|
+
},
|
|
195
|
+
{
|
|
196
|
+
"q": "¿Qué ocurre cuando un paso falla a mitad del plan?",
|
|
197
|
+
"a": "Devuelve el control al planificador para replanificar desde el estado actual en lugar de continuar a ciegas. El bucle cerrado de replanificación es lo que hace robusta a la descomposición. Limítalo con un presupuesto para que un paso que falla de forma persistente no dispare reescrituras interminables sin avanzar."
|
|
198
|
+
},
|
|
199
|
+
{
|
|
200
|
+
"q": "¿Cuándo planificar perjudica más de lo que ayuda?",
|
|
201
|
+
"a": "En metas simples de un solo paso donde la siguiente acción es obvia, o en entornos que cambian más rápido de lo que un plan se mantiene válido. Ahí, planificar por adelantado añade latencia y riesgo de plan obsoleto. Detecta las metas triviales y deja que eviten el planificador, reservando la descomposición para trabajo realmente de múltiples pasos y dependiente."
|
|
202
|
+
}
|
|
203
|
+
]
|
|
204
|
+
},
|
|
205
|
+
"pt": {
|
|
206
|
+
"name": "Decomposição de objetivos",
|
|
207
|
+
"summary": "A decomposição de objetivos faz um agente dividir uma meta de alto nível em um conjunto ordenado de subtarefas menores e tratáveis — um plano — antes de agir, e então executar e monitorar esse plano, replanejando quando passos falham. O plano explícito vira um artefato inspecionável que você pode revisar, controlar e depurar. Use quando uma meta exigir vários passos dependentes e agentes reativos passo a passo se desviarem ou travarem; dispense em tarefas simples de um único passo.",
|
|
208
|
+
"problem": "Uma única chamada a um LLM com uma meta ampla e de múltiplos passos tende a improvisar. Agentes reativos que escolhem uma ação por vez podem perder o fio em horizontes longos: repetem trabalho, pulam pré-requisitos ou perseguem um beco sem saída sem perceber que o objetivo geral já é inalcançável. Como não existe um plano como artefato, você não consegue revisar os passos pretendidos antes de executá-los, não distingue se uma falha veio de uma estratégia ruim ou de uma execução ruim, e não consegue retomar facilmente após uma interrupção. O raciocínio do agente é implícito, transitório e difícil de auditar.",
|
|
209
|
+
"context": "Este padrão encaixa em metas que se decompõem em múltiplos passos interdependentes com uma ordenação significativa — pesquisar-depois-sintetizar, migrar-depois-verificar, coletar-conciliar-depois-reportar. Pressupõe que o modelo consegue produzir um plano razoável a partir da meta e das ferramentas disponíveis, e que os passos são observáveis o suficiente para detectar falhas. É mais valioso quando os passos são caros, com efeitos colaterais ou difíceis de desfazer, de modo que revisar o plano antes de executar compensa. Encaixa mal quando a próxima ação é óbvia a partir do estado atual, ou quando o ambiente muda tão rápido que qualquer plano inicial fica desatualizado antes do segundo passo.",
|
|
210
|
+
"solution": [
|
|
211
|
+
"Divida o agente em uma fase de planejamento e uma de execução. O planejador lê a meta, as ferramentas disponíveis e o estado atual, e emite um plano explícito e ordenado: uma lista (ou grafo) de subtarefas com suas dependências e saídas esperadas. Tratar o plano como um artefato de primeira classe é a ideia central — ele pode ser registrado, mostrado a uma pessoa para aprovação, avaliado contra uma política e comparado entre execuções. Codifique as dependências de forma explícita para que subtarefas independentes rodem em paralelo e as dependentes aguardem suas entradas, em vez de forçar uma sequência linear frágil inventada pelo modelo.",
|
|
212
|
+
"Um executor então percorre o plano passo a passo, propagando o resultado de cada passo e conferindo-o contra a saída esperada. Quando um passo falha, retorna algo inutilizável ou invalida uma suposição posterior, devolva o controle ao planejador para replanejar a partir do estado atual em vez de continuar às cegas — esse laço fechado é o que separa a decomposição robusta do planejamento de tentativa única. Mantenha os planos tão rasos quanto a meta permitir: prefira poucos passos bem escolhidos a uma árvore profunda, limite o replanejamento com um orçamento para que o agente não entre em laço infinito, e deixe que metas triviais ignorem completamente o planejamento."
|
|
213
|
+
],
|
|
214
|
+
"components": [
|
|
215
|
+
"Planejador que emite um plano ordenado e ciente de dependências",
|
|
216
|
+
"Representação do plano (lista ou grafo de tarefas) como artefato inspecionável",
|
|
217
|
+
"Executor que roda os passos e propaga resultados",
|
|
218
|
+
"Verificação por passo contra as saídas esperadas",
|
|
219
|
+
"Gatilho e laço de replanejamento com orçamento de passos/iterações",
|
|
220
|
+
"Portão opcional de aprovação humana antes da execução"
|
|
221
|
+
],
|
|
222
|
+
"benefits": [
|
|
223
|
+
"Metas de horizonte longo permanecem coerentes porque os passos pretendidos são decididos com antecedência, não improvisados um a um.",
|
|
224
|
+
"O plano explícito é inspecionável: pode ser revisado, aprovado, auditado e comparado antes de qualquer efeito colateral.",
|
|
225
|
+
"Falhas são mais fáceis de localizar — um plano ruim se distingue de uma execução de passo ruim.",
|
|
226
|
+
"Subtarefas independentes expõem paralelismo e permitem retomar o trabalho a partir do último passo concluído após uma interrupção."
|
|
227
|
+
],
|
|
228
|
+
"risks": [
|
|
229
|
+
"Uma decomposição inicial falha se propaga: cada passo posterior herda uma suposição errada ou um pré-requisito ausente.",
|
|
230
|
+
"Planejar demais adiciona latência e custo em metas simples que um agente reativo terminaria em um único passo.",
|
|
231
|
+
"Os planos ficam desatualizados em ambientes que mudam rápido, executando um passo ainda baseado em um estado de mundo defasado.",
|
|
232
|
+
"Laços de replanejamento sem limite em que o agente reescreve o plano repetidamente sem progredir de fato."
|
|
233
|
+
],
|
|
234
|
+
"whenNot": [
|
|
235
|
+
"A próxima ação é óbvia a partir do estado atual e um único passo reativo resolve a meta.",
|
|
236
|
+
"O ambiente muda mais rápido do que um plano se mantém válido, deixando qualquer sequência inicial desatualizada.",
|
|
237
|
+
"Os passos são baratos, reversíveis e independentes, de modo que o custo de planejar supera seu benefício."
|
|
238
|
+
],
|
|
239
|
+
"examples": [
|
|
240
|
+
"Um assistente de pesquisa planeja coletar-fontes, extrair-afirmações, conferir e então sintetizar, rodando a coleta de fontes em paralelo antes do passo dependente de síntese.",
|
|
241
|
+
"Um agente de migração de código planeja inventariar-usos, transformar-arquivos, rodar-testes, e então replaneja o passo de transformação quando os testes revelam um caso de borda omitido.",
|
|
242
|
+
"Um agente de conciliação de dados decompõe a meta de 'fechar os livros' em puxar-razões, normalizar, casar-lançamentos e sinalizar-exceções, com o casamento condicionado a uma normalização bem-sucedida."
|
|
243
|
+
],
|
|
244
|
+
"kpis": [
|
|
245
|
+
{
|
|
246
|
+
"metric": "Taxa de conclusão de objetivos",
|
|
247
|
+
"note": "Parcela de metas alcançadas de ponta a ponta; o bom se parece com uma decomposição superando uma linha de base reativa nas mesmas tarefas de múltiplos passos."
|
|
248
|
+
},
|
|
249
|
+
{
|
|
250
|
+
"metric": "Frequência de replanejamento",
|
|
251
|
+
"note": "Com que frequência uma execução dispara replanejamento; uma faixa saudável significa que o laço captura falhas reais sem oscilar a cada passo."
|
|
252
|
+
},
|
|
253
|
+
{
|
|
254
|
+
"metric": "Passos por meta frente ao mínimo",
|
|
255
|
+
"note": "Comprimento do plano em relação a um mínimo sensato; observe o planejamento excessivo que infla os passos em metas simples."
|
|
256
|
+
},
|
|
257
|
+
{
|
|
258
|
+
"metric": "Taxa de aprovação de planos",
|
|
259
|
+
"note": "Fração de planos aceitos por revisores ou verificações de política antes da execução; taxas baixas sinalizam decomposição sistematicamente fraca."
|
|
260
|
+
}
|
|
261
|
+
],
|
|
262
|
+
"failureModes": [
|
|
263
|
+
"Decomposição ruim se propaga: uma suposição inicial errada corrompe cada passo dependente posterior.",
|
|
264
|
+
"Laço de replanejamento: o agente reescreve o plano repetidamente sem convergir nem progredir.",
|
|
265
|
+
"Execução de plano desatualizado: um passo roda contra um estado de mundo que mudou desde que o plano foi feito.",
|
|
266
|
+
"Sobredecomposição: uma meta trivial é dividida em passos desnecessários, adicionando latência, custo e superfície de falha."
|
|
267
|
+
],
|
|
268
|
+
"lessons": [
|
|
269
|
+
"Faça do plano um artefato real — registre, mostre, compare — para que falhas sejam depuráveis e não misteriosas.",
|
|
270
|
+
"Feche sempre o laço: detecte a falha de um passo e replaneje a partir do estado atual em vez de continuar às cegas.",
|
|
271
|
+
"Limite tanto a profundidade do plano quanto o replanejamento com orçamentos explícitos para evitar que metas rasas saiam de controle.",
|
|
272
|
+
"Deixe metas triviais pularem o planejador; reserve a decomposição para trabalho realmente de múltiplos passos e dependente."
|
|
273
|
+
],
|
|
274
|
+
"faqs": [
|
|
275
|
+
{
|
|
276
|
+
"q": "Como isso difere de um agente reativo no estilo ReAct?",
|
|
277
|
+
"a": "Um agente reativo decide uma ação por vez a partir do estado atual, sem um plano como artefato. A decomposição de objetivos se compromete com um plano ordenado de antemão, tornando os passos pretendidos inspecionáveis e explícita a ordenação de dependências. Na prática os dois costumam ser combinados: planejar primeiro, depois executar de forma reativa dentro de cada passo e replanejar quando um passo falha."
|
|
278
|
+
},
|
|
279
|
+
{
|
|
280
|
+
"q": "O que acontece quando um passo falha no meio do plano?",
|
|
281
|
+
"a": "Devolva o controle ao planejador para replanejar a partir do estado atual em vez de continuar às cegas. O laço fechado de replanejamento é o que torna a decomposição robusta. Limite-o com um orçamento para que um passo que falha persistentemente não dispare reescritas intermináveis sem progresso."
|
|
282
|
+
},
|
|
283
|
+
{
|
|
284
|
+
"q": "Quando planejar atrapalha mais do que ajuda?",
|
|
285
|
+
"a": "Em metas simples de um único passo onde a próxima ação é óbvia, ou em ambientes que mudam mais rápido do que um plano se mantém válido. Ali, planejar com antecedência adiciona latência e risco de plano desatualizado. Detecte as metas triviais e deixe que pulem o planejador, reservando a decomposição para trabalho realmente de múltiplos passos e dependente."
|
|
286
|
+
}
|
|
287
|
+
]
|
|
288
|
+
}
|
|
289
|
+
}
|
|
290
|
+
}
|
|
@@ -0,0 +1,311 @@
|
|
|
1
|
+
{
|
|
2
|
+
"slug": "human-approval-gate",
|
|
3
|
+
"category": "safety",
|
|
4
|
+
"updated": "2026-06-21",
|
|
5
|
+
"version": "1.0",
|
|
6
|
+
"featured": true,
|
|
7
|
+
"technologies": [
|
|
8
|
+
"LangGraph (interrupts)",
|
|
9
|
+
"Workflow / approval systems",
|
|
10
|
+
"Audit logging"
|
|
11
|
+
],
|
|
12
|
+
"related": [
|
|
13
|
+
"reflection",
|
|
14
|
+
"evaluator-optimizer",
|
|
15
|
+
"prompt-chaining",
|
|
16
|
+
"least-privilege-tooling"
|
|
17
|
+
],
|
|
18
|
+
"references": [
|
|
19
|
+
{
|
|
20
|
+
"title": "European Union — AI Act, Article 14 (Human oversight)",
|
|
21
|
+
"url": "https://artificialintelligenceact.eu/article/14/"
|
|
22
|
+
},
|
|
23
|
+
{
|
|
24
|
+
"title": "NIST — AI Risk Management Framework (AI RMF 1.0)",
|
|
25
|
+
"url": "https://www.nist.gov/itl/ai-risk-management-framework"
|
|
26
|
+
}
|
|
27
|
+
],
|
|
28
|
+
"evidence": {
|
|
29
|
+
"evidenceLevel": "industry_observation",
|
|
30
|
+
"confidenceLevel": "high",
|
|
31
|
+
"sourceType": [
|
|
32
|
+
"industry_observation",
|
|
33
|
+
"paper"
|
|
34
|
+
]
|
|
35
|
+
},
|
|
36
|
+
"locales": {
|
|
37
|
+
"en": {
|
|
38
|
+
"name": "Human Approval Gate",
|
|
39
|
+
"summary": "A human approval gate pauses an automated workflow at a defined checkpoint so a person can review, edit or reject a proposed action before it executes — especially for high-impact, irreversible or regulated operations. It is the operational form of human-in-the-loop oversight.",
|
|
40
|
+
"definition": "A human approval gate is a control checkpoint inserted before a high-impact automated action, where a person reviews and approves, edits or rejects the proposed action before it executes.",
|
|
41
|
+
"problem": "Letting an AI system execute high-impact actions autonomously risks costly, irreversible or non-compliant mistakes with no chance for human judgment.",
|
|
42
|
+
"context": "Use an approval gate for actions whose cost of error outweighs the latency of review: payments, deletions, external communications, production changes, or anything regulated.",
|
|
43
|
+
"solution": [
|
|
44
|
+
"Insert a checkpoint before the sensitive action: the system prepares the proposed action with enough context, then suspends and routes it to a human who approves, edits or rejects. On approval it proceeds; on timeout it falls back safely. Every decision is logged for audit.",
|
|
45
|
+
"Gate only the high-impact steps, not everything — over-gating destroys the value of automation and causes approval fatigue. Choose checkpoints by risk."
|
|
46
|
+
],
|
|
47
|
+
"components": [
|
|
48
|
+
"Risk-based checkpoint",
|
|
49
|
+
"Proposed-action preview",
|
|
50
|
+
"Approve / edit / reject",
|
|
51
|
+
"Timeout & safe fallback",
|
|
52
|
+
"Audit log"
|
|
53
|
+
],
|
|
54
|
+
"benefits": [
|
|
55
|
+
"Prevents costly or irreversible mistakes.",
|
|
56
|
+
"Keeps accountability with a human.",
|
|
57
|
+
"Satisfies compliance and oversight requirements.",
|
|
58
|
+
"Builds trust, enabling gradual autonomy."
|
|
59
|
+
],
|
|
60
|
+
"risks": [
|
|
61
|
+
"Adds latency and limits throughput.",
|
|
62
|
+
"Rubber-stamping if reviewers lack context or time.",
|
|
63
|
+
"Approval fatigue from too many gates.",
|
|
64
|
+
"Bottlenecks if reviewers are unavailable."
|
|
65
|
+
],
|
|
66
|
+
"whenNot": [
|
|
67
|
+
"For low-impact, easily reversible actions.",
|
|
68
|
+
"When throughput must be high and risk is low.",
|
|
69
|
+
"When a deterministic guardrail can safely auto-approve."
|
|
70
|
+
],
|
|
71
|
+
"examples": [
|
|
72
|
+
"An agent drafting a refund a human approves before it is issued.",
|
|
73
|
+
"A production change that pauses for sign-off before deploying.",
|
|
74
|
+
"An outbound email queued for review before sending."
|
|
75
|
+
],
|
|
76
|
+
"productionEvidence": {
|
|
77
|
+
"context": "Enterprise workflows where an agent can trigger irreversible or regulated actions — refunds, account changes, outbound communications, production deployments.",
|
|
78
|
+
"scenario": "The agent prepares the action with full context and pauses; a reviewer approves, edits or rejects it; on approval it executes, on timeout it falls back safely. Every decision is logged.",
|
|
79
|
+
"technology": "A workflow engine with interrupts (e.g. LangGraph), an approval queue/UI, and an audit log.",
|
|
80
|
+
"load": "Only a minority of high-impact steps are gated; the bulk of low-impact steps run automatically, so reviewer volume stays bounded.",
|
|
81
|
+
"results": "Observed pattern: irreversible errors are caught before execution and accountability stays with a human, at the cost of added latency on gated steps. Gate by risk and measure approval latency and rubber-stamp rate on your own workflow — these are reference observations, not guaranteed numbers."
|
|
82
|
+
},
|
|
83
|
+
"kpis": [
|
|
84
|
+
{
|
|
85
|
+
"metric": "Approval latency",
|
|
86
|
+
"note": "Time an action waits at the gate; the core cost of the pattern and the first thing to watch for bottlenecks."
|
|
87
|
+
},
|
|
88
|
+
{
|
|
89
|
+
"metric": "Rejection / edit rate",
|
|
90
|
+
"note": "Share of proposals a human rejects or edits — near-zero often means rubber-stamping, very high means the agent isn't trusted yet."
|
|
91
|
+
},
|
|
92
|
+
{
|
|
93
|
+
"metric": "Throughput vs. gated steps",
|
|
94
|
+
"note": "Tasks completed per hour against how many steps are gated; over-gating collapses throughput."
|
|
95
|
+
},
|
|
96
|
+
{
|
|
97
|
+
"metric": "Timeout / fallback rate",
|
|
98
|
+
"note": "How often actions hit the timeout and take the safe fallback; a rising rate signals reviewer overload."
|
|
99
|
+
}
|
|
100
|
+
],
|
|
101
|
+
"failureModes": [
|
|
102
|
+
"Rubber-stamping: reviewers approve without real scrutiny when they lack context or time, defeating the gate.",
|
|
103
|
+
"Approval fatigue and bottlenecks from over-gating low-impact steps.",
|
|
104
|
+
"Silent auto-execution on timeout when no safe fallback is defined.",
|
|
105
|
+
"Insufficient context in the proposal, so the human can't make an informed decision."
|
|
106
|
+
],
|
|
107
|
+
"lessons": [
|
|
108
|
+
"Gate by risk, not by default — automate low-impact steps and reserve gates for irreversible or regulated actions.",
|
|
109
|
+
"Give reviewers enough context and a clear approve/edit/reject choice to prevent rubber-stamping.",
|
|
110
|
+
"Always define a safe fallback on timeout; never silently execute a gated action.",
|
|
111
|
+
"Log every decision for audit — the gate is also your compliance evidence."
|
|
112
|
+
],
|
|
113
|
+
"faqs": [
|
|
114
|
+
{
|
|
115
|
+
"q": "How is this different from human-in-the-loop?",
|
|
116
|
+
"a": "It is the concrete implementation of the human-in-the-loop principle: a specific approval checkpoint in a workflow before a sensitive action."
|
|
117
|
+
},
|
|
118
|
+
{
|
|
119
|
+
"q": "Won't approvals slow everything down?",
|
|
120
|
+
"a": "Only if you over-gate. Apply gates by risk — automate low-impact steps and reserve approval for high-impact, irreversible or regulated actions."
|
|
121
|
+
},
|
|
122
|
+
{
|
|
123
|
+
"q": "What happens on timeout?",
|
|
124
|
+
"a": "Define a safe fallback: hold the action, escalate, or cancel. Never silently auto-execute a gated action just because no one responded."
|
|
125
|
+
}
|
|
126
|
+
]
|
|
127
|
+
},
|
|
128
|
+
"es": {
|
|
129
|
+
"name": "Puerta de Aprobación Humana (Human Approval Gate)",
|
|
130
|
+
"summary": "Una puerta de aprobación humana pausa un flujo automatizado en un punto de control definido para que una persona revise, edite o rechace una acción propuesta antes de ejecutarse, sobre todo en operaciones de alto impacto, irreversibles o reguladas. Es la forma operativa de la supervisión humana en el bucle.",
|
|
131
|
+
"definition": "Una puerta de aprobación humana es un punto de control que se inserta antes de una acción automatizada de alto impacto, donde una persona revisa y aprueba, edita o rechaza la acción propuesta antes de que se ejecute.",
|
|
132
|
+
"problem": "Dejar que un sistema de IA ejecute acciones de alto impacto de forma autónoma arriesga errores costosos, irreversibles o no conformes sin posibilidad de juicio humano.",
|
|
133
|
+
"context": "Usa una puerta de aprobación para acciones cuyo coste de error supera la latencia de la revisión: pagos, borrados, comunicaciones externas, cambios en producción o cualquier cosa regulada.",
|
|
134
|
+
"solution": [
|
|
135
|
+
"Inserta un punto de control antes de la acción sensible: el sistema prepara la acción propuesta con suficiente contexto, luego se suspende y la enruta a un humano que aprueba, edita o rechaza. Con la aprobación, procede; ante un timeout, recurre a un respaldo seguro. Cada decisión se registra para auditoría.",
|
|
136
|
+
"Pon puertas solo en los pasos de alto impacto, no en todo: el exceso de puertas destruye el valor de la automatización y causa fatiga de aprobación. Elige los puntos de control por riesgo."
|
|
137
|
+
],
|
|
138
|
+
"components": [
|
|
139
|
+
"Punto de control basado en riesgo",
|
|
140
|
+
"Vista previa de la acción propuesta",
|
|
141
|
+
"Aprobar / editar / rechazar",
|
|
142
|
+
"Timeout y respaldo seguro",
|
|
143
|
+
"Registro de auditoría"
|
|
144
|
+
],
|
|
145
|
+
"benefits": [
|
|
146
|
+
"Previene errores costosos o irreversibles.",
|
|
147
|
+
"Mantiene la responsabilidad en un humano.",
|
|
148
|
+
"Satisface requisitos de cumplimiento y supervisión.",
|
|
149
|
+
"Genera confianza, habilitando una autonomía gradual."
|
|
150
|
+
],
|
|
151
|
+
"risks": [
|
|
152
|
+
"Añade latencia y limita el rendimiento.",
|
|
153
|
+
"Aprobación automática si los revisores carecen de contexto o tiempo.",
|
|
154
|
+
"Fatiga de aprobación por demasiadas puertas.",
|
|
155
|
+
"Cuellos de botella si los revisores no están disponibles."
|
|
156
|
+
],
|
|
157
|
+
"whenNot": [
|
|
158
|
+
"Para acciones de bajo impacto y fácilmente reversibles.",
|
|
159
|
+
"Cuando el rendimiento debe ser alto y el riesgo es bajo.",
|
|
160
|
+
"Cuando un guardarraíl determinista puede autoaprobar con seguridad."
|
|
161
|
+
],
|
|
162
|
+
"examples": [
|
|
163
|
+
"Un agente que redacta un reembolso que un humano aprueba antes de emitirse.",
|
|
164
|
+
"Un cambio en producción que se pausa para una firma antes de desplegar.",
|
|
165
|
+
"Un correo saliente en cola para revisión antes de enviarse."
|
|
166
|
+
],
|
|
167
|
+
"productionEvidence": {
|
|
168
|
+
"context": "Flujos empresariales donde un agente puede desencadenar acciones irreversibles o reguladas: reembolsos, cambios de cuenta, comunicaciones externas, despliegues en producción.",
|
|
169
|
+
"scenario": "El agente prepara la acción con todo el contexto y se pausa; un revisor la aprueba, edita o rechaza; con la aprobación se ejecuta, ante un timeout recurre a un respaldo seguro. Cada decisión se registra.",
|
|
170
|
+
"technology": "Un motor de flujos con interrupciones (p. ej. LangGraph), una cola/UI de aprobación y un registro de auditoría.",
|
|
171
|
+
"load": "Solo se ponen puertas a una minoría de pasos de alto impacto; la mayoría de pasos de bajo impacto se ejecutan automáticamente, así que el volumen para los revisores se mantiene acotado.",
|
|
172
|
+
"results": "Patrón observado: los errores irreversibles se detectan antes de ejecutarse y la responsabilidad queda en un humano, a costa de más latencia en los pasos con puerta. Pon puertas por riesgo y mide la latencia de aprobación y la tasa de aprobación automática en tu propio flujo: son observaciones de referencia, no cifras garantizadas."
|
|
173
|
+
},
|
|
174
|
+
"kpis": [
|
|
175
|
+
{
|
|
176
|
+
"metric": "Latencia de aprobación",
|
|
177
|
+
"note": "Tiempo que una acción espera en la puerta; el coste central del patrón y lo primero a vigilar por cuellos de botella."
|
|
178
|
+
},
|
|
179
|
+
{
|
|
180
|
+
"metric": "Tasa de rechazo / edición",
|
|
181
|
+
"note": "Proporción de propuestas que un humano rechaza o edita; casi cero suele indicar aprobación automática, muy alta, falta de confianza en el agente."
|
|
182
|
+
},
|
|
183
|
+
{
|
|
184
|
+
"metric": "Rendimiento vs. pasos con puerta",
|
|
185
|
+
"note": "Tareas completadas por hora frente a cuántos pasos tienen puerta; el exceso de puertas hunde el rendimiento."
|
|
186
|
+
},
|
|
187
|
+
{
|
|
188
|
+
"metric": "Tasa de timeout / respaldo",
|
|
189
|
+
"note": "Con qué frecuencia las acciones llegan al timeout y toman el respaldo seguro; si sube, los revisores están saturados."
|
|
190
|
+
}
|
|
191
|
+
],
|
|
192
|
+
"failureModes": [
|
|
193
|
+
"Aprobación automática: los revisores aprueban sin escrutinio real cuando faltan contexto o tiempo, anulando la puerta.",
|
|
194
|
+
"Fatiga de aprobación y cuellos de botella por poner puertas en pasos de bajo impacto.",
|
|
195
|
+
"Autoejecución silenciosa en el timeout cuando no se define un respaldo seguro.",
|
|
196
|
+
"Contexto insuficiente en la propuesta, de modo que el humano no puede decidir con criterio."
|
|
197
|
+
],
|
|
198
|
+
"lessons": [
|
|
199
|
+
"Pon puertas por riesgo, no por defecto: automatiza lo de bajo impacto y reserva las puertas para acciones irreversibles o reguladas.",
|
|
200
|
+
"Da a los revisores contexto suficiente y una elección clara aprobar/editar/rechazar para evitar la aprobación automática.",
|
|
201
|
+
"Define siempre un respaldo seguro en el timeout; nunca ejecutes en silencio una acción con puerta.",
|
|
202
|
+
"Registra cada decisión para auditoría: la puerta es también tu evidencia de cumplimiento."
|
|
203
|
+
],
|
|
204
|
+
"faqs": [
|
|
205
|
+
{
|
|
206
|
+
"q": "¿En qué se diferencia del human-in-the-loop?",
|
|
207
|
+
"a": "Es la implementación concreta del principio human-in-the-loop: un punto de aprobación específico en un flujo antes de una acción sensible."
|
|
208
|
+
},
|
|
209
|
+
{
|
|
210
|
+
"q": "¿Las aprobaciones no lo ralentizan todo?",
|
|
211
|
+
"a": "Solo si pones demasiadas puertas. Aplica puertas por riesgo: automatiza los pasos de bajo impacto y reserva la aprobación para acciones de alto impacto, irreversibles o reguladas."
|
|
212
|
+
},
|
|
213
|
+
{
|
|
214
|
+
"q": "¿Qué pasa en un timeout?",
|
|
215
|
+
"a": "Define un respaldo seguro: retener la acción, escalar o cancelar. Nunca autoejecutes en silencio una acción con puerta solo porque nadie respondió."
|
|
216
|
+
}
|
|
217
|
+
]
|
|
218
|
+
},
|
|
219
|
+
"pt": {
|
|
220
|
+
"name": "Portão de Aprovação Humana (Human Approval Gate)",
|
|
221
|
+
"summary": "Um portão de aprovação humana pausa um fluxo automatizado num ponto de controle definido para que uma pessoa revise, edite ou rejeite uma ação proposta antes de executar, sobretudo em operações de alto impacto, irreversíveis ou reguladas. É a forma operacional da supervisão humana no laço.",
|
|
222
|
+
"definition": "Um portão de aprovação humana é um ponto de controle inserido antes de uma ação automatizada de alto impacto, onde uma pessoa revisa e aprova, edita ou rejeita a ação proposta antes que ela seja executada.",
|
|
223
|
+
"problem": "Deixar um sistema de IA executar ações de alto impacto de forma autônoma arrisca erros custosos, irreversíveis ou não conformes sem possibilidade de julgamento humano.",
|
|
224
|
+
"context": "Use um portão de aprovação para ações cujo custo de erro supera a latência da revisão: pagamentos, exclusões, comunicações externas, mudanças em produção ou qualquer coisa regulada.",
|
|
225
|
+
"solution": [
|
|
226
|
+
"Insira um ponto de controle antes da ação sensível: o sistema prepara a ação proposta com contexto suficiente, depois se suspende e a roteia a um humano que aprova, edita ou rejeita. Com a aprovação, prossegue; em um timeout, recorre a um fallback seguro. Cada decisão é registrada para auditoria.",
|
|
227
|
+
"Coloque portões só nos passos de alto impacto, não em tudo: o excesso de portões destrói o valor da automação e causa fadiga de aprovação. Escolha os pontos de controle por risco."
|
|
228
|
+
],
|
|
229
|
+
"components": [
|
|
230
|
+
"Ponto de controle baseado em risco",
|
|
231
|
+
"Pré-visualização da ação proposta",
|
|
232
|
+
"Aprovar / editar / rejeitar",
|
|
233
|
+
"Timeout e fallback seguro",
|
|
234
|
+
"Registro de auditoria"
|
|
235
|
+
],
|
|
236
|
+
"benefits": [
|
|
237
|
+
"Previne erros custosos ou irreversíveis.",
|
|
238
|
+
"Mantém a responsabilidade com um humano.",
|
|
239
|
+
"Satisfaz requisitos de conformidade e supervisão.",
|
|
240
|
+
"Gera confiança, habilitando uma autonomia gradual."
|
|
241
|
+
],
|
|
242
|
+
"risks": [
|
|
243
|
+
"Adiciona latência e limita a vazão.",
|
|
244
|
+
"Aprovação automática se os revisores carecem de contexto ou tempo.",
|
|
245
|
+
"Fadiga de aprovação por portões demais.",
|
|
246
|
+
"Gargalos se os revisores não estiverem disponíveis."
|
|
247
|
+
],
|
|
248
|
+
"whenNot": [
|
|
249
|
+
"Para ações de baixo impacto e facilmente reversíveis.",
|
|
250
|
+
"Quando a vazão deve ser alta e o risco é baixo.",
|
|
251
|
+
"Quando um guard-rail determinístico pode autoaprovar com segurança."
|
|
252
|
+
],
|
|
253
|
+
"examples": [
|
|
254
|
+
"Um agente que redige um reembolso que um humano aprova antes de ser emitido.",
|
|
255
|
+
"Uma mudança em produção que pausa para uma assinatura antes de implantar.",
|
|
256
|
+
"Um e-mail de saída em fila para revisão antes de enviar."
|
|
257
|
+
],
|
|
258
|
+
"productionEvidence": {
|
|
259
|
+
"context": "Fluxos empresariais onde um agente pode desencadear ações irreversíveis ou reguladas: reembolsos, mudanças de conta, comunicações externas, implantações em produção.",
|
|
260
|
+
"scenario": "O agente prepara a ação com todo o contexto e pausa; um revisor a aprova, edita ou rejeita; com a aprovação ela executa, em um timeout recorre a um fallback seguro. Cada decisão é registrada.",
|
|
261
|
+
"technology": "Um motor de fluxos com interrupções (ex.: LangGraph), uma fila/UI de aprovação e um registro de auditoria.",
|
|
262
|
+
"load": "Apenas uma minoria de passos de alto impacto tem portão; a maioria dos passos de baixo impacto roda automaticamente, então o volume para os revisores fica limitado.",
|
|
263
|
+
"results": "Padrão observado: erros irreversíveis são detectados antes de executar e a responsabilidade fica com um humano, ao custo de mais latência nos passos com portão. Coloque portões por risco e meça a latência de aprovação e a taxa de aprovação automática no seu próprio fluxo — são observações de referência, não números garantidos."
|
|
264
|
+
},
|
|
265
|
+
"kpis": [
|
|
266
|
+
{
|
|
267
|
+
"metric": "Latência de aprovação",
|
|
268
|
+
"note": "Tempo que uma ação espera no portão; o custo central do padrão e o primeiro a vigiar por gargalos."
|
|
269
|
+
},
|
|
270
|
+
{
|
|
271
|
+
"metric": "Taxa de rejeição / edição",
|
|
272
|
+
"note": "Proporção de propostas que um humano rejeita ou edita; quase zero costuma indicar aprovação automática, muito alta, falta de confiança no agente."
|
|
273
|
+
},
|
|
274
|
+
{
|
|
275
|
+
"metric": "Vazão vs. passos com portão",
|
|
276
|
+
"note": "Tarefas concluídas por hora frente a quantos passos têm portão; o excesso de portões afunda a vazão."
|
|
277
|
+
},
|
|
278
|
+
{
|
|
279
|
+
"metric": "Taxa de timeout / fallback",
|
|
280
|
+
"note": "Com que frequência as ações atingem o timeout e tomam o fallback seguro; se sobe, os revisores estão sobrecarregados."
|
|
281
|
+
}
|
|
282
|
+
],
|
|
283
|
+
"failureModes": [
|
|
284
|
+
"Aprovação automática: os revisores aprovam sem escrutínio real quando faltam contexto ou tempo, anulando o portão.",
|
|
285
|
+
"Fadiga de aprovação e gargalos por colocar portões em passos de baixo impacto.",
|
|
286
|
+
"Autoexecução silenciosa no timeout quando não se define um fallback seguro.",
|
|
287
|
+
"Contexto insuficiente na proposta, de modo que o humano não consegue decidir com critério."
|
|
288
|
+
],
|
|
289
|
+
"lessons": [
|
|
290
|
+
"Coloque portões por risco, não por padrão: automatize o de baixo impacto e reserve os portões para ações irreversíveis ou reguladas.",
|
|
291
|
+
"Dê aos revisores contexto suficiente e uma escolha clara aprovar/editar/rejeitar para evitar a aprovação automática.",
|
|
292
|
+
"Defina sempre um fallback seguro no timeout; nunca execute em silêncio uma ação com portão.",
|
|
293
|
+
"Registre cada decisão para auditoria: o portão é também sua evidência de conformidade."
|
|
294
|
+
],
|
|
295
|
+
"faqs": [
|
|
296
|
+
{
|
|
297
|
+
"q": "Como difere do human-in-the-loop?",
|
|
298
|
+
"a": "É a implementação concreta do princípio human-in-the-loop: um ponto de aprovação específico num fluxo antes de uma ação sensível."
|
|
299
|
+
},
|
|
300
|
+
{
|
|
301
|
+
"q": "As aprovações não atrasam tudo?",
|
|
302
|
+
"a": "Só se você colocar portões demais. Aplique portões por risco: automatize os passos de baixo impacto e reserve a aprovação para ações de alto impacto, irreversíveis ou reguladas."
|
|
303
|
+
},
|
|
304
|
+
{
|
|
305
|
+
"q": "O que acontece num timeout?",
|
|
306
|
+
"a": "Defina um fallback seguro: reter a ação, escalar ou cancelar. Nunca autoexecute em silêncio uma ação com portão só porque ninguém respondeu."
|
|
307
|
+
}
|
|
308
|
+
]
|
|
309
|
+
}
|
|
310
|
+
}
|
|
311
|
+
}
|