prometeu-runtime/docs/runtime/pull-requests/PR003-audio-status-first-surface-and-fault-matrix.md
2026-03-24 13:40:50 +00:00

1.4 KiB

PR003 - Audio Status-First Surface and Fault Matrix

Briefing

A decision 009 fixou que audio deve seguir status-first.

No MVP atual, audio.play e audio.play_sample devem retornar status:int.

Alvo

Aplicar a decisao 009 em spec e runtime para o dominio audio.

Arquivos principais:

  • docs/runtime/specs/05-audio-peripheral.md
  • crates/console/prometeu-hal/src/syscalls/domains/audio.rs
  • crates/console/prometeu-system/src/virtual_machine_runtime/dispatch.rs
  • crates/console/prometeu-drivers/src/audio.rs

Escopo Funcional

  • mudar surface de retorno de audio.play e audio.play_sample para status;
  • remover fallback implicito e no-op silencioso para erros operacionais;
  • validar faixas normativas (volume, pan, pitch) com status explicito;
  • limpar caminhos que poderiam escalar para Panic por input de app.

Fora de Escopo

  • novos comandos de audio (stop/set pan/set pitch etc) fora do contrato atual;
  • mudanca de arquitetura do mixer host.

Critérios de Aceite

  • ret_slots de audio.play e audio.play_sample atualizados no registry;
  • casos operacionais retornam status inteiro canonico;
  • voice_id invalido e asset/sample ausente nao ficam silenciosos;
  • sem Panic operacional no dominio.

Tests

  • cargo test -p prometeu-system
  • cargo test -p prometeu-drivers
  • cenarios com voice_id invalido, asset ausente e range invalido.