oxe-cc 1.5.1 → 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.
Files changed (125) hide show
  1. package/AGENTS.md +1 -1
  2. package/CHANGELOG.md +45 -0
  3. package/README.md +19 -15
  4. package/bin/lib/oxe-agent-install.cjs +125 -24
  5. package/bin/lib/oxe-dashboard.cjs +21 -5
  6. package/bin/lib/oxe-project-health.cjs +120 -42
  7. package/bin/lib/oxe-release.cjs +77 -4
  8. package/bin/oxe-cc.js +155 -78
  9. package/commands/oxe/debug.md +6 -1
  10. package/commands/oxe/discuss.md +7 -2
  11. package/commands/oxe/execute.md +7 -2
  12. package/commands/oxe/plan-agent.md +7 -2
  13. package/commands/oxe/plan.md +7 -2
  14. package/commands/oxe/scan.md +6 -1
  15. package/commands/oxe/spec.md +6 -1
  16. package/commands/oxe/verify.md +6 -1
  17. package/docs/CONTENT-MIGRATION-AUDIT.md +49 -0
  18. package/docs/RELEASE-READINESS.md +8 -0
  19. package/docs/RUNTIME-SMOKE-MATRIX.md +9 -2
  20. package/lib/runtime/compiler/graph-compiler.js +32 -0
  21. package/lib/runtime/context/context-pack-builder.d.ts +15 -0
  22. package/lib/runtime/context/context-pack-builder.js +78 -0
  23. package/lib/runtime/events/catalog.d.ts +1 -1
  24. package/lib/runtime/events/catalog.js +5 -0
  25. package/lib/runtime/executor/action-tool-map.d.ts +3 -0
  26. package/lib/runtime/executor/action-tool-map.js +41 -0
  27. package/lib/runtime/executor/built-in-tools.d.ts +8 -0
  28. package/lib/runtime/executor/built-in-tools.js +267 -0
  29. package/lib/runtime/executor/index.d.ts +6 -0
  30. package/lib/runtime/executor/index.js +12 -0
  31. package/lib/runtime/executor/llm-task-executor.d.ts +29 -0
  32. package/lib/runtime/executor/llm-task-executor.js +138 -0
  33. package/lib/runtime/executor/node-prompt-builder.d.ts +3 -0
  34. package/lib/runtime/executor/node-prompt-builder.js +36 -0
  35. package/lib/runtime/executor/stream-completion.d.ts +38 -0
  36. package/lib/runtime/executor/stream-completion.js +105 -0
  37. package/lib/runtime/index.d.ts +1 -0
  38. package/lib/runtime/index.js +2 -0
  39. package/lib/runtime/models/failure.d.ts +5 -0
  40. package/lib/runtime/models/failure.js +2 -0
  41. package/lib/runtime/plugins/capability-adapter.d.ts +9 -0
  42. package/lib/runtime/plugins/capability-adapter.js +111 -8
  43. package/lib/runtime/plugins/plugin-abi.d.ts +8 -0
  44. package/lib/runtime/plugins/plugin-registry.d.ts +2 -1
  45. package/lib/runtime/plugins/plugin-registry.js +6 -1
  46. package/lib/runtime/reducers/run-state-reducer.js +39 -2
  47. package/lib/runtime/scheduler/scheduler.d.ts +14 -2
  48. package/lib/runtime/scheduler/scheduler.js +131 -11
  49. package/lib/runtime/verification/verification-manifest.d.ts +5 -2
  50. package/lib/sdk/index.cjs +10 -5
  51. package/lib/sdk/index.d.ts +21 -10
  52. package/oxe/agents/oxe-assumptions-analyzer.md +136 -0
  53. package/oxe/agents/oxe-codebase-mapper.md +142 -0
  54. package/oxe/agents/oxe-debugger.md +145 -0
  55. package/oxe/agents/oxe-executor.md +139 -0
  56. package/oxe/agents/oxe-integration-checker.md +142 -0
  57. package/oxe/agents/oxe-plan-checker.md +143 -0
  58. package/oxe/agents/oxe-planner.md +151 -0
  59. package/oxe/agents/oxe-research-synthesizer.md +146 -0
  60. package/oxe/agents/oxe-researcher.md +163 -0
  61. package/oxe/agents/oxe-ui-auditor.md +151 -0
  62. package/oxe/agents/oxe-ui-checker.md +157 -0
  63. package/oxe/agents/oxe-ui-researcher.md +179 -0
  64. package/oxe/agents/oxe-validation-auditor.md +154 -0
  65. package/oxe/agents/oxe-verifier.md +132 -0
  66. package/oxe/personas/README.md +91 -39
  67. package/oxe/personas/architect.md +149 -37
  68. package/oxe/personas/db-specialist.md +149 -36
  69. package/oxe/personas/debugger.md +155 -38
  70. package/oxe/personas/executor.md +164 -38
  71. package/oxe/personas/planner.md +165 -36
  72. package/oxe/personas/researcher.md +148 -35
  73. package/oxe/personas/ui-specialist.md +164 -36
  74. package/oxe/personas/verifier.md +174 -39
  75. package/oxe/templates/CONFIG.md +3 -3
  76. package/oxe/templates/EXECUTION-RUNTIME.template.md +1 -1
  77. package/oxe/templates/FIXTURE-PACK.template.json +29 -22
  78. package/oxe/templates/FIXTURE-PACK.template.md +20 -11
  79. package/oxe/templates/IMPLEMENTATION-PACK.template.json +55 -39
  80. package/oxe/templates/IMPLEMENTATION-PACK.template.md +28 -16
  81. package/oxe/templates/INVESTIGATION.template.md +38 -38
  82. package/oxe/templates/PLAN.template.md +63 -32
  83. package/oxe/templates/REFERENCE-ANCHORS.template.md +18 -14
  84. package/oxe/templates/RESEARCH.template.md +11 -11
  85. package/oxe/templates/SPEC.template.md +6 -6
  86. package/oxe/templates/SUMMARY.template.md +33 -3
  87. package/oxe/templates/config.template.json +1 -1
  88. package/oxe/workflows/debug.md +9 -7
  89. package/oxe/workflows/execute.md +31 -28
  90. package/oxe/workflows/forensics.md +5 -3
  91. package/oxe/workflows/milestone.md +12 -12
  92. package/oxe/workflows/next.md +1 -1
  93. package/oxe/workflows/plan.md +409 -132
  94. package/oxe/workflows/references/adaptive-discovery.md +27 -27
  95. package/oxe/workflows/references/flow-robustness-contract.md +80 -80
  96. package/oxe/workflows/references/session-path-resolution.md +71 -71
  97. package/oxe/workflows/references/workflow-runtime-contracts.json +127 -127
  98. package/oxe/workflows/scan.md +355 -69
  99. package/oxe/workflows/spec.md +302 -9
  100. package/oxe/workflows/ui-review.md +5 -4
  101. package/oxe/workflows/ui-spec.md +4 -3
  102. package/oxe/workflows/verify.md +12 -9
  103. package/oxe/workflows/workstream.md +16 -16
  104. package/package.json +1 -1
  105. package/packages/runtime/package.json +1 -1
  106. package/packages/runtime/src/compiler/graph-compiler.ts +40 -0
  107. package/packages/runtime/src/context/context-pack-builder.ts +80 -0
  108. package/packages/runtime/src/events/catalog.ts +5 -0
  109. package/packages/runtime/src/executor/action-tool-map.ts +46 -0
  110. package/packages/runtime/src/executor/built-in-tools.ts +276 -0
  111. package/packages/runtime/src/executor/index.ts +6 -0
  112. package/packages/runtime/src/executor/llm-task-executor.ts +194 -0
  113. package/packages/runtime/src/executor/node-prompt-builder.ts +45 -0
  114. package/packages/runtime/src/executor/stream-completion.ts +145 -0
  115. package/packages/runtime/src/index.ts +3 -0
  116. package/packages/runtime/src/models/failure.ts +11 -0
  117. package/packages/runtime/src/plugins/capability-adapter.ts +117 -10
  118. package/packages/runtime/src/plugins/plugin-abi.ts +9 -0
  119. package/packages/runtime/src/plugins/plugin-registry.ts +10 -1
  120. package/packages/runtime/src/reducers/run-state-reducer.ts +59 -2
  121. package/packages/runtime/src/scheduler/scheduler.ts +152 -14
  122. package/packages/runtime/src/verification/verification-manifest.ts +12 -8
  123. package/vscode-extension/oxe-agents-1.6.0.vsix +0 -0
  124. package/vscode-extension/oxe-agents-1.7.0.vsix +0 -0
  125. package/vscode-extension/package.json +1 -1
@@ -1,27 +1,27 @@
1
- # OXE — Descoberta Adaptativa
2
-
3
- <objective>
4
- Reduzir ambiguidade antes da escrita de `SPEC.md` e melhorar a qualidade do plano. Esta referência orienta `spec` e `ask`.
5
- </objective>
6
-
7
- ## Regras
8
-
9
- - Classificar a demanda o mais cedo possível: `feature`, `bugfix`, `refactor`, `research`, `ops`, `mixed`.
10
- - Modular as perguntas pelo tipo de demanda e pelo risco.
11
- - Limitar rodadas; consolidar entendimento antes de escrever artefatos.
12
- - Registrar incertezas estruturadas, não apenas em texto solto.
13
-
14
- ## Blocos mínimos
15
-
16
- - **Objetivo final**
17
- - **Impacto / público**
18
- - **Restrições técnicas**
19
- - **Riscos e casos extremos**
20
- - **Evidência faltante**
21
-
22
- ## Saída esperada
23
-
24
- - resumo de entendimento;
25
- - demanda classificada;
26
- - incertezas remanescentes;
27
- - recomendação de próximo passo compatível com o risco.
1
+ # OXE — Descoberta Adaptativa
2
+
3
+ <objective>
4
+ Reduzir ambiguidade antes da escrita de `SPEC.md` e melhorar a qualidade do plano. Esta referência orienta `spec` e `ask`.
5
+ </objective>
6
+
7
+ ## Regras
8
+
9
+ - Classificar a demanda o mais cedo possível: `feature`, `bugfix`, `refactor`, `research`, `ops`, `mixed`.
10
+ - Modular as perguntas pelo tipo de demanda e pelo risco.
11
+ - Limitar rodadas; consolidar entendimento antes de escrever artefatos.
12
+ - Registrar incertezas estruturadas, não apenas em texto solto.
13
+
14
+ ## Blocos mínimos
15
+
16
+ - **Objetivo final**
17
+ - **Impacto / público**
18
+ - **Restrições técnicas**
19
+ - **Riscos e casos extremos**
20
+ - **Evidência faltante**
21
+
22
+ ## Saída esperada
23
+
24
+ - resumo de entendimento;
25
+ - demanda classificada;
26
+ - incertezas remanescentes;
27
+ - recomendação de próximo passo compatível com o risco.
@@ -1,80 +1,80 @@
1
- # OXE — Contrato de Robustez do Fluxo
2
-
3
- <objective>
4
- Definir um contrato canónico para reduzir alucinação estrutural no OXE. Este ficheiro é consumido por `spec`, `plan`, `quick`, `execute`, `verify`, `next`, `status` e `doctor`.
5
- </objective>
6
-
7
- ## Ordem determinística do fluxo
8
-
9
- Todo passo OXE deve seguir esta ordem, sem saltar etapas:
10
-
11
- 1. Ler os artefatos obrigatórios do estado atual.
12
- 2. Resolver `active_session` e os paths do escopo.
13
- 3. Validar pré-condições mínimas antes de prosseguir.
14
- 4. Produzir a saída principal do passo.
15
- 5. Executar autoavaliação ou gate de qualidade do próprio passo.
16
- 6. Registrar um próximo passo único.
17
-
18
- ## Invariantes mínimos
19
-
20
- Todo workflow deve declarar com clareza:
21
-
22
- - quais artefatos lê;
23
- - quais artefatos escreve;
24
- - quais invariantes valida antes de operar;
25
- - qual fallback legado é permitido quando não há sessão ativa.
26
-
27
- ## Proibição de saltos sem evidência
28
-
29
- - `plan` não deve avançar sem `SPEC.md` válido.
30
- - `execute` não deve avançar sem `PLAN.md` ou `QUICK.md` válido no escopo resolvido.
31
- - `verify` não deve avançar sem evidência mínima de execução ou de artefatos resultantes.
32
- - `next` não deve sugerir um passo que viole os gates acima.
33
-
34
- ## Contrato de autoavaliação do plano
35
-
36
- Todo `PLAN.md` deve conter uma seção visível `## Autoavaliação do Plano` com:
37
-
38
- - `Melhor plano atual:` `sim` ou `não`
39
- - `Confiança:` `0–100%`
40
- - `Base da confiança:` rubrica fixa, não narrativa livre
41
- - `Principais incertezas:` lista curta
42
- - `Alternativas descartadas:` resumo curto
43
- - `Condição para replanejar:` critério objetivo
44
-
45
- ### Rubrica obrigatória
46
-
47
- | Dimensão | Peso |
48
- |----------|------|
49
- | Completude dos requisitos | 25 |
50
- | Dependências conhecidas | 15 |
51
- | Risco técnico | 20 |
52
- | Impacto no código existente | 15 |
53
- | Clareza da validação / testes | 15 |
54
- | Lacunas externas / decisões pendentes | 10 |
55
-
56
- **Total:** 100 pontos
57
-
58
- ### Faixas semânticas
59
-
60
- - `91–100%` → pronto para executar
61
- - `80–90%` → plano racional, mas ainda não executável
62
- - `50–79%` → precisa refino antes de execução
63
- - `<50%` → não executar
64
-
65
- ## Calibração pós-execução
66
-
67
- `verify` deve comparar o resultado real com a autoavaliação do plano:
68
-
69
- - confiança alta + falha precoce = erro de calibração do plano;
70
- - confiança baixa + falha em risco previsto = autoavaliação aderente;
71
- - confiança alta + sucesso consistente = plano calibrado;
72
- - confiança baixa + sucesso amplo = plano conservador demais.
73
-
74
- ## Uso por `status` e `doctor`
75
-
76
- `status` e `doctor` devem refletir a saúde lógica do fluxo com categorias determinísticas:
77
-
78
- - `healthy` — sem bloqueio lógico conhecido;
79
- - `warning` — fluxo operável, mas com gaps ou drift relevante;
80
- - `broken` — artefato crítico ausente, incoerência severa ou gate indispensável falhado.
1
+ # OXE — Contrato de Robustez do Fluxo
2
+
3
+ <objective>
4
+ Definir um contrato canónico para reduzir alucinação estrutural no OXE. Este ficheiro é consumido por `spec`, `plan`, `quick`, `execute`, `verify`, `next`, `status` e `doctor`.
5
+ </objective>
6
+
7
+ ## Ordem determinística do fluxo
8
+
9
+ Todo passo OXE deve seguir esta ordem, sem saltar etapas:
10
+
11
+ 1. Ler os artefatos obrigatórios do estado atual.
12
+ 2. Resolver `active_session` e os paths do escopo.
13
+ 3. Validar pré-condições mínimas antes de prosseguir.
14
+ 4. Produzir a saída principal do passo.
15
+ 5. Executar autoavaliação ou gate de qualidade do próprio passo.
16
+ 6. Registrar um próximo passo único.
17
+
18
+ ## Invariantes mínimos
19
+
20
+ Todo workflow deve declarar com clareza:
21
+
22
+ - quais artefatos lê;
23
+ - quais artefatos escreve;
24
+ - quais invariantes valida antes de operar;
25
+ - qual fallback legado é permitido quando não há sessão ativa.
26
+
27
+ ## Proibição de saltos sem evidência
28
+
29
+ - `plan` não deve avançar sem `SPEC.md` válido.
30
+ - `execute` não deve avançar sem `PLAN.md` ou `QUICK.md` válido no escopo resolvido.
31
+ - `verify` não deve avançar sem evidência mínima de execução ou de artefatos resultantes.
32
+ - `next` não deve sugerir um passo que viole os gates acima.
33
+
34
+ ## Contrato de autoavaliação do plano
35
+
36
+ Todo `PLAN.md` deve conter uma seção visível `## Autoavaliação do Plano` com:
37
+
38
+ - `Melhor plano atual:` `sim` ou `não`
39
+ - `Confiança:` `0–100%`
40
+ - `Base da confiança:` rubrica fixa, não narrativa livre
41
+ - `Principais incertezas:` lista curta
42
+ - `Alternativas descartadas:` resumo curto
43
+ - `Condição para replanejar:` critério objetivo
44
+
45
+ ### Rubrica obrigatória
46
+
47
+ | Dimensão | Peso |
48
+ |----------|------|
49
+ | Completude dos requisitos | 25 |
50
+ | Dependências conhecidas | 15 |
51
+ | Risco técnico | 20 |
52
+ | Impacto no código existente | 15 |
53
+ | Clareza da validação / testes | 15 |
54
+ | Lacunas externas / decisões pendentes | 10 |
55
+
56
+ **Total:** 100 pontos
57
+
58
+ ### Faixas semânticas
59
+
60
+ - `91–100%` → pronto para executar
61
+ - `80–90%` → plano racional, mas ainda não executável
62
+ - `50–79%` → precisa refino antes de execução
63
+ - `<50%` → não executar
64
+
65
+ ## Calibração pós-execução
66
+
67
+ `verify` deve comparar o resultado real com a autoavaliação do plano:
68
+
69
+ - confiança alta + falha precoce = erro de calibração do plano;
70
+ - confiança baixa + falha em risco previsto = autoavaliação aderente;
71
+ - confiança alta + sucesso consistente = plano calibrado;
72
+ - confiança baixa + sucesso amplo = plano conservador demais.
73
+
74
+ ## Uso por `status` e `doctor`
75
+
76
+ `status` e `doctor` devem refletir a saúde lógica do fluxo com categorias determinísticas:
77
+
78
+ - `healthy` — sem bloqueio lógico conhecido;
79
+ - `warning` — fluxo operável, mas com gaps ou drift relevante;
80
+ - `broken` — artefato crítico ausente, incoerência severa ou gate indispensável falhado.
@@ -1,71 +1,71 @@
1
- # OXE — Referência: Session Path Resolution
2
-
3
- <objective>
4
- Padronizar a resolução de caminhos quando o projeto usa **sessões OXE** em `.oxe/sessions/`, preservando o modo legado quando **`.oxe/STATE.md`** não tiver `active_session`.
5
- </objective>
6
-
7
- <resolution_rule>
8
- ## Regra de resolução
9
-
10
- 1. Ler **`.oxe/STATE.md`** global.
11
- 2. Procurar o campo **`active_session`** na secção **Sessão ativa**.
12
- 3. Se existir e tiver valor diferente de `—`, usar:
13
- - `session_path = .oxe/<active_session>/`
14
- - `active_session` deve guardar sempre o path relativo completo, por exemplo: `sessions/s001-auth-redesign`
15
- 4. Se não existir:
16
- - `session_path = .oxe/`
17
- - O workflow opera em **modo legado**
18
-
19
- ## Convenções auxiliares
20
-
21
- - **global_state_path** = `.oxe/STATE.md`
22
- - **global_config_path** = `.oxe/config.json`
23
- - **global_codebase_path** = `.oxe/codebase/`
24
- - **global_sessions_index_path** = `.oxe/SESSIONS.md`
25
- - **global_lessons_path** = `.oxe/global/LESSONS.md`
26
- - **global_milestones_index_path** = `.oxe/global/MILESTONES.md`
27
- - **global_milestones_dir** = `.oxe/global/milestones/`
28
- </resolution_rule>
29
-
30
- <artifact_matrix>
31
- ## Matriz de artefatos
32
-
33
- | Tipo | Escopo | Caminho com sessão ativa | Caminho legado |
34
- |------|--------|--------------------------|----------------|
35
- | STATE global | global | `.oxe/STATE.md` | `.oxe/STATE.md` |
36
- | Config | global | `.oxe/config.json` | `.oxe/config.json` |
37
- | Codebase | global | `.oxe/codebase/*` | `.oxe/codebase/*` |
38
- | SESSIONS | global | `.oxe/SESSIONS.md` | `.oxe/SESSIONS.md` |
39
- | LESSONS | global | `.oxe/global/LESSONS.md` | `.oxe/LESSONS.md` |
40
- | MILESTONES | global | `.oxe/global/MILESTONES.md` | `.oxe/MILESTONES.md` |
41
- | SPEC / ROADMAP / DISCUSS / UI-SPEC | sessão | `.oxe/<active_session>/spec/` | `.oxe/` |
42
- | PLAN / QUICK / plan-agents / quick-agents | sessão | `.oxe/<active_session>/plan/` | `.oxe/` |
43
- | STATE local / OBS / DEBUG / FORENSICS | sessão | `.oxe/<active_session>/execution/` | `.oxe/` |
44
- | VERIFY / VALIDATION-GAPS / SECURITY / UI-REVIEW | sessão | `.oxe/<active_session>/verification/` | `.oxe/` |
45
- | CHECKPOINTS | sessão | `.oxe/<active_session>/checkpoints/` | `.oxe/checkpoints/` |
46
- | RESEARCH | sessão | `.oxe/<active_session>/research/` | `.oxe/research/` |
47
- | WORKSTREAMS | sessão | `.oxe/<active_session>/workstreams/` | `.oxe/workstreams/` |
48
- </artifact_matrix>
49
-
50
- <reading_rule>
51
- ## Regra de leitura
52
-
53
- - Quando um workflow ler um artefato da sua trilha, deve tentar primeiro o caminho da sessão ativa.
54
- - Se não houver sessão ativa, usar o caminho legado.
55
- - Se houver sessão ativa mas o artefato ainda não existir, o workflow pode:
56
- - criar no caminho da sessão, se for writer da fase
57
- - ou fazer fallback de leitura para o legado, quando isso preservar retrocompatibilidade e ajudar numa migração
58
-
59
- Exemplos:
60
- - `plan` lê `spec/SPEC.md` da sessão antes de cair para `.oxe/SPEC.md`
61
- - `verify` lê `plan/PLAN.md` e `spec/SPEC.md` da sessão antes do legado
62
- - `execute` lê sempre `.oxe/STATE.md` global **antes** de tudo, só para resolver `active_session`
63
- </reading_rule>
64
-
65
- <cross_session_refs>
66
- ## Referências cruzadas
67
-
68
- - Em `SESSION.md`, referências a outras sessões usam o formato **`@sNNN`**
69
- - O texto pode complementar com o path, por exemplo: `@s003 ver sessions/s003-auth-hardening/SESSION.md`
70
- - Não existe sessão múltipla ativa: o formato `@sNNN` é apenas referência documental
71
- </cross_session_refs>
1
+ # OXE — Referência: Session Path Resolution
2
+
3
+ <objective>
4
+ Padronizar a resolução de caminhos quando o projeto usa **sessões OXE** em `.oxe/sessions/`, preservando o modo legado quando **`.oxe/STATE.md`** não tiver `active_session`.
5
+ </objective>
6
+
7
+ <resolution_rule>
8
+ ## Regra de resolução
9
+
10
+ 1. Ler **`.oxe/STATE.md`** global.
11
+ 2. Procurar o campo **`active_session`** na secção **Sessão ativa**.
12
+ 3. Se existir e tiver valor diferente de `—`, usar:
13
+ - `session_path = .oxe/<active_session>/`
14
+ - `active_session` deve guardar sempre o path relativo completo, por exemplo: `sessions/s001-auth-redesign`
15
+ 4. Se não existir:
16
+ - `session_path = .oxe/`
17
+ - O workflow opera em **modo legado**
18
+
19
+ ## Convenções auxiliares
20
+
21
+ - **global_state_path** = `.oxe/STATE.md`
22
+ - **global_config_path** = `.oxe/config.json`
23
+ - **global_codebase_path** = `.oxe/codebase/`
24
+ - **global_sessions_index_path** = `.oxe/SESSIONS.md`
25
+ - **global_lessons_path** = `.oxe/global/LESSONS.md`
26
+ - **global_milestones_index_path** = `.oxe/global/MILESTONES.md`
27
+ - **global_milestones_dir** = `.oxe/global/milestones/`
28
+ </resolution_rule>
29
+
30
+ <artifact_matrix>
31
+ ## Matriz de artefatos
32
+
33
+ | Tipo | Escopo | Caminho com sessão ativa | Caminho legado |
34
+ |------|--------|--------------------------|----------------|
35
+ | STATE global | global | `.oxe/STATE.md` | `.oxe/STATE.md` |
36
+ | Config | global | `.oxe/config.json` | `.oxe/config.json` |
37
+ | Codebase | global | `.oxe/codebase/*` | `.oxe/codebase/*` |
38
+ | SESSIONS | global | `.oxe/SESSIONS.md` | `.oxe/SESSIONS.md` |
39
+ | LESSONS | global | `.oxe/global/LESSONS.md` | `.oxe/LESSONS.md` |
40
+ | MILESTONES | global | `.oxe/global/MILESTONES.md` | `.oxe/MILESTONES.md` |
41
+ | SPEC / ROADMAP / DISCUSS / UI-SPEC | sessão | `.oxe/<active_session>/spec/` | `.oxe/` |
42
+ | PLAN / QUICK / plan-agents / quick-agents | sessão | `.oxe/<active_session>/plan/` | `.oxe/` |
43
+ | STATE local / OBS / DEBUG / FORENSICS | sessão | `.oxe/<active_session>/execution/` | `.oxe/` |
44
+ | VERIFY / VALIDATION-GAPS / SECURITY / UI-REVIEW | sessão | `.oxe/<active_session>/verification/` | `.oxe/` |
45
+ | CHECKPOINTS | sessão | `.oxe/<active_session>/checkpoints/` | `.oxe/checkpoints/` |
46
+ | RESEARCH | sessão | `.oxe/<active_session>/research/` | `.oxe/research/` |
47
+ | WORKSTREAMS | sessão | `.oxe/<active_session>/workstreams/` | `.oxe/workstreams/` |
48
+ </artifact_matrix>
49
+
50
+ <reading_rule>
51
+ ## Regra de leitura
52
+
53
+ - Quando um workflow ler um artefato da sua trilha, deve tentar primeiro o caminho da sessão ativa.
54
+ - Se não houver sessão ativa, usar o caminho legado.
55
+ - Se houver sessão ativa mas o artefato ainda não existir, o workflow pode:
56
+ - criar no caminho da sessão, se for writer da fase
57
+ - ou fazer fallback de leitura para o legado, quando isso preservar retrocompatibilidade e ajudar numa migração
58
+
59
+ Exemplos:
60
+ - `plan` lê `spec/SPEC.md` da sessão antes de cair para `.oxe/SPEC.md`
61
+ - `verify` lê `plan/PLAN.md` e `spec/SPEC.md` da sessão antes do legado
62
+ - `execute` lê sempre `.oxe/STATE.md` global **antes** de tudo, só para resolver `active_session`
63
+ </reading_rule>
64
+
65
+ <cross_session_refs>
66
+ ## Referências cruzadas
67
+
68
+ - Em `SESSION.md`, referências a outras sessões usam o formato **`@sNNN`**
69
+ - O texto pode complementar com o path, por exemplo: `@s003 ver sessions/s003-auth-hardening/SESSION.md`
70
+ - Não existe sessão múltipla ativa: o formato `@sNNN` é apenas referência documental
71
+ </cross_session_refs>
@@ -254,25 +254,25 @@
254
254
  ],
255
255
  "extraction_intent": "status_read"
256
256
  },
257
- "dashboard": {
258
- "reasoning_mode": "status",
259
- "output_contract": "situational",
260
- "required_artifacts": [
261
- "state",
262
- "phase_summary",
263
- "project_summary"
264
- ],
265
- "optional_artifacts": [
266
- "session_summary",
267
- "plan",
268
- "implementation_pack_json",
269
- "reference_anchors",
270
- "fixture_pack_json",
271
- "runtime",
272
- "verify",
273
- "active_run",
274
- "events",
275
- "context_pack_dashboard"
257
+ "dashboard": {
258
+ "reasoning_mode": "status",
259
+ "output_contract": "situational",
260
+ "required_artifacts": [
261
+ "state",
262
+ "phase_summary",
263
+ "project_summary"
264
+ ],
265
+ "optional_artifacts": [
266
+ "session_summary",
267
+ "plan",
268
+ "implementation_pack_json",
269
+ "reference_anchors",
270
+ "fixture_pack_json",
271
+ "runtime",
272
+ "verify",
273
+ "active_run",
274
+ "events",
275
+ "context_pack_dashboard"
276
276
  ],
277
277
  "extraction_intent": "critical_check"
278
278
  },
@@ -322,72 +322,72 @@
322
322
  "canonical_state"
323
323
  ],
324
324
  "runtime_fallback_note": "Se o runtime não estiver compilado ou falhar por indisponibilidade do pacote, declarar fallback explícito para o fluxo legado antes de mutar.",
325
- "required_artifacts": [
326
- "state",
327
- "runtime",
328
- "checkpoints",
329
- "implementation_pack_json",
330
- "reference_anchors",
331
- "fixture_pack_json"
332
- ],
333
- "optional_artifacts": [
334
- "plan",
335
- "quick",
336
- "implementation_pack_md",
337
- "fixture_pack_md",
338
- "active_run",
339
- "events",
340
- "verify",
341
- "summary",
342
- "session_summary",
325
+ "required_artifacts": [
326
+ "state",
327
+ "runtime",
328
+ "checkpoints",
329
+ "implementation_pack_json",
330
+ "reference_anchors",
331
+ "fixture_pack_json"
332
+ ],
333
+ "optional_artifacts": [
334
+ "plan",
335
+ "quick",
336
+ "implementation_pack_md",
337
+ "fixture_pack_md",
338
+ "active_run",
339
+ "events",
340
+ "verify",
341
+ "summary",
342
+ "session_summary",
343
343
  "phase_summary",
344
344
  "project_summary",
345
345
  "capabilities_index",
346
346
  "azure_inventory"
347
347
  ],
348
- "context_tiers": {
349
- "minimal": [
350
- "state",
351
- "runtime",
352
- "checkpoints",
353
- "plan",
354
- "implementation_pack_json",
355
- "reference_anchors",
356
- "fixture_pack_json",
357
- "quick",
358
- "phase_summary"
359
- ],
360
- "standard": [
361
- "state",
362
- "runtime",
363
- "checkpoints",
364
- "plan",
365
- "implementation_pack_json",
366
- "reference_anchors",
367
- "fixture_pack_json",
368
- "quick",
369
- "phase_summary",
370
- "session_summary",
371
- "active_run",
372
- "events",
348
+ "context_tiers": {
349
+ "minimal": [
350
+ "state",
351
+ "runtime",
352
+ "checkpoints",
353
+ "plan",
354
+ "implementation_pack_json",
355
+ "reference_anchors",
356
+ "fixture_pack_json",
357
+ "quick",
358
+ "phase_summary"
359
+ ],
360
+ "standard": [
361
+ "state",
362
+ "runtime",
363
+ "checkpoints",
364
+ "plan",
365
+ "implementation_pack_json",
366
+ "reference_anchors",
367
+ "fixture_pack_json",
368
+ "quick",
369
+ "phase_summary",
370
+ "session_summary",
371
+ "active_run",
372
+ "events",
373
373
  "verify",
374
374
  "summary"
375
375
  ],
376
376
  "full": [
377
- "state",
378
- "runtime",
379
- "checkpoints",
380
- "plan",
381
- "implementation_pack_md",
382
- "implementation_pack_json",
383
- "reference_anchors",
384
- "fixture_pack_md",
385
- "fixture_pack_json",
386
- "quick",
387
- "active_run",
388
- "events",
389
- "verify",
390
- "summary",
377
+ "state",
378
+ "runtime",
379
+ "checkpoints",
380
+ "plan",
381
+ "implementation_pack_md",
382
+ "implementation_pack_json",
383
+ "reference_anchors",
384
+ "fixture_pack_md",
385
+ "fixture_pack_json",
386
+ "quick",
387
+ "active_run",
388
+ "events",
389
+ "verify",
390
+ "summary",
391
391
  "session_summary",
392
392
  "phase_summary",
393
393
  "project_summary",
@@ -530,65 +530,65 @@
530
530
  "state",
531
531
  "spec"
532
532
  ],
533
- "optional_artifacts": [
534
- "discuss",
535
- "investigations_index",
536
- "project_summary",
537
- "session_summary",
538
- "phase_summary",
539
- "global_lessons",
540
- "capabilities_index",
541
- "azure_inventory",
542
- "checkpoints",
543
- "calibration",
544
- "implementation_pack_md",
545
- "implementation_pack_json",
546
- "reference_anchors",
547
- "fixture_pack_md",
548
- "fixture_pack_json"
549
- ],
550
- "context_tiers": {
551
- "minimal": [
552
- "state",
553
- "spec",
533
+ "optional_artifacts": [
534
+ "discuss",
535
+ "investigations_index",
536
+ "project_summary",
537
+ "session_summary",
538
+ "phase_summary",
539
+ "global_lessons",
540
+ "capabilities_index",
541
+ "azure_inventory",
542
+ "checkpoints",
543
+ "calibration",
544
+ "implementation_pack_md",
545
+ "implementation_pack_json",
546
+ "reference_anchors",
547
+ "fixture_pack_md",
548
+ "fixture_pack_json"
549
+ ],
550
+ "context_tiers": {
551
+ "minimal": [
552
+ "state",
553
+ "spec",
554
554
  "session_summary",
555
555
  "phase_summary"
556
556
  ],
557
557
  "standard": [
558
- "state",
559
- "spec",
560
- "session_summary",
561
- "phase_summary",
562
- "discuss",
563
- "investigations_index",
564
- "project_summary",
565
- "global_lessons",
566
- "capabilities_index",
567
- "checkpoints",
568
- "implementation_pack_json",
569
- "reference_anchors",
570
- "fixture_pack_json"
571
- ],
572
- "full": [
573
- "state",
574
- "spec",
575
- "discuss",
558
+ "state",
559
+ "spec",
560
+ "session_summary",
561
+ "phase_summary",
562
+ "discuss",
563
+ "investigations_index",
564
+ "project_summary",
565
+ "global_lessons",
566
+ "capabilities_index",
567
+ "checkpoints",
568
+ "implementation_pack_json",
569
+ "reference_anchors",
570
+ "fixture_pack_json"
571
+ ],
572
+ "full": [
573
+ "state",
574
+ "spec",
575
+ "discuss",
576
576
  "investigations_index",
577
577
  "project_summary",
578
578
  "session_summary",
579
579
  "phase_summary",
580
- "global_lessons",
581
- "capabilities_index",
582
- "azure_inventory",
583
- "checkpoints",
584
- "calibration",
585
- "implementation_pack_md",
586
- "implementation_pack_json",
587
- "reference_anchors",
588
- "fixture_pack_md",
589
- "fixture_pack_json"
590
- ]
591
- },
580
+ "global_lessons",
581
+ "capabilities_index",
582
+ "azure_inventory",
583
+ "checkpoints",
584
+ "calibration",
585
+ "implementation_pack_md",
586
+ "implementation_pack_json",
587
+ "reference_anchors",
588
+ "fixture_pack_md",
589
+ "fixture_pack_json"
590
+ ]
591
+ },
592
592
  "extraction_intent": "planning_input"
593
593
  },
594
594
  "project": {