event

Revit Parameter Projection Approved

A steward promoted a Revit projection from `draft` to `approved`.

EventStatus: Implemented in api-v1

Purpose

Records steward promotion of a RevitParameterProjection after RevitProjectionApprovePolicy passes. Approval is idempotent when already approved and refused when archived — an archived projection must be reused back into draft first. Approve-time invariants that draft is allowed to violate (complete primary-usage facts, at least one enabled application for non-built-in definitions) are enforced here.

Payload

Envelope is { name, occurredAt, payload } (apps/api-v1/src/modules/shared/domain/events/DomainEvent.ts). All seven RevitParameterProjection* events share one payload type; occurredAt appears both on the envelope and in the payload.

FieldTypeMeaning
projectionIdstringProjection domain_id
parameterKeyIdstringThe one canonical key this projection expresses
occurredAtDateWhen approval happened

Raised by

  • RevitParameterProjection.approveapps/api-v1/src/modules/bim-ontology/core/domain/revit/RevitParameterProjection.ts
  • ApproveRevitParameterProjectionUseCaseapps/api-v1/src/modules/bim-ontology/core/application/use-cases/ApproveRevitParameterProjectionUseCase.ts
  • HTTP: approveRevitParameterProjection

Consumers

No subscriber in this module. No handler is registered for any of the seven projection events in bim-ontology.composition.ts; only the '*' DomainEventAuditLogger sees them. Nothing is triggered by projection approval — the shared parameter file is generated on demand.