55 lines
1.8 KiB
Markdown
55 lines
1.8 KiB
Markdown
# Agenda - System Fault Semantics and Control Surface
|
|
|
|
## Problema
|
|
|
|
O dominio `system` e pequeno, mas mistura consulta simples com superficie de controle de fluxo.
|
|
|
|
Hoje:
|
|
|
|
- `SystemHasCart` responde diretamente;
|
|
- `SystemRunCart` ainda nao tem efeito real;
|
|
- a agenda `009` resolve semantica funcional, mas nao fecha por si so a politica de fault do dominio.
|
|
|
|
## Dor
|
|
|
|
- sem uma agenda propria, `system` pode herdar fault semantics por acidente;
|
|
- `run_cart` pode acabar consolidando `Panic` ou `Trap` onde deveria existir retorno operacional;
|
|
- a fronteira entre falha do app, falha do firmware e falha do runtime fica opaca.
|
|
|
|
## Hotspots Atuais
|
|
|
|
- [dispatch.rs](/Users/niltonconstantino/personal/workspace.personal/intrepid/prometeu/runtime/crates/console/prometeu-system/src/virtual_machine_runtime/dispatch.rs#L114)
|
|
- [system.rs](/Users/niltonconstantino/personal/workspace.personal/intrepid/prometeu/runtime/crates/console/prometeu-hal/src/syscalls/domains/system.rs#L4)
|
|
- [009-system-run-cart.md](/Users/niltonconstantino/personal/workspace.personal/intrepid/prometeu/runtime/docs/runtime/agendas/009-system-run-cart.md)
|
|
|
|
## Alvo da Discussao
|
|
|
|
Fechar a politica de fault e retorno do dominio `system`.
|
|
|
|
## O Que Precisa Ser Definido
|
|
|
|
1. Queries simples.
|
|
Decidir a politica de fault para consultas como `has_cart`.
|
|
|
|
2. `run_cart`.
|
|
Decidir como falhas operacionais de transicao devem ser expostas:
|
|
- `status`;
|
|
- `Trap`;
|
|
- `Panic`.
|
|
|
|
3. Relacao com firmware.
|
|
Delimitar quando a falha pertence ao app, ao firmware ou ao runtime.
|
|
|
|
## Dependencias
|
|
|
|
- `../specs/16a-syscall-policies.md`
|
|
- `009-system-run-cart.md`
|
|
|
|
## Critério de Saida Desta Agenda
|
|
|
|
Pode virar PR quando houver decisao escrita sobre:
|
|
|
|
- matriz de `status`/`Trap`/`Panic` para `system`;
|
|
- politica de retorno/falha de `run_cart`;
|
|
- relacao com firmware e crash surface.
|