Agendas

Este diretório reúne agendas de discussão arquitetural para itens pendentes ou frágeis do runtime.

Objetivo:

  • explicitar a dor real do sistema;
  • delimitar o que precisa ser decidido antes de codar;
  • servir de base para futuras PRs de implementação JVM-grade.

As agendas atuais são:

  • 007-runtime-edge-test-plan.md
  • 008-packed-cartridge-loader-pmc.md
  • 009-system-run-cart.md
  • 010-system-fault-semantics-and-control-surface.md
  • 012-vm-owned-random-service.md
  • 014-app-home-filesystem-surface-and-semantics.md

Sequenciamento Recomendado

Ordem sugerida para discussão e futura execução:

  1. 012-vm-owned-random-service.md
  2. 014-app-home-filesystem-surface-and-semantics.md
  3. 007-runtime-edge-test-plan.md
  4. 008-packed-cartridge-loader-pmc.md
  5. 009-system-run-cart.md
  6. 010-system-fault-semantics-and-control-surface.md

Justificativa curta:

  • 011 foi fechada pela decisao 006.
  • 012 e o primeiro consumidor da base stateful VM-owned fechada em 006.
  • 013 foi fechada e absorvida por spec 08 (historico em learn/011).
  • 014 fecha o contrato de home para apps sem abrir FS global.
  • a decisao 007 fixa o nucleo de fault policy de fs; os detalhes ficam distribuidos entre spec 08 (game) e agenda 014 (app).
  • a decisao 008 fixa o contrato status-first de gfx.
  • a decisao 009 fixa o contrato status-first de audio.
  • a decisao 010 fixa o contrato status-first de asset.
  • a agenda 007 vem depois para transformar as decisoes em cobertura de regressao na borda do runtime.
  • 008 e importante, mas nao bloqueia bytecode/backend agora.
  • 009 e 010 ficam no fim porque run_cart nao e objetivo do ciclo atual.

Dependências principais:

  • 012 depende da decisao 006 e de 16/16a
  • 014 depende das decisoes 003/007, de 16a, de 12 (Hub/OS) e de 13 (app_mode)
  • 007 depende da estabilizacao minima das agendas de superficie/fault por dominio
  • 008 depende de contrato fechado de 13-cartridge.md + comportamento equivalente ao loader de diretorio
  • 009 depende da decisao 003, de 16a e da decisao 006, e deve alinhar com spec 08/agenda 014 quando usar fs
  • 010 depende de 16a e da 009

Regra de uso:

  • se a implementação exigir decisão estrutural, ela deve nascer daqui antes de virar PR de código;
  • se uma agenda já estiver resolvida, a PR derivada deve citar explicitamente qual decisão foi tomada;
  • se a agenda revelar ambiguidade demais, ela não deve ser convertida em PR até o alvo ficar preciso.