Skip to content

feat: domain decomposition, As-Is/To-Be C4, billing BC, tests/obs, strangler craft #4

Description

@sraphaz

Problema

Na sessão plantae-hub-production (PLANTAE), o CLI/templates do Sky-Forge não entregaram de fábrica:

  1. Subdivisão de domínios / bounded contexts como artefato de primeira classe no intake→architect (só templates manuais + skill Cursor)
  2. Lente Uncle Bob / Clean Architecture aplicada à decomposição (Dependency Rule entre packages), além do craft-review.md pontual
  3. Visibilidade de testes e observabilidade (matriz por camada + ports) no pacote padrão
  4. Arquitetura As-Is + To-Be explícita (hoje o ciclo architect só sincroniza o que já existe; seed platform-evolution enviesa “migração”)
  5. Template de bounded context Billing/Entitlements (PSP vs app: Plan, Subscription, Entitlement, InvoiceRef, tax profile opcional — sem PAN)
  6. Metáfora/método documentado monólito → packages/services (Strangler Fig) para greenfield-of-platform sobre protótipo

Tivemos que escrever à mão em architecture/domains.md, craft-review.md, billing-domain.md, testing-observability.md, C4 As-Is/To-Be.

Pedido de feature

Adicionar ao pipeline Sky-Forge (skills + templates + opcionalmente CLI):

  • architecture/domains.md gerado a partir do brief/RFs (bounded contexts sugeridos)
  • Modo As-Is / To-Be no sky-c4-model quando intake_mode: brownfield_host ou flag greenfield_platform
  • Step sky-clean-craft que proponha strangler map (god modules → packages) com Dependency Rule
  • Template billing-domain.md + entidades entitlement/invoice ref
  • Template testing-observability.md (unit/contract/e2e + ObservabilityPort)
  • Evitar linguagem de “migração de usuários” quando o produto ainda não foi lançado (profile/docs)

Contexto

  • Repo consumidor: alchemiaotserver-brasil/Plantae_BR branch docs/prd-hub-sensores-production
  • Sessão: .sky/sessions/plantae-hub-production/
  • Workarounds já no export: outputs/plantae-hub-production/architecture/*

Aceite

  • Template + skill geram domains + As-Is/To-Be C4 com um comando/documentado
  • Craft review inclui strangler map
  • Billing + testing/obs templates no pacote architect
  • Docs do profile platform-evolution distinguem brownfield de código vs migração de usuários

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions