# Roadmap

## Fase 1 — Fundação (atual)
- [x] Estrutura de pastas (Core, Domain, Application, Infrastructure, Presentation, Docs).
- [x] Documentação inicial (PRODUCT_OVERVIEW, ARCHITECTURE, MODULES, ROADMAP, CODING_STANDARDS).
- [x] Modelos de domínio e enums em C#.
- [x] Bootstrap: AppBootstrap, AppConfig, SceneRouter, ServiceRegistry.
- [x] Serviços mockados (Space, Supplier, Template).
- [x] Cena real Bootstrap.unity com GameObject de inicialização e AppConfig.asset configurado.
- [x] Fluxo de bootstrap documentado e coerente.

## Fase 2 — Catálogos e fluxo básico (planejado)
- Catálogo de espaços (listagem e detalhe).
- Catálogo de fornecedores.
- Fluxo básico de projetos de eventos e propostas.
- UI mínima para navegação.

## Fase 3 — Visualização e MR (futuro)
- Base atual já preparada: ShowroomItem com PlacementZone, SpatialAnchorType e DisplayOrder; **plano lógico do espaço** com SpaceLayoutSlot e associação itens → slots; **regras de compatibilidade** e **validação da composição** (com revalidação automática); **presets de layout**; **temas visuais / direção estética**; **narrativa de apresentação comercial**; **briefing comercial do cliente** (ClientEventBrief, ClientBriefView, SetClientBrief; resumo com evento, cliente, convidados, orçamento alvo; revisão com aderência orçamento/mood; comparação com orçamento vs alvo e tema vs mood desejado); **score de aderência da proposta** (ProposalFitScore, IProposalFitScoringService, MockProposalFitScoringService; FitScore em EventProjectProposal; recálculo em sync, SetClientBrief e LoadProposal; ProposalFitScoreView; resumo com score e status Alta/Média/Baixa; comparação com score, melhor orçamento e melhor mood); **capacidade do espaço e adequação operacional** (Space com MaxRecommendedGuests/MaxGuestsStanding/MaxGuestsSeated; SpaceLayoutSlot com CapacityContribution, IsSeatingArea; ShowroomItem com SeatingProvided, StandingAreaImpact; SpaceCapacityEvaluationResult, ISpaceCapacityEvaluationService, MockSpaceCapacityEvaluationService; CapacityFitScore não neutro; ProposalReviewSummary.CapacitySummary; SpaceCapacityView; comparação com capacidade e melhor acomodação); **fluxo do evento e logística operacional** (SpaceLayoutSlot com IsCirculationCritical, AccessPriority, CongestionRiskWeight; ShowroomItem com BlocksCirculation, RequiresServiceAccess, FootprintWeight; EventFlowEvaluationResult, IEventFlowEvaluationService, MockEventFlowEvaluationService; fit score e review incorporam fluxo; ProposalReviewSummary.FlowSummary; EventFlowView; comparação com fluxo e melhor fluxo); **cronograma operacional e sequência de montagem** (ShowroomItem com SetupDurationMinutes, RequiresEarlySetup, SetupDependencyTypes, RequiresSupplierOnSite, ExecutionPriority; EventSetupTimelineEvaluationResult, IEventSetupTimelineService, MockEventSetupTimelineService; fit score e review incorporam cronograma; ProposalReviewSummary.SetupTimelineSummary; EventSetupTimelineView; comparação com montagem e mais pronta para execução); **cobertura operacional por fornecedores** (Supplier com SupportedItemTypes, SupportsEarlySetup, SupportsOnSiteExecution, SupplierPriorityLevel, CapacityTier; SupplierCoverageEvaluationResult, ISupplierCoverageEvaluationService, MockSupplierCoverageEvaluationService; fit score e review incorporam cobertura; ProposalReviewSummary.SupplierCoverageSummary; SupplierCoverageView; comparação com melhor cobertura); **pacotes comerciais e tiers de proposta** (ProposalCommercialPackage, CommercialPackageTier, EventProjectProposal.SelectedCommercialPackageId, ICommercialPackageService, MockCommercialPackageService; ApplyCommercialPackage; CommercialPackageView; ProposalReviewSummary.CommercialReadingSummary; comparação com tier e melhor encaixe comercial); **momentos/fases do evento e jornada da experiência** (EventMomentPhase, EventMomentPhaseType, ProposalMomentPlan, EventProjectProposal.MomentPlans; IEventMomentPlanningService, MockEventMomentPlanningService; EventMomentPlanView; ProposalReviewSummary.JourneySummary e MomentPlanCount; comparação com jornada mais completa e fases por proposta); **transições entre momentos/fases e continuidade da experiência** (EventMomentTransition, EventMomentTransitionType, EventProjectProposal.MomentTransitions; IEventMomentTransitionService, MockEventMomentTransitionService; EventMomentTransitionView; ProposalReviewSummary.TransitionSummary, TransitionCount, AverageSmoothnessScore; comparação com jornada mais fluida, menos reconfigurações, menor atrito; resumo com transições e fluidez média); **roteiro guiado e apresentação ao cliente** (ProposalGuidedTourStep, ProposalGuidedTourFocusType, EventProjectProposal.GuidedTourSteps; IProposalGuidedTourService, MockProposalGuidedTourService; ProposalGuidedTourView; ProposalReviewSummary.GuidedTourSummary, GuidedTourStepCount, ReadyForGuidedPresentation; comparação com apresentação mais forte e roteiro mais claro; resumo com passos do roteiro e prontidão para apresentação guiada); **hotspots/pontos de destaque visuais** (ProposalVisualHotspot, ProposalVisualHotspotType, EventProjectProposal.VisualHotspots; IProposalVisualHotspotService, MockProposalVisualHotspotService; ProposalVisualHotspotView; ProposalReviewSummary.VisualHotspotSummary, VisualHotspotCount, PrimaryHotspotTitle, HasPremiumHotspots; comparação com maior impacto visual e melhor upsell visual; resumo com hotspots e principal); **estados visuais da cena por fase** (ProposalSceneState, EventProjectProposal.SceneStates; IProposalSceneStateService, MockProposalSceneStateService; ProposalSceneStateView "Estados da Cena / Evolução Visual do Evento"; ProposalReviewSummary.SceneStateSummary, SceneStateCount, HasStructuredVisualEvolution; comparação com evolução visual mais rica e melhor continuidade visual; resumo com estados da cena e evolução visual estruturada; preparação para visualização dinâmica no Quest 3); **comparação temporal entre propostas** (ProposalTemporalComparison, ProposalPhaseComparison, EventProject.LastTemporalComparison; IProposalTemporalComparisonService, MockProposalTemporalComparisonService; ProposalTemporalComparisonView "Comparação Temporal / Evolução das Propostas"; comparação geral com melhor evolução da experiência, melhor jornada visual, melhor continuidade operacional, melhor impacto comercial; resumo com comparação temporal Sim/Não e fases na comparação; preparação para apresentações comparativas muito mais fortes no Quest 3); **recomendação executiva da melhor proposta** (ProposalRecommendationSummary, EventProject.LastRecommendationSummary; IProposalRecommendationService, MockProposalRecommendationService; ProposalRecommendationView "Recomendação Final / Melhor Proposta"; resumo com recomendação final Sim/Não, proposta recomendada e confiança; preparação para apresentação decisiva no Quest 3); **resumo executivo de decisão e fechamento** (ProposalDecisionSummary, ProposalDecisionReadinessLevel, EventProject.LastDecisionSummary; IProposalDecisionSummaryService, MockProposalDecisionSummaryService; ProposalDecisionSummaryView "Resumo Executivo / Fechamento"; resumo com resumo executivo Sim/Não, prontidão para fechamento e próxima ação; preparação para experiência de fechamento no Quest 3); **plano de apresentação para Quest 3 / realidade mista** (ProposalMRPresentationPlan, MRPresentationTargetMode, EventProjectProposal.MRPresentationPlan; IMRPresentationPlanningService, MockMRPresentationPlanningService; MRPresentationPlanView "Plano Quest / Apresentação em Realidade Mista"; resumo com plano Quest/MR, modo de apresentação e pronto p/ mapeamento MR; revisão e comparação com mais pronta p/ Quest, melhor tour guiado, melhor fechamento imersivo; ponte entre camada web/comercial e futura experiência imersiva); **primeira base executável e de navegação para Quest** (cena QuestPresentation.unity; **QuestPresentationCameraRig** para câmera/orientação headset; QuestPresentationSession; QuestPresentationNavigationController e input; **QuestPresentationHUD** overlay e **QuestWorldUIPanelLayout** UI espacial em World Space — painel principal, lateral, progresso com dados reais; alternância HUD ↔ painéis espaciais com botão/tecla U; QuestGuidedStepView, QuestHotspotView, QuestSceneStateView; fallback quando faltam dados; **base de plataforma Quest** em Docs/QUEST_PLATFORM.md; base para futura UI imersiva e MR); **revisão comercial e comparação de versões** (ProposalReviewSummary, ProposalVersionSnapshot, IProposalReviewService, SavedSnapshots); **múltiplas propostas por projeto** (EventProjectProposal, Proposals, ActiveProposalId, AppliedPresetId, duplicar/ativar/renomear, ProjectProposalComparisonView). O usuário pode preencher **briefing**, aplicar cenários base, temas, gerar/regenerar narrativa, **revisar proposta**, **salvar versões**, **comparar propostas internas**, **ver score de aderência**, **avaliar fluxo/logística**, **avaliar cronograma/montagem**, **avaliar cobertura de fornecedores** e **aplicar pacotes comerciais** (tiers, upsell/downsell). PresetId em snapshots e propostas fica coerente. Isso prepara a personalização, a recomendação inteligente futura e a experiência de comparação/apresentação no Quest 3.
- Visualização 3D de espaços/eventos.
- Integração Meta Quest 3 e realidade mista (espaços e clientes usando headset(s)).
- Uso dos metadados espaciais e do layout lógico para posicionar elementos no espaço real no headset.
- Experiência imersiva para o cliente final.

## Camada Web — Fundação (Etapa 64) e base funcional CRM (Etapa 65)
- [x] Documentação em Docs/Web/ (incl. WEB_CRM_PIPELINE para pipeline e papel das sessões Quest).
- [x] Estrutura Assets/Web/; modelos evoluídos (SalesOpportunity com prioridade e próxima ação; SessionRecord com HasImprovementPlan, LastSessionTimestamp).
- [x] Pipeline comercial: New Lead → Contacted → Proposal Sent → Quest Session Done → Follow-up → Ready to Close → Won / Lost.
- [x] HotelCRMDashboardController: indicadores, pipeline, relação oportunidade–sessão Quest, listas (Leads, Oportunidades, Propostas, Sessões, Follow-ups); cena HotelCRM.
- [x] Indicadores simples (ICRMIndicatorsService) e dados mock enriquecidos.
- [x] Camada Quest mantida intacta (sem alterações destrutivas).
- [x] **Etapa 66 — Ponte Quest → CRM:** QuestSessionSnapshot, QuestSessionToCRMMapper, ApplyQuestSessionToOpportunity (mock), ApplyQuestResultPanel; SessionRecord e SalesOpportunity com campos de última sessão Quest; indicadores derivados; Bridge (QuestOutcomeToSnapshotAdapter); WEB_QUEST_BRIDGE. Sem alterações na camada Quest.
- [x] **Etapa 67 — Painel Produtor/Prestador:** ProducerOrder, ProducerRequirementItem, ProducerExecutionNote, ProducerStatusUpdate; ProducerOrderStatus, ProducerRequirementType; painel mock (Pedidos, Escopo/Origem, Requisitos, Status, Observações); cena ProducerDashboard; WEB_PRODUCER. Quest e CRM do hotel intactos; produtor isolado.

## Fase 4 — Integrações e produção (futuro)
- Backend e API reais.
- Autenticação e autorização.
- Modelo de assinatura para fornecedores e espaços.
- Publicação e operação em produção.

---

*Este documento será atualizado conforme o projeto avança.*
