oxe-cc 1.6.0 → 1.7.0
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/CHANGELOG.md +18 -0
- package/README.md +5 -3
- package/bin/lib/oxe-agent-install.cjs +125 -24
- package/bin/lib/oxe-release.cjs +1 -0
- package/bin/oxe-cc.js +87 -39
- package/commands/oxe/debug.md +6 -1
- package/commands/oxe/discuss.md +7 -2
- package/commands/oxe/execute.md +7 -2
- package/commands/oxe/plan-agent.md +7 -2
- package/commands/oxe/plan.md +7 -2
- package/commands/oxe/scan.md +6 -1
- package/commands/oxe/spec.md +6 -1
- package/commands/oxe/verify.md +6 -1
- package/docs/CONTENT-MIGRATION-AUDIT.md +49 -0
- package/docs/RUNTIME-SMOKE-MATRIX.md +1 -1
- package/lib/runtime/compiler/graph-compiler.js +32 -0
- package/lib/runtime/context/context-pack-builder.d.ts +15 -0
- package/lib/runtime/context/context-pack-builder.js +78 -0
- package/lib/runtime/events/catalog.d.ts +1 -1
- package/lib/runtime/events/catalog.js +5 -0
- package/lib/runtime/executor/action-tool-map.d.ts +3 -0
- package/lib/runtime/executor/action-tool-map.js +41 -0
- package/lib/runtime/executor/built-in-tools.d.ts +8 -0
- package/lib/runtime/executor/built-in-tools.js +267 -0
- package/lib/runtime/executor/index.d.ts +6 -0
- package/lib/runtime/executor/index.js +12 -0
- package/lib/runtime/executor/llm-task-executor.d.ts +29 -0
- package/lib/runtime/executor/llm-task-executor.js +138 -0
- package/lib/runtime/executor/node-prompt-builder.d.ts +3 -0
- package/lib/runtime/executor/node-prompt-builder.js +36 -0
- package/lib/runtime/executor/stream-completion.d.ts +38 -0
- package/lib/runtime/executor/stream-completion.js +105 -0
- package/lib/runtime/index.d.ts +1 -0
- package/lib/runtime/index.js +2 -0
- package/lib/runtime/models/failure.d.ts +5 -0
- package/lib/runtime/models/failure.js +2 -0
- package/lib/runtime/plugins/capability-adapter.d.ts +9 -0
- package/lib/runtime/plugins/capability-adapter.js +111 -8
- package/lib/runtime/plugins/plugin-abi.d.ts +8 -0
- package/lib/runtime/plugins/plugin-registry.d.ts +2 -1
- package/lib/runtime/plugins/plugin-registry.js +6 -1
- package/lib/runtime/reducers/run-state-reducer.js +39 -2
- package/lib/runtime/scheduler/scheduler.d.ts +14 -2
- package/lib/runtime/scheduler/scheduler.js +131 -11
- package/lib/runtime/verification/verification-manifest.d.ts +5 -2
- package/oxe/agents/oxe-assumptions-analyzer.md +136 -0
- package/oxe/agents/oxe-codebase-mapper.md +142 -0
- package/oxe/agents/oxe-debugger.md +145 -0
- package/oxe/agents/oxe-executor.md +139 -0
- package/oxe/agents/oxe-integration-checker.md +142 -0
- package/oxe/agents/oxe-plan-checker.md +143 -0
- package/oxe/agents/oxe-planner.md +151 -0
- package/oxe/agents/oxe-research-synthesizer.md +146 -0
- package/oxe/agents/oxe-researcher.md +163 -0
- package/oxe/agents/oxe-ui-auditor.md +151 -0
- package/oxe/agents/oxe-ui-checker.md +157 -0
- package/oxe/agents/oxe-ui-researcher.md +179 -0
- package/oxe/agents/oxe-validation-auditor.md +154 -0
- package/oxe/agents/oxe-verifier.md +132 -0
- package/oxe/personas/README.md +91 -39
- package/oxe/personas/architect.md +149 -37
- package/oxe/personas/db-specialist.md +149 -36
- package/oxe/personas/debugger.md +155 -38
- package/oxe/personas/executor.md +164 -38
- package/oxe/personas/planner.md +165 -36
- package/oxe/personas/researcher.md +148 -35
- package/oxe/personas/ui-specialist.md +164 -36
- package/oxe/personas/verifier.md +174 -39
- package/oxe/templates/FIXTURE-PACK.template.json +18 -11
- package/oxe/templates/FIXTURE-PACK.template.md +19 -10
- package/oxe/templates/IMPLEMENTATION-PACK.template.json +26 -10
- package/oxe/templates/IMPLEMENTATION-PACK.template.md +32 -20
- package/oxe/templates/PLAN.template.md +62 -31
- package/oxe/templates/REFERENCE-ANCHORS.template.md +14 -10
- package/oxe/templates/SUMMARY.template.md +50 -20
- package/oxe/workflows/debug.md +9 -7
- package/oxe/workflows/execute.md +11 -8
- package/oxe/workflows/forensics.md +5 -3
- package/oxe/workflows/plan.md +277 -0
- package/oxe/workflows/scan.md +355 -69
- package/oxe/workflows/spec.md +302 -9
- package/oxe/workflows/ui-review.md +5 -4
- package/oxe/workflows/ui-spec.md +4 -3
- package/oxe/workflows/verify.md +8 -5
- package/package.json +1 -1
- package/packages/runtime/package.json +1 -1
- package/packages/runtime/src/compiler/graph-compiler.ts +40 -0
- package/packages/runtime/src/context/context-pack-builder.ts +80 -0
- package/packages/runtime/src/events/catalog.ts +5 -0
- package/packages/runtime/src/executor/action-tool-map.ts +46 -0
- package/packages/runtime/src/executor/built-in-tools.ts +276 -0
- package/packages/runtime/src/executor/index.ts +6 -0
- package/packages/runtime/src/executor/llm-task-executor.ts +194 -0
- package/packages/runtime/src/executor/node-prompt-builder.ts +45 -0
- package/packages/runtime/src/executor/stream-completion.ts +145 -0
- package/packages/runtime/src/index.ts +3 -0
- package/packages/runtime/src/models/failure.ts +11 -0
- package/packages/runtime/src/plugins/capability-adapter.ts +117 -10
- package/packages/runtime/src/plugins/plugin-abi.ts +9 -0
- package/packages/runtime/src/plugins/plugin-registry.ts +10 -1
- package/packages/runtime/src/reducers/run-state-reducer.ts +59 -2
- package/packages/runtime/src/scheduler/scheduler.ts +152 -14
- package/packages/runtime/src/verification/verification-manifest.ts +12 -8
- package/vscode-extension/oxe-agents-1.7.0.vsix +0 -0
- package/vscode-extension/package.json +1 -1
|
@@ -21,14 +21,21 @@
|
|
|
21
21
|
"summary": "deve concluir sem erro e persistir o artefato esperado"
|
|
22
22
|
}
|
|
23
23
|
],
|
|
24
|
-
"expected_checks": [
|
|
25
|
-
"npm test -- example"
|
|
26
|
-
],
|
|
27
|
-
"
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
24
|
+
"expected_checks": [
|
|
25
|
+
"npm test -- example"
|
|
26
|
+
],
|
|
27
|
+
"negative_cases": [
|
|
28
|
+
{
|
|
29
|
+
"summary": "entrada inválida deve falhar de forma controlada",
|
|
30
|
+
"expected": "erro classificado, sem mutação parcial"
|
|
31
|
+
}
|
|
32
|
+
],
|
|
33
|
+
"critical_fields": [
|
|
34
|
+
"id",
|
|
35
|
+
"status"
|
|
36
|
+
],
|
|
37
|
+
"source_anchor": "RA-01",
|
|
38
|
+
"critical_gaps": []
|
|
39
|
+
}
|
|
40
|
+
]
|
|
41
|
+
}
|
|
@@ -2,10 +2,11 @@
|
|
|
2
2
|
|
|
3
3
|
> Fixtures mínimos para reduzir improviso em parsing, integração, transformação, migração e builders.
|
|
4
4
|
|
|
5
|
-
## Status
|
|
6
|
-
|
|
7
|
-
- **Status:** ready | not_ready | not_applicable
|
|
8
|
-
- **Critical gaps abertos:** nenhum | listar
|
|
5
|
+
## Status
|
|
6
|
+
|
|
7
|
+
- **Status:** ready | not_ready | not_applicable
|
|
8
|
+
- **Critical gaps abertos:** nenhum | listar
|
|
9
|
+
- **Cobertura de tarefas de risco:** N/N
|
|
9
10
|
|
|
10
11
|
## Fixtures
|
|
11
12
|
|
|
@@ -13,9 +14,17 @@
|
|
|
13
14
|
|
|
14
15
|
- **Task:** T1
|
|
15
16
|
- **Status:** ready | missing | not_applicable
|
|
16
|
-
- **Inputs:** payload, arquivo exemplo, query, blob ou mensagem
|
|
17
|
-
- **Expected outputs:** linha, evento, arquivo, rowset, status etc.
|
|
18
|
-
- **Expected checks:** `...`
|
|
19
|
-
- **Campos críticos / offsets:** ...
|
|
20
|
-
- **Smoke command:** `...`
|
|
21
|
-
- **
|
|
17
|
+
- **Inputs:** payload, arquivo exemplo, query, blob ou mensagem
|
|
18
|
+
- **Expected outputs:** linha, evento, arquivo, rowset, status etc.
|
|
19
|
+
- **Expected checks:** `...`
|
|
20
|
+
- **Campos críticos / offsets:** ...
|
|
21
|
+
- **Smoke command:** `...`
|
|
22
|
+
- **Negative cases:** input inválido, erro esperado, limite ou regressão principal
|
|
23
|
+
- **Source anchor:** RA-01 | not_applicable
|
|
24
|
+
- **Critical gaps:** nenhum | listar
|
|
25
|
+
|
|
26
|
+
## Regras
|
|
27
|
+
|
|
28
|
+
- Parser, layout posicional, integração externa, fila, migração, transformação e builder exigem fixture `ready`.
|
|
29
|
+
- Docs-only pode usar `not_applicable`, mas precisa declarar o motivo.
|
|
30
|
+
- Fixture inventada sem anchor ou sem expected output não sustenta execução.
|
|
@@ -12,8 +12,10 @@
|
|
|
12
12
|
"exact_paths": [
|
|
13
13
|
"src/example.ts"
|
|
14
14
|
],
|
|
15
|
-
"write_set": "closed",
|
|
16
|
-
"
|
|
15
|
+
"write_set": "closed",
|
|
16
|
+
"mutation_scope": "code",
|
|
17
|
+
"risk": "medium",
|
|
18
|
+
"symbols": [
|
|
17
19
|
{
|
|
18
20
|
"kind": "function",
|
|
19
21
|
"name": "exampleHandler",
|
|
@@ -21,7 +23,7 @@
|
|
|
21
23
|
"signature": "(input: ExampleInput) => ExampleOutput"
|
|
22
24
|
}
|
|
23
25
|
],
|
|
24
|
-
"contracts": [
|
|
26
|
+
"contracts": [
|
|
25
27
|
{
|
|
26
28
|
"name": "example-contract",
|
|
27
29
|
"input_shape": "ExampleInput",
|
|
@@ -33,7 +35,20 @@
|
|
|
33
35
|
"mutar schema fora do write set"
|
|
34
36
|
]
|
|
35
37
|
}
|
|
36
|
-
],
|
|
38
|
+
],
|
|
39
|
+
"required_imports": [
|
|
40
|
+
{
|
|
41
|
+
"module": "src/example.ts",
|
|
42
|
+
"symbol": "ExampleInput",
|
|
43
|
+
"reason": "tipo de entrada do contrato"
|
|
44
|
+
}
|
|
45
|
+
],
|
|
46
|
+
"implementation_sequence": [
|
|
47
|
+
"confirmar símbolo e contrato no path alvo",
|
|
48
|
+
"implementar menor delta",
|
|
49
|
+
"rodar expected checks",
|
|
50
|
+
"registrar evidência"
|
|
51
|
+
],
|
|
37
52
|
"snippets": [
|
|
38
53
|
{
|
|
39
54
|
"source_ref": "not_applicable",
|
|
@@ -42,11 +57,12 @@
|
|
|
42
57
|
"status": "not_applicable"
|
|
43
58
|
}
|
|
44
59
|
],
|
|
45
|
-
"expected_checks": [
|
|
46
|
-
"npm test -- example"
|
|
47
|
-
],
|
|
48
|
-
"requires_fixture": false,
|
|
49
|
-
"
|
|
50
|
-
|
|
60
|
+
"expected_checks": [
|
|
61
|
+
"npm test -- example"
|
|
62
|
+
],
|
|
63
|
+
"requires_fixture": false,
|
|
64
|
+
"rollback_or_containment": "not_applicable",
|
|
65
|
+
"critical_gaps": []
|
|
66
|
+
}
|
|
51
67
|
]
|
|
52
68
|
}
|
|
@@ -6,31 +6,43 @@
|
|
|
6
6
|
|
|
7
7
|
- **Status:** ready | not_ready | not_applicable
|
|
8
8
|
- **Critical gaps abertos:** nenhum | listar
|
|
9
|
-
- **Fonte:** `PLAN.md` + código real + anchors locais
|
|
9
|
+
- **Fonte:** `PLAN.md` + código real + anchors locais
|
|
10
|
+
- **Regra de confiança:** se qualquer tarefa mutável estiver `ready: false`, o plano não pode sustentar `Confiança > 90%`.
|
|
10
11
|
|
|
11
12
|
## Tarefas
|
|
12
13
|
|
|
13
14
|
### T1 — (título)
|
|
14
15
|
|
|
15
|
-
- **Mode:** mutating | docs_only | external | not_applicable
|
|
16
|
-
- **Ready:** true | false
|
|
17
|
-
- **Exact paths:** `src/...`, `config/...`
|
|
18
|
-
- **Write set:** closed | external | not_applicable
|
|
19
|
-
- **
|
|
20
|
-
|
|
21
|
-
- **
|
|
22
|
-
-
|
|
23
|
-
|
|
24
|
-
-
|
|
25
|
-
|
|
26
|
-
- **
|
|
27
|
-
- **
|
|
28
|
-
-
|
|
29
|
-
- **
|
|
30
|
-
- **
|
|
31
|
-
- **
|
|
16
|
+
- **Mode:** mutating | docs_only | external | not_applicable
|
|
17
|
+
- **Ready:** true | false
|
|
18
|
+
- **Exact paths:** `src/...`, `config/...`
|
|
19
|
+
- **Write set:** closed | external | not_applicable
|
|
20
|
+
- **Mutation scope:** code | config | schema | migration | infra | docs
|
|
21
|
+
- **Risk:** low | medium | high | critical
|
|
22
|
+
- **Symbols alvo:**
|
|
23
|
+
- `kind:name(path)` — assinatura ou shape esperado
|
|
24
|
+
- **Imports/dependências obrigatórias:**
|
|
25
|
+
- `module` / `type` / `provider`
|
|
26
|
+
- **Contracts:**
|
|
27
|
+
- **Nome:** (ex.: payload parser)
|
|
28
|
+
- **Entrada:** ...
|
|
29
|
+
- **Saída:** ...
|
|
30
|
+
- **Invariants:** ...
|
|
31
|
+
- **Not allowed:** ...
|
|
32
|
+
- **Sequência mínima:**
|
|
33
|
+
1. Confirmar símbolo e contrato no path alvo.
|
|
34
|
+
2. Implementar o menor delta.
|
|
35
|
+
3. Rodar o check da tarefa.
|
|
36
|
+
4. Registrar evidência.
|
|
37
|
+
- **Expected checks:**
|
|
38
|
+
- `...`
|
|
39
|
+
- **Requires fixture:** true | false
|
|
40
|
+
- **Snippet/base local:** path ou `not_applicable`
|
|
41
|
+
- **Rollback/contensão:** comando, diff reversível, feature flag, checkpoint ou `not_applicable`
|
|
42
|
+
- **Critical gaps:** nenhum | listar
|
|
32
43
|
|
|
33
44
|
## Observações
|
|
34
45
|
|
|
35
|
-
- Use caminhos exatos; não usar `...`.
|
|
36
|
-
- Tarefa mutável sem `symbols`, `contracts`, `write_set: closed` e `expected_checks` não deve sustentar confiança `> 90%`.
|
|
46
|
+
- Use caminhos exatos; não usar `...`.
|
|
47
|
+
- Tarefa mutável sem `symbols`, `contracts`, `write_set: closed` e `expected_checks` não deve sustentar confiança `> 90%`.
|
|
48
|
+
- Tarefa L/XL ou integração externa precisa de sequência mínima, rollback/contensão e fixture ou justificativa explícita.
|
|
@@ -2,8 +2,18 @@
|
|
|
2
2
|
oxe_doc: plan
|
|
3
3
|
status: draft
|
|
4
4
|
updated: YYYY-MM-DD
|
|
5
|
-
inputs: []
|
|
6
|
-
|
|
5
|
+
inputs: []
|
|
6
|
+
spec_version: ""
|
|
7
|
+
plan_confidence_threshold: 90
|
|
8
|
+
goal_backward_verification: required
|
|
9
|
+
rationality_gate: required
|
|
10
|
+
risk_level: low | medium | high | critical
|
|
11
|
+
autonomous: false
|
|
12
|
+
must_haves: []
|
|
13
|
+
dependencies: []
|
|
14
|
+
checkpoints: []
|
|
15
|
+
evidence_expectation: manifest | command | manual | mixed
|
|
16
|
+
---
|
|
7
17
|
|
|
8
18
|
<!--
|
|
9
19
|
Metadados OXE. Manter --- antes do primeiro #. Atualize `updated` a cada revisão significativa.
|
|
@@ -21,20 +31,23 @@ inputs: []
|
|
|
21
31
|
- **Tarefas:** (número)
|
|
22
32
|
- **Artefatos racionais:** `IMPLEMENTATION-PACK`, `REFERENCE-ANCHORS`, `FIXTURE-PACK`
|
|
23
33
|
|
|
24
|
-
## Autoavaliação do Plano
|
|
25
|
-
|
|
26
|
-
- **Melhor plano atual:** sim
|
|
27
|
-
- **Confiança:** 92%
|
|
28
|
-
- **
|
|
29
|
-
|
|
34
|
+
## Autoavaliação do Plano
|
|
35
|
+
|
|
36
|
+
- **Melhor plano atual:** sim
|
|
37
|
+
- **Confiança:** 92%
|
|
38
|
+
- **Limiar para execute:** > 90%
|
|
39
|
+
- **Resultado do gate racional:** ready | not_ready
|
|
40
|
+
- **Base da confiança:**
|
|
41
|
+
- Completude dos requisitos: 23/25
|
|
30
42
|
- Dependências conhecidas: 14/15
|
|
31
43
|
- Risco técnico: 18/20
|
|
32
44
|
- Impacto no código existente: 14/15
|
|
33
45
|
- Clareza da validação / testes: 14/15
|
|
34
46
|
- Lacunas externas / decisões pendentes: 9/10
|
|
35
|
-
- **Principais incertezas:** (0–3 bullets)
|
|
36
|
-
- **Alternativas descartadas:** (1–2 linhas)
|
|
37
|
-
- **Condição para replanejar:** (critério objetivo)
|
|
47
|
+
- **Principais incertezas:** (0–3 bullets)
|
|
48
|
+
- **Alternativas descartadas:** (1–2 linhas)
|
|
49
|
+
- **Condição para replanejar:** (critério objetivo)
|
|
50
|
+
- **Bloqueadores de execução:** nenhum | listar gaps críticos
|
|
38
51
|
|
|
39
52
|
<confidence_vector cycle="C-NN" generated_at="YYYY-MM-DDTHH:MM:SSZ">
|
|
40
53
|
<dim name="requirements" score="0.92" weight="25" note="completude dos requisitos" />
|
|
@@ -71,12 +84,26 @@ inputs: []
|
|
|
71
84
|
|
|
72
85
|
- (ex.: branch base, feature flags, migrations)
|
|
73
86
|
|
|
74
|
-
## Artefatos racionais de execução
|
|
75
|
-
|
|
76
|
-
- **IMPLEMENTATION-PACK:** `ready | not_ready | not_applicable`
|
|
77
|
-
- **REFERENCE-ANCHORS:** `ready | not_ready | not_applicable`
|
|
78
|
-
- **FIXTURE-PACK:** `ready | not_ready | not_applicable`
|
|
79
|
-
- **Critical gaps abertos:** (nenhum | listar IDs/causas)
|
|
87
|
+
## Artefatos racionais de execução
|
|
88
|
+
|
|
89
|
+
- **IMPLEMENTATION-PACK:** `ready | not_ready | not_applicable`
|
|
90
|
+
- **REFERENCE-ANCHORS:** `ready | not_ready | not_applicable`
|
|
91
|
+
- **FIXTURE-PACK:** `ready | not_ready | not_applicable`
|
|
92
|
+
- **Critical gaps abertos:** (nenhum | listar IDs/causas)
|
|
93
|
+
|
|
94
|
+
### Contrato goal-backward
|
|
95
|
+
|
|
96
|
+
| Critério | Evidência esperada | Tarefa(s) | Risco se falhar |
|
|
97
|
+
|----------|--------------------|-----------|-----------------|
|
|
98
|
+
| A1 | comando, arquivo, fixture ou UAT | T1 | high |
|
|
99
|
+
|
|
100
|
+
### Must-haves de execução
|
|
101
|
+
|
|
102
|
+
- Nenhuma tarefa mutável com path ambíguo.
|
|
103
|
+
- Nenhum símbolo alvo indefinido.
|
|
104
|
+
- Nenhuma referência crítica não materializada.
|
|
105
|
+
- Nenhuma tarefa de parsing/integração/transformação sem fixture ou justificativa `not_applicable`.
|
|
106
|
+
- Nenhum checkpoint humano pendente antes de side effect crítico.
|
|
80
107
|
|
|
81
108
|
## Replanejamento
|
|
82
109
|
|
|
@@ -88,19 +115,23 @@ inputs: []
|
|
|
88
115
|
|
|
89
116
|
## Tarefas
|
|
90
117
|
|
|
91
|
-
### T1 — (título)
|
|
92
|
-
|
|
93
|
-
- **Arquivos
|
|
94
|
-
- **Depende de:** —
|
|
95
|
-
- **Onda:** 1
|
|
96
|
-
- **Complexidade:** S
|
|
97
|
-
- **
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
- **
|
|
101
|
-
-
|
|
102
|
-
-
|
|
103
|
-
|
|
104
|
-
|
|
118
|
+
### T1 — (título)
|
|
119
|
+
|
|
120
|
+
- **Arquivos alvo:** `src/exato.ts`
|
|
121
|
+
- **Depende de:** —
|
|
122
|
+
- **Onda:** 1
|
|
123
|
+
- **Complexidade:** S
|
|
124
|
+
- **Risco:** low | medium | high | critical
|
|
125
|
+
- **Evidência de entrada:** SPEC A1 | DISCUSS D-01 | RESEARCH RA-01 | codebase path
|
|
126
|
+
- **Checkpoint:** nenhum | CHK-01
|
|
127
|
+
- **Verificar:**
|
|
128
|
+
- Comando: `…`
|
|
129
|
+
- Manual: (opcional) …
|
|
130
|
+
- **Implementar:** o mínimo para fazer a verificação acima passar.
|
|
131
|
+
- **Aceite vinculado:** A1, A2 (IDs da tabela de critérios em SPEC.md)
|
|
132
|
+
- **Contrato racional:** ver `IMPLEMENTATION-PACK.json` (task `T1`)
|
|
133
|
+
- **Rollback/contensão:** obrigatório para risco high/critical; `not_applicable` se low/medium.
|
|
134
|
+
|
|
135
|
+
---
|
|
105
136
|
|
|
106
137
|
_(Adicione T2, T3, … conforme o comando oxe:plan.)_
|
|
@@ -3,22 +3,26 @@
|
|
|
3
3
|
> Materialização de referências críticas usadas pelo plano. Toda referência externa, predecessor, layout ou contrato que sustente uma tarefa deve virar âncora reproduzível aqui.
|
|
4
4
|
|
|
5
5
|
<reference_anchors version="1" ready="false" status="not_ready">
|
|
6
|
-
<anchor
|
|
6
|
+
<anchor
|
|
7
7
|
id="RA-01"
|
|
8
8
|
task="T1"
|
|
9
9
|
critical="true"
|
|
10
10
|
status="resolved"
|
|
11
11
|
source_type="local"
|
|
12
|
-
path=".oxe/investigations/externals/exemplo.txt"
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
<
|
|
16
|
-
<
|
|
17
|
-
|
|
18
|
-
|
|
12
|
+
path=".oxe/investigations/externals/exemplo.txt"
|
|
13
|
+
snippet_ref="lines 10-30"
|
|
14
|
+
source_ref="external-ref: exemplo">
|
|
15
|
+
<relevance>Por que esta referência sustenta a tarefa.</relevance>
|
|
16
|
+
<action>copy | adapt | consult</action>
|
|
17
|
+
<summary>Resumo semântico curto do trecho relevante ou do contrato.</summary>
|
|
18
|
+
<critical_fields>IDs, colunas, offsets, eventos ou contratos que não podem ser improvisados.</critical_fields>
|
|
19
|
+
</anchor>
|
|
20
|
+
</reference_anchors>
|
|
19
21
|
|
|
20
22
|
## Regras
|
|
21
23
|
|
|
22
24
|
- Se não houver referência aplicável, usar `<reference_anchors ... status="not_applicable" ready="true">`.
|
|
23
|
-
- `critical="true"` exige `status="resolved"` antes do execute.
|
|
24
|
-
- `path` deve ser reproduzível no workspace ou materializado em `.oxe/investigations/externals/`.
|
|
25
|
+
- `critical="true"` exige `status="resolved"` antes do execute.
|
|
26
|
+
- `path` deve ser reproduzível no workspace ou materializado em `.oxe/investigations/externals/`.
|
|
27
|
+
- Referência solta em texto não é evidência. Se o path/range/snippet não puder ser materializado, marcar `status="missing"` e derrubar readiness.
|
|
28
|
+
- Anchors podem ser locais, externos materializados, predecessor interno, contrato público, fixture ou decisão registrada.
|
|
@@ -1,20 +1,50 @@
|
|
|
1
|
-
# OXE — Resumo de sessão
|
|
2
|
-
|
|
3
|
-
> Usado por **verify**
|
|
4
|
-
|
|
5
|
-
## Sessão
|
|
6
|
-
|
|
7
|
-
- **Data:** (ISO ou legível)
|
|
8
|
-
- **
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
1
|
+
# OXE — Resumo de sessão
|
|
2
|
+
|
|
3
|
+
> Usado por **execute**, **verify** e **plan --replan** para contexto incremental, evidência e retomada.
|
|
4
|
+
|
|
5
|
+
## Sessão
|
|
6
|
+
|
|
7
|
+
- **Data:** (ISO ou legível)
|
|
8
|
+
- **Run:** ...
|
|
9
|
+
- **Spec / plano:** (referência breve a `.oxe/SPEC.md` / `.oxe/PLAN.md`)
|
|
10
|
+
- **Modo:** completo | por_onda | por_tarefa | runtime
|
|
11
|
+
|
|
12
|
+
## Performance
|
|
13
|
+
|
|
14
|
+
- **Ondas concluídas:** N/N
|
|
15
|
+
- **Tarefas concluídas:** N/N
|
|
16
|
+
- **Retries:** N
|
|
17
|
+
- **Checkpoints:** aprovados N | pendentes N | waived N
|
|
18
|
+
|
|
19
|
+
## Feito nesta sessão
|
|
20
|
+
|
|
21
|
+
- …
|
|
22
|
+
|
|
23
|
+
## Arquivos criados/modificados
|
|
24
|
+
|
|
25
|
+
| Path | Motivo | Tarefa |
|
|
26
|
+
|------|--------|--------|
|
|
27
|
+
| `src/example.ts` | implementação do contrato | T1 |
|
|
28
|
+
|
|
29
|
+
## Decisões / desvios
|
|
30
|
+
|
|
31
|
+
- **Decisões aplicadas:** D-01, D-02
|
|
32
|
+
- **Desvios do plano:** nenhum | listar com motivo, impacto e evidência
|
|
33
|
+
- **Fixes inline:** nenhum | listar hipótese e comando de verificação
|
|
34
|
+
|
|
35
|
+
## Evidências
|
|
36
|
+
|
|
37
|
+
- **Manifest:** `verification-manifest.json` | not_available
|
|
38
|
+
- **Coverage:** `evidence-coverage.json` | not_available
|
|
39
|
+
- **Residual risk:** `residual-risk-ledger.json` | not_available
|
|
40
|
+
- **Comandos executados:** ...
|
|
41
|
+
|
|
42
|
+
## Pendente ou follow-up
|
|
43
|
+
|
|
44
|
+
- …
|
|
45
|
+
|
|
46
|
+
## Next Step Readiness
|
|
47
|
+
|
|
48
|
+
- **Próximo passo recomendado:** `/oxe-verify` | `/oxe-plan --replan` | `/oxe-execute`
|
|
49
|
+
- **Bloqueadores:** nenhum | listar
|
|
50
|
+
- **Risco residual:** low | medium | high | critical
|
package/oxe/workflows/debug.md
CHANGED
|
@@ -15,17 +15,19 @@ Diferente de **`verify`**, que audita **aceite** contra SPEC/PLAN. Depois de est
|
|
|
15
15
|
- Pré-requisito: sintoma reproduzível ou descrição clara (mensagem de erro, Tn em falha).
|
|
16
16
|
- Preferir ancorar ao identificador de tarefa **`Tn`** do `PLAN.md` do escopo resolvido quando existir.
|
|
17
17
|
- Resolver `active_session` conforme `oxe/workflows/references/session-path-resolution.md`. Com sessão ativa, usar `.oxe/<active_session>/execution/DEBUG.md`; sem sessão ativa, usar `.oxe/DEBUG.md`.
|
|
18
|
-
- Artefato: **`DEBUG.md`** no escopo correto — ficheiro único com **sessões** datadas (append); não dispersar em vários ficheiros sem convenção.
|
|
18
|
+
- Artefato: **`DEBUG.md`** no escopo correto — ficheiro único com **sessões** datadas (append); não dispersar em vários ficheiros sem convenção.
|
|
19
|
+
- Agente especializado: quando disponível, usar `oxe-debugger` para conduzir hipótese, reprodução mínima, evidência, eliminados e handoff retomável. O agente não deve declarar entrega aprovada; após correção, a trilha volta para `execute` e depois `verify`.
|
|
19
20
|
</context>
|
|
20
21
|
|
|
21
22
|
<process>
|
|
22
23
|
1. Ler `PLAN.md` do escopo resolvido e `.oxe/STATE.md`; se o foco for uma tarefa, localizar **Tn** e o bloco **Verificar**.
|
|
23
|
-
2. Registar em **`DEBUG.md`** do escopo resolvido uma nova sessão:
|
|
24
|
-
- **Data** / **Sintoma** (com stack ou comando que falhou).
|
|
25
|
-
- **Hipóteses** (ordenadas por plausibilidade).
|
|
26
|
-
- **Experiências** — o que foi tentado e resultado (uma linha cada).
|
|
27
|
-
- **
|
|
28
|
-
- **
|
|
24
|
+
2. Registar em **`DEBUG.md`** do escopo resolvido uma nova sessão:
|
|
25
|
+
- **Data** / **Sintoma** (com stack ou comando que falhou).
|
|
26
|
+
- **Hipóteses** (ordenadas por plausibilidade).
|
|
27
|
+
- **Experiências** — o que foi tentado e resultado (uma linha cada).
|
|
28
|
+
- **Eliminados** — hipóteses descartadas e evidência.
|
|
29
|
+
- **Evidência atual** — ficheiros, linhas, conclusão parcial.
|
|
30
|
+
- **Próximo passo:** `execute` (continuar correção) | `discuss` (decisão técnica em grupo) | `spec` ou `plan` (requisito ambíguo ou impossível como escrito).
|
|
29
31
|
3. Se a causa for **requisito errado**, documentar em DEBUG e recomendar **`/oxe-spec`** ou **`/oxe-plan`** (e opcionalmente **`/oxe-discuss`**).
|
|
30
32
|
4. Resumo no chat em ≤8 linhas, nesta ordem:
|
|
31
33
|
- **Contexto lido**
|
package/oxe/workflows/execute.md
CHANGED
|
@@ -124,12 +124,14 @@ Quando o comando `**Verificar:**` de uma tarefa `Tn` falha, **não parar silenci
|
|
|
124
124
|
|
|
125
125
|
**Context pack prioritário:** antes de abrir o conjunto amplo de artefatos, resolver `.oxe/context/packs/execute.md` e `.oxe/context/packs/execute.json` como entrada principal do passo. Se o pack estiver fresco/coerente, usar `read_order` e `selected_artifacts` para limitar o reconhecimento inicial à onda/tarefa atual. Se estiver stale, ausente ou com lacunas críticas, fazer fallback explícito para leitura direta e registrar isso no runtime ou no resumo da execução.
|
|
126
126
|
|
|
127
|
-
**Artefatos racionais obrigatórios:** quando a execução vier de `PLAN.md`, ler antes da primeira mutação:
|
|
128
|
-
- `IMPLEMENTATION-PACK.md` / `IMPLEMENTATION-PACK.json`
|
|
129
|
-
- `REFERENCE-ANCHORS.md`
|
|
130
|
-
- `FIXTURE-PACK.md` / `FIXTURE-PACK.json`
|
|
131
|
-
|
|
132
|
-
O `execute` é **pack-first**, não apenas `plan-first`. Esses artefatos existem para impedir improviso de paths, interfaces, referências externas e fixtures. Se estiverem ausentes, inconsistentes ou com `critical_gap`, a execução deve bloquear e devolver para replanejamento.
|
|
127
|
+
**Artefatos racionais obrigatórios:** quando a execução vier de `PLAN.md`, ler antes da primeira mutação:
|
|
128
|
+
- `IMPLEMENTATION-PACK.md` / `IMPLEMENTATION-PACK.json`
|
|
129
|
+
- `REFERENCE-ANCHORS.md`
|
|
130
|
+
- `FIXTURE-PACK.md` / `FIXTURE-PACK.json`
|
|
131
|
+
|
|
132
|
+
O `execute` é **pack-first**, não apenas `plan-first`. Esses artefatos existem para impedir improviso de paths, interfaces, referências externas e fixtures. Se estiverem ausentes, inconsistentes ou com `critical_gap`, a execução deve bloquear e devolver para replanejamento.
|
|
133
|
+
|
|
134
|
+
**Agente executor especializado:** quando um runtime suportar agentes OXE, o papel esperado é `oxe-executor`. Para ondas com UI, debug, integração ou validação pesada, consultar os agentes especializados correspondentes, mas manter o estado operacional em `.oxe/` e no runtime.
|
|
133
135
|
|
|
134
136
|
**Runtime operacional:** usar `EXECUTION-RUNTIME.md` do escopo resolvido como artefato tático da execução. Ele deve refletir agentes ativos, onda atual, handoffs, evidências, retries, checkpoints pendentes e tarefas bloqueadas. O `PLAN.md` continua estratégico; o runtime regista a operação do ciclo.
|
|
135
137
|
|
|
@@ -195,11 +197,12 @@ Se condições não atendidas: responder sem persona; sugerir `/oxe-plan-agent`
|
|
|
195
197
|
- o bloco `<confidence_vector>` deve existir e ser coerente com a confiança declarada;
|
|
196
198
|
- se `.oxe/config.json` definir `plan_confidence_threshold`, usar esse limiar respeitando o piso canónico de `90%`; senão, usar `90%`;
|
|
197
199
|
- se a confiança não superar o limiar (`<=`) ou se a autoavaliação estiver incompleta, **não executar**. Registrar o bloqueio e orientar redução de incerteza (`/oxe-discuss`, `/oxe-research` ou `/oxe-plan --replan`).
|
|
198
|
-
2a. Antes da primeira mutação, validar os artefatos racionais do plano:
|
|
200
|
+
2a. Antes da primeira mutação, validar os artefatos racionais do plano:
|
|
199
201
|
- `IMPLEMENTATION-PACK.json` deve existir, estar `ready`, cobrir cada `Tn` mutável e usar `exact_paths` sem `...`, `symbols`, `contracts`, `write_set: "closed"` e `expected_checks`;
|
|
200
202
|
- `REFERENCE-ANCHORS.md` deve existir e manter todas as âncoras críticas em `status: resolved`;
|
|
201
203
|
- `FIXTURE-PACK.json` deve existir, estar `ready` e cobrir tarefas de parser/layout/integração/transformação/fila/migração/builder;
|
|
202
|
-
- se algum pack tiver `critical_gap`, **não executar**. Registrar o bloqueio explicitamente em `EXECUTION-RUNTIME.md` / `STATE.md` e recomendar um único próximo passo: normalmente `/oxe-plan --replan`.
|
|
204
|
+
- se algum pack tiver `critical_gap`, **não executar**. Registrar o bloqueio explicitamente em `EXECUTION-RUNTIME.md` / `STATE.md` e recomendar um único próximo passo: normalmente `/oxe-plan --replan`.
|
|
205
|
+
- se uma tarefa mutável usar path com `...`, símbolo indefinido, write-set aberto ou fixture obrigatória ausente, bloquear a tarefa mesmo que o `PLAN.md` pareça completo.
|
|
203
206
|
3. Antes da primeira mudança, verificar `CHECKPOINTS.md` e `EXECUTION-RUNTIME.md` do escopo resolvido:
|
|
204
207
|
- se houver checkpoint `pending_approval` que se aplique à onda atual, **não avançar**;
|
|
205
208
|
- inicializar ou atualizar o runtime com onda atual, status, agentes ativos, handoffs e evidências esperadas.
|
|
@@ -16,7 +16,8 @@ Não reescrever `SPEC.md` nem apagar `PLAN.md`; apenas **recomendar** o reingres
|
|
|
16
16
|
- Resolver `active_session` conforme `oxe/workflows/references/session-path-resolution.md`; ler `.oxe/STATE.md` global e os artefatos de sessão (`VERIFY.md`, `PLAN.md`, `SPEC.md`, `QUICK.md`) no escopo resolvido.
|
|
17
17
|
- **Git é opcional:** em sandbox sem Git ou sem permissão de terminal, **não** falhar o workflow; registar em `FORENSICS.md` que Git não foi avaliado.
|
|
18
18
|
- Opcional: saída resumida de `npx oxe-cc doctor` no diretório do projeto.
|
|
19
|
-
- Se o sintoma for **mapa OXE desatualizado** (ex.: `STACK.md` / estrutura em `.oxe/codebase/` claramente atrás do repo) sem workflows em falta, a **Hipótese de causa** ou a **Justificativa** pode mencionar **`/oxe-compact`** como ação complementar **depois** de escolhido o passo canónico — o próximo passo OXE recomendado continua a ser **um** entre `scan` | `plan` | `execute`.
|
|
19
|
+
- Se o sintoma for **mapa OXE desatualizado** (ex.: `STACK.md` / estrutura em `.oxe/codebase/` claramente atrás do repo) sem workflows em falta, a **Hipótese de causa** ou a **Justificativa** pode mencionar **`/oxe-compact`** como ação complementar **depois** de escolhido o passo canónico — o próximo passo OXE recomendado continua a ser **um** entre `scan` | `plan` | `execute`.
|
|
20
|
+
- Agentes úteis: `oxe-debugger` para falha técnica, `oxe-integration-checker` para divergência entre ondas/artefatos, `oxe-validation-auditor` para evidence gaps e `oxe-codebase-mapper` quando o mapa estiver obsoleto.
|
|
20
21
|
|
|
21
22
|
**Git (opcional)** — se o agente puder correr terminal **ou** o utilizador colar saída, preferir recolher:
|
|
22
23
|
|
|
@@ -32,8 +33,9 @@ Não reescrever `SPEC.md` nem apagar `PLAN.md`; apenas **recomendar** o reingres
|
|
|
32
33
|
2. Recolher evidência: STATE, VERIFY, PLAN, SPEC, QUICK (trechos relevantes), saída de **doctor** se disponível, e **Git (opcional)** conforme bloco no context (se indisponível, seguir sem Git). Se `OXE-EVENTS.ndjson` existir no escopo resolvido, correr `npx oxe-cc runtime replay --write` para gerar **`REPLAY-SESSION.md`** — timeline completa da execução com deltas entre eventos; incluir achados relevantes na seção **Linha do tempo** do `FORENSICS.md`.
|
|
33
34
|
3. Redigir **`FORENSICS.md`** no escopo resolvido com secções fixas:
|
|
34
35
|
- **Data** (ISO) e **Sintoma** (1–3 frases).
|
|
35
|
-
- **Linha do tempo** — bullets curtos (o que se tentou, ordem aproximada); **incorporar** commits/datas e ficheiros mais tocados quando houver evidência Git; se Git não foi avaliado, linha explícita: *Git não avaliado (ambiente/indisponível)*.
|
|
36
|
-
- **
|
|
36
|
+
- **Linha do tempo** — bullets curtos (o que se tentou, ordem aproximada); **incorporar** commits/datas e ficheiros mais tocados quando houver evidência Git; se Git não foi avaliado, linha explícita: *Git não avaliado (ambiente/indisponível)*.
|
|
37
|
+
- **Divergências de consistência** — diferenças entre `ACTIVE-RUN.json`, run file, eventos, gates, policy decisions, VERIFY e STATE quando existirem.
|
|
38
|
+
- **Hipótese de causa** — uma ou duas hipóteses ranqueadas (ex.: plano desalinhado, mapa desatualizado, workflows em falta, implementação incompleta); usar padrões Git (ficheiros repetidos, working tree suja) quando útil.
|
|
37
39
|
- **Próximo passo OXE recomendado:** **um único** valor entre `scan` | `plan` | `execute` e o **comando** correspondente (`/oxe-scan`, `/oxe-plan`, `/oxe-execute` ou `npx oxe-cc@latest` / `npx oxe-cc doctor` quando a causa for tooling).
|
|
38
40
|
- **Justificativa** — uma frase que liga evidência ao passo escolhido.
|
|
39
41
|
4. Atualizar **`.oxe/STATE.md`** global com uma linha opcional sob decisões ou contexto: referência a `FORENSICS.md` e fase sugerida (ex.: `forensics_complete` → próximo conforme passo recomendado).
|