Documentation
¶
Overview ¶
ENGMODEL-OWNER-UNIT: FU-AIRBORNE-ASSURANCE-EXPORTER
ENGMODEL-OWNER-UNIT: FU-ASCIIDOC-GENERATOR
ENGMODEL-OWNER-UNIT: FU-SYSTEM-COMPOSITION
ENGMODEL-OWNER-UNIT: FU-GEMARA-EXPORTER
ENGMODEL-OWNER-UNIT: FU-CLI-ORCHESTRATION
ENGMODEL-OWNER-UNIT: FU-LOBSTER-EXPORTER
ENGMODEL-OWNER-UNIT: FU-NAF-EXPORTER
ENGMODEL-OWNER-UNIT: FU-OSCAL-EXPORTER
ENGMODEL-OWNER-UNIT: FU-VALIDATION-ENGINE
ENGMODEL-OWNER-UNIT: FU-MODEL-CHANGE
ENGMODEL-OWNER-UNIT: FU-STRUCTURIZR-EXPORTER
ENGMODEL-OWNER-UNIT: FU-SYSML-EXPORTER
ENGMODEL-OWNER-UNIT: FU-THREAT-EXPORTER
ENGMODEL-OWNER-UNIT: FU-ALLOCATION-TRACE
ENGMODEL-OWNER-UNIT: FU-TRLC-EXPORTER
Package engmodel is the public Go API of engineering-model-go. Every other package of the module is internal; the types and functions listed here are the supported surface.
The API areas are:
- Model: LoadBundle reads an engmod.yml manifest and its domain documents into a Bundle (Requirement, FunctionalUnit, Interface, Decision, CatalogEntry and the other document and entity types are aliases of the loader's types). LoadCanonicalBundle, NewCanonicalBundle and ProjectSemanticModel give the canonical semantic model; BuildAuthoringContract describes how to author it. LoadWorkspace, FindWorkspace and FindWorkspaceWith resolve engmod.work.yml workspaces.
- Validation: ValidateBundle returns Diagnostic values; HasErrors, SortDiagnostics, DedupeDiagnostics and AuthoringRules work on them.
- Composition: ResolveCompositionProjection and the Generate*Composition* functions resolve and render systems of systems across model modules.
- Views and documents: Generate and GenerateFromFile project one view to Mermaid; GenerateAsciiDoc* renders the architecture document.
- Trace: BuildTraceMatrixFromFiles links requirements, code and tests.
- Exports: Structurizr DSL, SysML v2, NAF, TRLC, LOBSTER, Threat Dragon and Open Threat Model, Gemara, OSCAL and airborne assurance packages (the Generate*, Export* and Validate* functions named after each format).
The implementation lives in internal/... packages (internal/asciidoc for the publication, internal/export/<format> for the exporters, internal/trace, internal/composition and others); the files of this package are type aliases, constants and thin wrappers over them, grouped by area (model_api.go, validate_api.go, api_<area>.go).
The command-line tools under cmd/ are thin wrappers over this API.
ENGMODEL-OWNER-UNIT: FU-MODEL-LOADER
ENGMODEL-OWNER-UNIT: FU-VALIDATION-ENGINE
Index ¶
- Constants
- Variables
- func BuildTraceMatrixFromFiles(modelPath, requirementsPath, codeRoot string) (TraceMatrix, []Diagnostic, error)
- func BuildTraceMatrixFromFilesWith(modelPath, requirementsPath, codeRoot string, options TraceOptions) (TraceMatrix, []Diagnostic, error)
- func CompareSysMLV2RoundTrip(expected, actual SemanticModel) []string
- func GenerateGemaraOSCALAssessmentResults(bundle Bundle, requirements RequirementsDocument, codeRoot string, ...) (string, error)
- func GenerateGemaraOSCALAssessmentResultsFromFiles(architecturePath, requirementsPath, codeRoot string, ...) (string, error)
- func GenerateGemaraOSCALCatalog(bundle Bundle, options GemaraExportOptions) (string, error)
- func GenerateGemaraOSCALCatalogFromFile(architecturePath string, options GemaraExportOptions) (string, error)
- func GenerateOSCALProfile(bundle Bundle, options OSCALProfileOptions) (string, error)
- func GenerateOSCALProfileFromFile(path string, options OSCALProfileOptions) (string, error)
- func HasComposition(bundle Bundle) bool
- func HasErrors(diags []Diagnostic) bool
- func HasSemanticErrors(diagnostics []SemanticDiagnostic) bool
- func ParseQualifiedReference(ref string) (alias, id string, err error)
- func ProjectSemanticModel(bundle Bundle) (SemanticModel, []SemanticDiagnostic)
- func QualifyReference(alias, id string) (string, error)
- func ResolveCompositionProjection(bundle Bundle) (CompositionProjection, CompositionResult, error)
- func ResolveCompositionProjectionWith(bundle Bundle, options ResolutionOptions) (CompositionProjection, CompositionResult, error)
- func ValidateSysMLV2Coverage(manifest SysMLCoverageManifest) error
- func WriteCompositionLock(path string, lock CompositionLockDocument) error
- type Actor
- type AirborneApproval
- type AirborneAssuranceOptions
- type AirborneAssuranceResult
- type AirborneProfile
- type AirborneReview
- type AirborneTool
- type AirborneVerificationCase
- type Allocation
- type ArchitectureDocument
- type AsciiDocOptions
- type AsciiDocResult
- type AssuranceDocument
- type AssuranceModel
- type AttackVector
- type AuthoredArchitecture
- type AuthoringContract
- type AuthoringDocument
- type AviationDocument
- type AviationProfile
- type AviationValidationError
- type BehaviorDocument
- type BehaviorModel
- type Bundle
- type CanonicalBundle
- type CatalogDocument
- type CatalogEntry
- type CatalogGroups
- type CertificationLiaison
- type ComplianceDocument
- type ComplianceMapping
- type ComplianceModel
- type ComplianceProfile
- type ComposedSystem
- type CompositionLockDependency
- type CompositionLockDocument
- type CompositionModel
- type CompositionProjection
- type CompositionResult
- type ConfigurationArtifact
- type ConfigurationBaseline
- type ConfigurationBuild
- type ContractEntry
- type ContractModel
- type Control
- type ControlEvidence
- type ControlVerification
- type ControlVerificationEvidence
- type DanglingLink
- type DataObject
- type Decision
- type DecisionsDocument
- type DependencyGuide
- type DeploymentTarget
- type DesignDocument
- type DesignFunctionalGroup
- type DesignFunctionalUnit
- type DesignModel
- type DesignView
- type Diagnostic
- func DedupeDiagnostics(lists ...[]Diagnostic) []Diagnostic
- func QualifiedReferenceDiagnostics(bundle Bundle, result CompositionResult) []Diagnostic
- func SortDiagnostics(in []Diagnostic) []Diagnostic
- func SuppressWaivedDiagnostics(diags []Diagnostic, waivers map[string][]string) []Diagnostic
- func ValidateBundle(b Bundle) []Diagnostic
- type DocumentControl
- type DocumentDefinition
- type DocumentReferences
- type DocumentSection
- type Event
- type EvidenceReference
- type Expected
- type Flow
- type FlowStep
- type FunctionalGroup
- type FunctionalUnit
- type GemaraCrossReferenceError
- type GemaraEvaluationResult
- type GemaraExportOptions
- type GemaraExportResult
- type HardwareInterface
- type HardwareItem
- type ImportedEntityProvenance
- type IndependenceRecord
- type InferenceHints
- type Interface
- type LifecycleDataRecord
- type LintRun
- type LintWaiver
- type LobsterActivityExportOptions
- type LobsterActivityExportResult
- type ManifestDependency
- type ManifestDocument
- type ManifestPublication
- type Mapping
- type MaterializedAllocation
- type MetamodelPropertyValue
- type MetamodelValue
- type ModelMeta
- type ModuleIdentity
- type Multiplicity
- type NAFConcern
- type NAFExportResult
- type NAFProduct
- type NAFProfile
- type NAFStakeholder
- type OSCALAPDocument
- type OSCALAPOptions
- type OSCALAPResult
- type OSCALARDocument
- type OSCALAROptions
- type OSCALARResult
- type OSCALPOAMDocument
- type OSCALPOAMOptions
- type OSCALPOAMResult
- type OSCALProfileOptions
- type OSCALSSPDocument
- type OSCALSSPOptions
- type OSCALSSPResult
- type ObjectiveReference
- type POAMArtifact
- type POAMItem
- type ProblemReport
- type PublishedProjection
- type PublishedProjectionEntity
- type ReferencedElement
- type RelationshipPair
- type Requirement
- type RequirementAssurance
- type RequirementsDelta
- type RequirementsDeltaOperations
- type RequirementsDeltaResult
- type RequirementsDocument
- type ResolutionOptions
- type Result
- type Risk
- type RiskEvidence
- type SQAAudit
- type Satisfaction
- type SemanticContent
- type SemanticDiagnostic
- type SemanticElement
- type SemanticElementKind
- type SemanticExpression
- type SemanticFeature
- type SemanticFeatureKind
- type SemanticImport
- type SemanticMetadata
- type SemanticModel
- type SemanticQuantity
- type SemanticRelationship
- type SemanticRelationshipKind
- type SemanticSeverity
- type SemanticValue
- type Severity
- type SpecDeltaOperation
- type SpecDeltaOptions
- type SpecDeltaResult
- type StableIdentifierGuide
- type State
- type StructuralCoverage
- type StructurizrExportResult
- type Subsystem
- type SysMLCoverageAuthority
- type SysMLCoverageCheckEvidence
- type SysMLCoverageManifest
- type SysMLCoverageTotals
- type SysMLExportResult
- type SysMLExtensionCoverage
- type SysMLMetaclassCoverage
- type SysMLPropertyCoverage
- type SysMLRelationshipCoverage
- type SysMLRendererCoverage
- type SysMLRendererEvidence
- type SysMLRoundTripResult
- type TRLCExportOptions
- type TRLCExportResult
- type ThreatAssumption
- type ThreatAssumptionEvidence
- type ThreatMitigation
- type ThreatMitigationEvidence
- type ThreatModelExportOptions
- type ThreatModelExportResult
- type ThreatModelFormat
- type ThreatOutOfScope
- type ThreatOutOfScopeEvidence
- type ThreatScenario
- type ThreatScenarioEvidence
- type ToolAssessment
- type TraceCodeRef
- type TraceDelegatedStatus
- type TraceDelegation
- type TraceMatrix
- type TraceOptions
- type TraceProvenance
- type TraceRow
- type TraceSummary
- type TrustBoundary
- type UncoveredDisposition
- type ValidationRules
- type VerificationExecution
- type VerificationProcedure
- type View
- type ViewsDocument
- type WorkspaceDocument
- type WorkspaceReplacement
Constants ¶
const ( SpecDeltaAdded = reqdelta.SpecDeltaAdded SpecDeltaModified = reqdelta.SpecDeltaModified )
SpecDeltaAdded and SpecDeltaModified select "## ADDED Requirements" (default) or "## MODIFIED Requirements".
const ( // CurrentSchemaVersion is the document schemaVersion this release reads. CurrentSchemaVersion = model.CurrentSchemaVersion // AuthoringContractVersion identifies the authoring contract format. AuthoringContractVersion = model.AuthoringContractVersion // WorkspaceFileName is the workspace file looked up from a model directory upwards. WorkspaceFileName = model.WorkspaceFileName // WorkspaceEnv names the environment variable that selects the workspace. WorkspaceEnv = model.WorkspaceEnv // WorkspaceOff is the workspace mode that disables workspace lookup. WorkspaceOff = model.WorkspaceOff )
Model constants.
const ( SeverityError = validate.SeverityError SeverityWarning = validate.SeverityWarning )
Diagnostic severities.
const AirborneDisclaimer = airborne.Disclaimer
const CompositionLocalLockFileName = composition.CompositionLocalLockFileName
CompositionLocalLockFileName receives the resolved lock while workspace replacements are active, so the committed lock never pins unpublished content.
const CompositionLockFileName = composition.CompositionLockFileName
const GemaraVersion = gemara.Version
GemaraVersion is the Gemara specification version stamped into every artifact's metadata.
const LockEnv = composition.LockEnv
LockEnv selects the lock mode: "check" compares with the committed lock and writes nothing; "write" (or unset) writes the lock.
const LockModeCheck = composition.LockModeCheck
LockModeCheck compares the resolved lock with engmod.lock.yml and writes nothing.
const LockModeWrite = composition.LockModeWrite
LockModeWrite writes engmod.lock.yml (or the local lock in workspace mode).
const ModuleCacheEnv = composition.ModuleCacheEnv
ModuleCacheEnv selects the module cache mode: "refresh" re-fetches every registry dependency; "reuse" reuses cached modules offline; unset applies the defaults of cacheMode.
const ModuleCacheRefresh = composition.ModuleCacheRefresh
ModuleCacheRefresh re-fetches every registry dependency.
const ModuleCacheReuse = composition.ModuleCacheReuse
ModuleCacheReuse reuses a cached module without contacting the registry. Set explicitly it applies in every lock mode; it is also the default except for lock check mode and lock regeneration (see cacheMode).
const ThreatModelFormatOpenOTM = threatmodel.FormatOpenOTM
const ThreatModelFormatThreatDragonV2 = threatmodel.FormatThreatDragonV2
Variables ¶
var ErrNoAviationProfile = airborne.ErrNoAviationProfile
var ErrNoLobsterActivities = lobster.ErrNoActivities
var ErrNoOSCALCompliance = oscal.ErrNoCompliance
var ErrNoOSCALProfiles = oscal.ErrNoProfiles
ErrNoOSCALProfiles indicates that the model has no compliance profile to publish as an aggregate OSCAL profile.
var ErrNoPOAMItems = oscal.ErrNoPOAMItems
Functions ¶
func BuildTraceMatrixFromFiles ¶
func BuildTraceMatrixFromFiles(modelPath, requirementsPath, codeRoot string) (TraceMatrix, []Diagnostic, error)
BuildTraceMatrixFromFiles loads a model, scans its code root, scopes the code to the model, validates trace integrity, and returns the matrix together with diagnostics. TRLC-LINKS: REQ-EMG-028, REQ-EMG-030, REQ-EMG-050, REQ-EMG-051 ENGMODEL-LINKS: FU-ALLOCATION-TRACE, FU-MODEL-LOADER, FU-CODEMAP-INFERENCE
func BuildTraceMatrixFromFilesWith ¶ added in v0.4.0
func BuildTraceMatrixFromFilesWith(modelPath, requirementsPath, codeRoot string, options TraceOptions) (TraceMatrix, []Diagnostic, error)
BuildTraceMatrixFromFilesWith is BuildTraceMatrixFromFiles with explicit resolution options. With composition it composes once, resolves code ENGMODEL-LINKS alias::ID against the dependencies' published entities (requirements stay local), returns the composition diagnostics, and reports each delegated requirement's own status in its target repository. TRLC-LINKS: REQ-EMG-028, REQ-EMG-030, REQ-EMG-050, REQ-EMG-051, REQ-EMG-065, REQ-EMG-066, REQ-EMG-067 ENGMODEL-LINKS: FU-ALLOCATION-TRACE, FU-MODEL-LOADER, FU-CODEMAP-INFERENCE, FU-SYSTEM-COMPOSITION
func CompareSysMLV2RoundTrip ¶ added in v0.2.0
func CompareSysMLV2RoundTrip(expected, actual SemanticModel) []string
CompareSysMLV2RoundTrip reports differences in stable identity, ownership, relationships, expressions, references, and typed extensions.
TRLC-LINKS: REQ-EMG-036, REQ-EMG-037
func GenerateGemaraOSCALAssessmentResults ¶
func GenerateGemaraOSCALAssessmentResults(bundle Bundle, requirements RequirementsDocument, codeRoot string, options GemaraExportOptions) (string, error)
GenerateGemaraOSCALAssessmentResults converts the Gemara Evaluation Log to OSCAL Assessment Results JSON via the go-gemara SDK. Returns "" when there is nothing to evaluate. TRLC-LINKS: REQ-EMG-015, REQ-EMG-035, REQ-EMG-036 ENGMODEL-LINKS: FU-GEMARA-EXPORTER, FU-OSCAL-EXPORTER, CTRL-TRACEABILITY-COVERAGE
func GenerateGemaraOSCALAssessmentResultsFromFiles ¶
func GenerateGemaraOSCALAssessmentResultsFromFiles(architecturePath, requirementsPath, codeRoot string, options GemaraExportOptions) (string, error)
GenerateGemaraOSCALAssessmentResultsFromFiles loads inputs and emits OSCAL Assessment Results derived from the Gemara evaluation log. TRLC-LINKS: REQ-EMG-015 ENGMODEL-LINKS: FU-GEMARA-EXPORTER, FU-OSCAL-EXPORTER, CTRL-TRACEABILITY-COVERAGE
func GenerateGemaraOSCALCatalog ¶
func GenerateGemaraOSCALCatalog(bundle Bundle, options GemaraExportOptions) (string, error)
GenerateGemaraOSCALCatalog converts the Gemara Control Catalog to an OSCAL Catalog JSON document via the go-gemara SDK. Returns "" when there are no controls. TRLC-LINKS: REQ-EMG-015, REQ-EMG-035, REQ-EMG-036 ENGMODEL-LINKS: FU-GEMARA-EXPORTER, FU-OSCAL-EXPORTER, CTRL-TRACEABILITY-COVERAGE
func GenerateGemaraOSCALCatalogFromFile ¶
func GenerateGemaraOSCALCatalogFromFile(architecturePath string, options GemaraExportOptions) (string, error)
GenerateGemaraOSCALCatalogFromFile loads the model and emits an OSCAL Catalog derived from the Gemara Control Catalog. TRLC-LINKS: REQ-EMG-015 ENGMODEL-LINKS: FU-GEMARA-EXPORTER, FU-OSCAL-EXPORTER, CTRL-TRACEABILITY-COVERAGE
func GenerateOSCALProfile ¶ added in v0.2.0
func GenerateOSCALProfile(bundle Bundle, options OSCALProfileOptions) (string, error)
GenerateOSCALProfile emits a deterministic OSCAL 1.1.2 aggregate profile so multi-framework SSPs import every framework they implement. TRLC-LINKS: REQ-EMG-013 ENGMODEL-LINKS: FU-OSCAL-EXPORTER, CTRL-TRACEABILITY-COVERAGE
func GenerateOSCALProfileFromFile ¶ added in v0.2.0
func GenerateOSCALProfileFromFile(path string, options OSCALProfileOptions) (string, error)
GenerateOSCALProfileFromFile loads a model and emits one profile importing every authored compliance profile. TRLC-LINKS: REQ-EMG-013 ENGMODEL-LINKS: FU-OSCAL-EXPORTER, CTRL-TRACEABILITY-COVERAGE
func HasComposition ¶
HasComposition reports whether the model declares any subsystems. TRLC-LINKS: REQ-EMG-016 ENGMODEL-LINKS: FU-SYSTEM-COMPOSITION
func HasErrors ¶ added in v0.5.0
func HasErrors(diags []Diagnostic) bool
HasErrors reports whether any diagnostic has SeverityError. ENGMODEL-LINKS: FU-VALIDATION-ENGINE, STATE-MODEL-VALID, STATE-MODEL-INVALID TRLC-LINKS: REQ-EMG-001, REQ-EMG-009, REQ-EMG-011
func HasSemanticErrors ¶ added in v0.5.0
func HasSemanticErrors(diagnostics []SemanticDiagnostic) bool
HasSemanticErrors reports whether any semantic diagnostic is an error. ENGMODEL-LINKS: FU-MODEL-LOADER, DO-CANONICAL-SEMANTIC-MODEL TRLC-LINKS: REQ-EMG-035, REQ-EMG-036
func ParseQualifiedReference ¶ added in v0.5.0
ParseQualifiedReference splits an alias::ID reference. ENGMODEL-LINKS: FU-MODEL-LOADER, FU-SYSTEM-COMPOSITION TRLC-LINKS: REQ-EMG-049, REQ-EMG-051
func ProjectSemanticModel ¶ added in v0.5.0
func ProjectSemanticModel(bundle Bundle) (SemanticModel, []SemanticDiagnostic)
ProjectSemanticModel projects a bundle into the canonical semantic model and returns the projection diagnostics. ENGMODEL-LINKS: FU-MODEL-LOADER, DO-CANONICAL-SEMANTIC-MODEL, DO-ARCHITECTURE-MODEL TRLC-LINKS: REQ-EMG-035
func QualifyReference ¶ added in v0.5.0
QualifyReference joins a dependency alias and a local ID into alias::ID. ENGMODEL-LINKS: FU-MODEL-LOADER, FU-SYSTEM-COMPOSITION TRLC-LINKS: REQ-EMG-049, REQ-EMG-051
func ResolveCompositionProjection ¶ added in v0.2.0
func ResolveCompositionProjection(bundle Bundle) (CompositionProjection, CompositionResult, error)
ResolveCompositionProjection resolves and validates composition for a bundle. TRLC-LINKS: REQ-EMG-050, REQ-EMG-051
func ResolveCompositionProjectionWith ¶ added in v0.4.0
func ResolveCompositionProjectionWith(bundle Bundle, options ResolutionOptions) (CompositionProjection, CompositionResult, error)
ResolveCompositionProjectionWith is ResolveCompositionProjection under explicit workspace and lock modes. TRLC-LINKS: REQ-EMG-050, REQ-EMG-051, REQ-EMG-063, REQ-EMG-064
func ValidateSysMLV2Coverage ¶ added in v0.2.0
func ValidateSysMLV2Coverage(manifest SysMLCoverageManifest) error
ValidateSysMLV2Coverage rejects any gap or stale/tampered evidence.
TRLC-LINKS: REQ-EMG-039, REQ-EMG-040
func WriteCompositionLock ¶ added in v0.2.0
func WriteCompositionLock(path string, lock CompositionLockDocument) error
WriteCompositionLock writes deterministic generated dependency state. TRLC-LINKS: REQ-EMG-047, REQ-EMG-048, REQ-EMG-049, REQ-EMG-051
Types ¶
type Actor ¶ added in v0.5.0
Model types. Each is an alias of the internal model type, so values move freely between the facade and every generator in this package. The set is every exported type reachable from Bundle, CanonicalBundle, WorkspaceDocument, ManifestDocument, AuthoringContract and SemanticModel.
type AirborneApproval ¶ added in v0.5.0
type AirborneApproval = model.AirborneApproval
Model types. Each is an alias of the internal model type, so values move freely between the facade and every generator in this package. The set is every exported type reachable from Bundle, CanonicalBundle, WorkspaceDocument, ManifestDocument, AuthoringContract and SemanticModel.
type AirborneAssuranceOptions ¶ added in v0.2.0
type AirborneAssuranceResult ¶ added in v0.2.0
func GenerateAirborneAssuranceFromFile ¶ added in v0.2.0
func GenerateAirborneAssuranceFromFile(manifestPath string, options AirborneAssuranceOptions) (AirborneAssuranceResult, error)
GenerateAirborneAssuranceFromFile validates and renders the complete evidence-readiness package. It does not determine compliance or certification. TRLC-LINKS: REQ-EMG-053, REQ-EMG-054, REQ-EMG-055
type AirborneProfile ¶ added in v0.5.0
type AirborneProfile = model.AirborneProfile
Model types. Each is an alias of the internal model type, so values move freely between the facade and every generator in this package. The set is every exported type reachable from Bundle, CanonicalBundle, WorkspaceDocument, ManifestDocument, AuthoringContract and SemanticModel.
type AirborneReview ¶ added in v0.5.0
type AirborneReview = model.AirborneReview
Model types. Each is an alias of the internal model type, so values move freely between the facade and every generator in this package. The set is every exported type reachable from Bundle, CanonicalBundle, WorkspaceDocument, ManifestDocument, AuthoringContract and SemanticModel.
type AirborneTool ¶ added in v0.5.0
type AirborneTool = model.AirborneTool
Model types. Each is an alias of the internal model type, so values move freely between the facade and every generator in this package. The set is every exported type reachable from Bundle, CanonicalBundle, WorkspaceDocument, ManifestDocument, AuthoringContract and SemanticModel.
type AirborneVerificationCase ¶ added in v0.5.0
type AirborneVerificationCase = model.AirborneVerificationCase
Model types. Each is an alias of the internal model type, so values move freely between the facade and every generator in this package. The set is every exported type reachable from Bundle, CanonicalBundle, WorkspaceDocument, ManifestDocument, AuthoringContract and SemanticModel.
type Allocation ¶ added in v0.5.0
type Allocation = model.Allocation
Model types. Each is an alias of the internal model type, so values move freely between the facade and every generator in this package. The set is every exported type reachable from Bundle, CanonicalBundle, WorkspaceDocument, ManifestDocument, AuthoringContract and SemanticModel.
type ArchitectureDocument ¶ added in v0.5.0
type ArchitectureDocument = model.ArchitectureDocument
Model types. Each is an alias of the internal model type, so values move freely between the facade and every generator in this package. The set is every exported type reachable from Bundle, CanonicalBundle, WorkspaceDocument, ManifestDocument, AuthoringContract and SemanticModel.
type AsciiDocOptions ¶
ENGMODEL-LINKS: FU-ASCIIDOC-GENERATOR, FU-CODEMAP-INFERENCE, CTRL-TRACEABILITY-COVERAGE, DEP-LOCAL-WORKSPACE
type AsciiDocResult ¶
ENGMODEL-LINKS: FU-ASCIIDOC-GENERATOR, FU-VALIDATION-ENGINE, CTRL-TRACEABILITY-COVERAGE, STATE-MODEL-INVALID, EVT-VALIDATION-FAILED
func GenerateAsciiDoc ¶
func GenerateAsciiDoc(bundle Bundle, requirements RequirementsDocument, design DesignDocument, options AsciiDocOptions) (AsciiDocResult, error)
GenerateAsciiDoc validates and renders the model. With composition it resolves the dependencies once, validates against the bundle enriched with their published entities, and returns every composition diagnostic; a composition error fails the call like any other validation error. ENGMODEL-LINKS: FU-ASCIIDOC-GENERATOR, FLOW-MODEL-CHANGE-TO-VERIFIED-ARTIFACTS TRLC-LINKS: REQ-EMG-001, REQ-EMG-003, REQ-EMG-014, REQ-EMG-035, REQ-EMG-036, REQ-EMG-065, REQ-EMG-066
func GenerateAsciiDocFromFiles ¶
func GenerateAsciiDocFromFiles(architecturePath, requirementsPath, designPath string, options AsciiDocOptions) (AsciiDocResult, error)
ENGMODEL-LINKS: FU-ASCIIDOC-GENERATOR, FLOW-MODEL-CHANGE-TO-VERIFIED-ARTIFACTS TRLC-LINKS: REQ-EMG-001, REQ-EMG-003, REQ-EMG-014
type AssuranceDocument ¶ added in v0.5.0
type AssuranceDocument = model.AssuranceDocument
Model types. Each is an alias of the internal model type, so values move freely between the facade and every generator in this package. The set is every exported type reachable from Bundle, CanonicalBundle, WorkspaceDocument, ManifestDocument, AuthoringContract and SemanticModel.
type AssuranceModel ¶ added in v0.5.0
type AssuranceModel = model.AssuranceModel
Model types. Each is an alias of the internal model type, so values move freely between the facade and every generator in this package. The set is every exported type reachable from Bundle, CanonicalBundle, WorkspaceDocument, ManifestDocument, AuthoringContract and SemanticModel.
type AttackVector ¶ added in v0.5.0
type AttackVector = model.AttackVector
Model types. Each is an alias of the internal model type, so values move freely between the facade and every generator in this package. The set is every exported type reachable from Bundle, CanonicalBundle, WorkspaceDocument, ManifestDocument, AuthoringContract and SemanticModel.
type AuthoredArchitecture ¶ added in v0.5.0
type AuthoredArchitecture = model.AuthoredArchitecture
Model types. Each is an alias of the internal model type, so values move freely between the facade and every generator in this package. The set is every exported type reachable from Bundle, CanonicalBundle, WorkspaceDocument, ManifestDocument, AuthoringContract and SemanticModel.
type AuthoringContract ¶ added in v0.5.0
type AuthoringContract = model.AuthoringContract
Model types. Each is an alias of the internal model type, so values move freely between the facade and every generator in this package. The set is every exported type reachable from Bundle, CanonicalBundle, WorkspaceDocument, ManifestDocument, AuthoringContract and SemanticModel.
func BuildAuthoringContract ¶ added in v0.5.0
func BuildAuthoringContract(bundle Bundle) AuthoringContract
BuildAuthoringContract describes the documents, schemas, identifiers and dependency rules an author or agent needs to edit the model. ENGMODEL-LINKS: FU-MODEL-LOADER, DO-MODEL-AUTHORING-CONTRACT TRLC-LINKS: REQ-EMG-044, REQ-EMG-045, REQ-EMG-047, REQ-EMG-048, REQ-EMG-049, REQ-EMG-053
type AuthoringDocument ¶ added in v0.5.0
type AuthoringDocument = model.AuthoringDocument
Model types. Each is an alias of the internal model type, so values move freely between the facade and every generator in this package. The set is every exported type reachable from Bundle, CanonicalBundle, WorkspaceDocument, ManifestDocument, AuthoringContract and SemanticModel.
type AviationDocument ¶ added in v0.5.0
type AviationDocument = model.AviationDocument
Model types. Each is an alias of the internal model type, so values move freely between the facade and every generator in this package. The set is every exported type reachable from Bundle, CanonicalBundle, WorkspaceDocument, ManifestDocument, AuthoringContract and SemanticModel.
type AviationProfile ¶ added in v0.5.0
type AviationProfile = model.AviationProfile
Model types. Each is an alias of the internal model type, so values move freely between the facade and every generator in this package. The set is every exported type reachable from Bundle, CanonicalBundle, WorkspaceDocument, ManifestDocument, AuthoringContract and SemanticModel.
type AviationValidationError ¶ added in v0.5.0
type AviationValidationError = model.AviationValidationError
Model types. Each is an alias of the internal model type, so values move freely between the facade and every generator in this package. The set is every exported type reachable from Bundle, CanonicalBundle, WorkspaceDocument, ManifestDocument, AuthoringContract and SemanticModel.
type BehaviorDocument ¶ added in v0.5.0
type BehaviorDocument = model.BehaviorDocument
Model types. Each is an alias of the internal model type, so values move freely between the facade and every generator in this package. The set is every exported type reachable from Bundle, CanonicalBundle, WorkspaceDocument, ManifestDocument, AuthoringContract and SemanticModel.
type BehaviorModel ¶ added in v0.5.0
type BehaviorModel = model.BehaviorModel
Model types. Each is an alias of the internal model type, so values move freely between the facade and every generator in this package. The set is every exported type reachable from Bundle, CanonicalBundle, WorkspaceDocument, ManifestDocument, AuthoringContract and SemanticModel.
type Bundle ¶ added in v0.5.0
Model types. Each is an alias of the internal model type, so values move freely between the facade and every generator in this package. The set is every exported type reachable from Bundle, CanonicalBundle, WorkspaceDocument, ManifestDocument, AuthoringContract and SemanticModel.
func LoadBundle ¶ added in v0.5.0
LoadBundle reads the engmod.yml manifest at manifestPath and every domain document it names, validated against the canonical CUE schema. ENGMODEL-LINKS: FU-MODEL-LOADER, DO-ARCHITECTURE-MODEL TRLC-LINKS: REQ-EMG-001, REQ-EMG-044, REQ-EMG-046, REQ-EMG-049, REQ-EMG-051, REQ-EMG-053, REQ-EMG-054
type CanonicalBundle ¶ added in v0.5.0
type CanonicalBundle = model.CanonicalBundle
Model types. Each is an alias of the internal model type, so values move freely between the facade and every generator in this package. The set is every exported type reachable from Bundle, CanonicalBundle, WorkspaceDocument, ManifestDocument, AuthoringContract and SemanticModel.
func LoadCanonicalBundle ¶ added in v0.5.0
func LoadCanonicalBundle(manifestPath string) (CanonicalBundle, error)
LoadCanonicalBundle loads the manifest at manifestPath and projects it into the canonical semantic model; projection errors are returned as an error. ENGMODEL-LINKS: FU-MODEL-LOADER, DO-CANONICAL-SEMANTIC-MODEL TRLC-LINKS: REQ-EMG-035, REQ-EMG-036, REQ-EMG-044, REQ-EMG-046
func NewCanonicalBundle ¶ added in v0.5.0
func NewCanonicalBundle(bundle Bundle) (CanonicalBundle, error)
NewCanonicalBundle projects an already loaded bundle into the canonical semantic model. ENGMODEL-LINKS: FU-MODEL-LOADER, DO-CANONICAL-SEMANTIC-MODEL TRLC-LINKS: REQ-EMG-035, REQ-EMG-036
type CatalogDocument ¶ added in v0.5.0
type CatalogDocument = model.CatalogDocument
Model types. Each is an alias of the internal model type, so values move freely between the facade and every generator in this package. The set is every exported type reachable from Bundle, CanonicalBundle, WorkspaceDocument, ManifestDocument, AuthoringContract and SemanticModel.
type CatalogEntry ¶ added in v0.5.0
type CatalogEntry = model.CatalogEntry
Model types. Each is an alias of the internal model type, so values move freely between the facade and every generator in this package. The set is every exported type reachable from Bundle, CanonicalBundle, WorkspaceDocument, ManifestDocument, AuthoringContract and SemanticModel.
type CatalogGroups ¶ added in v0.5.0
type CatalogGroups = model.CatalogGroups
Model types. Each is an alias of the internal model type, so values move freely between the facade and every generator in this package. The set is every exported type reachable from Bundle, CanonicalBundle, WorkspaceDocument, ManifestDocument, AuthoringContract and SemanticModel.
type CertificationLiaison ¶ added in v0.5.0
type CertificationLiaison = model.CertificationLiaison
Model types. Each is an alias of the internal model type, so values move freely between the facade and every generator in this package. The set is every exported type reachable from Bundle, CanonicalBundle, WorkspaceDocument, ManifestDocument, AuthoringContract and SemanticModel.
type ComplianceDocument ¶ added in v0.5.0
type ComplianceDocument = model.ComplianceDocument
Model types. Each is an alias of the internal model type, so values move freely between the facade and every generator in this package. The set is every exported type reachable from Bundle, CanonicalBundle, WorkspaceDocument, ManifestDocument, AuthoringContract and SemanticModel.
type ComplianceMapping ¶ added in v0.5.0
type ComplianceMapping = model.ComplianceMapping
Model types. Each is an alias of the internal model type, so values move freely between the facade and every generator in this package. The set is every exported type reachable from Bundle, CanonicalBundle, WorkspaceDocument, ManifestDocument, AuthoringContract and SemanticModel.
type ComplianceModel ¶ added in v0.5.0
type ComplianceModel = model.ComplianceModel
Model types. Each is an alias of the internal model type, so values move freely between the facade and every generator in this package. The set is every exported type reachable from Bundle, CanonicalBundle, WorkspaceDocument, ManifestDocument, AuthoringContract and SemanticModel.
type ComplianceProfile ¶ added in v0.5.0
type ComplianceProfile = model.ComplianceProfile
Model types. Each is an alias of the internal model type, so values move freely between the facade and every generator in this package. The set is every exported type reachable from Bundle, CanonicalBundle, WorkspaceDocument, ManifestDocument, AuthoringContract and SemanticModel.
type ComposedSystem ¶
type ComposedSystem = composition.ComposedSystem
ComposedSystem is a resolved system together with its resolved subsystems. ENGMODEL-LINKS: FU-SYSTEM-COMPOSITION, DO-ARCHITECTURE-MODEL
type CompositionLockDependency ¶ added in v0.2.0
type CompositionLockDependency = composition.CompositionLockDependency
type CompositionLockDocument ¶ added in v0.2.0
type CompositionLockDocument = composition.CompositionLockDocument
CompositionLockDocument is deterministic generated dependency state. TRLC-LINKS: REQ-EMG-047, REQ-EMG-048, REQ-EMG-049, REQ-EMG-051
type CompositionModel ¶ added in v0.5.0
type CompositionModel = model.CompositionModel
Model types. Each is an alias of the internal model type, so values move freely between the facade and every generator in this package. The set is every exported type reachable from Bundle, CanonicalBundle, WorkspaceDocument, ManifestDocument, AuthoringContract and SemanticModel.
type CompositionProjection ¶ added in v0.2.0
type CompositionProjection = composition.CompositionProjection
CompositionProjection is the reusable, read-only projection boundary used by every output format. It never mutates an authored bundle. TRLC-LINKS: REQ-EMG-050, REQ-EMG-051
func BuildCompositionProjection ¶ added in v0.2.0
func BuildCompositionProjection(result CompositionResult) CompositionProjection
BuildCompositionProjection materializes only direct, explicitly selected dependency publications. Transitive or unexported child data is not exposed. TRLC-LINKS: REQ-EMG-050, REQ-EMG-051
type CompositionResult ¶
type CompositionResult = composition.CompositionResult
CompositionResult is the resolved tree plus materialized allocation trace and diagnostics. ENGMODEL-LINKS: FU-SYSTEM-COMPOSITION, FU-ALLOCATION-TRACE
func GenerateCompositionForBundle ¶ added in v0.4.0
func GenerateCompositionForBundle(bundle Bundle, options ResolutionOptions) (CompositionResult, error)
GenerateCompositionForBundle resolves the composition of an already loaded bundle: the dependencies are resolved from bundle.ManifestPath's location (workspace, module cache, lock) as in GenerateCompositionFromFileWith, but the root system - its manifest dependencies, composition, contract and every alias::ID reference - is the given bundle, not the files on disk. A caller validating edited content in memory thus gets the diagnostics of that content. TRLC-LINKS: REQ-EMG-065, REQ-EMG-066, REQ-EMG-069 ENGMODEL-LINKS: FU-SYSTEM-COMPOSITION, FU-MODEL-LOADER
func GenerateCompositionFromFile ¶
func GenerateCompositionFromFile(manifestPath string) (CompositionResult, error)
GenerateCompositionFromFile resolves the system-of-systems rooted at engmod.yml with the workspace and lock modes taken from ENGMOD_WORK and ENGMOD_LOCK. TRLC-LINKS: REQ-EMG-016, REQ-EMG-047, REQ-EMG-048, REQ-EMG-049, REQ-EMG-051, REQ-EMG-063, REQ-EMG-064 ENGMODEL-LINKS: FU-SYSTEM-COMPOSITION, FU-MODEL-LOADER, FLOW-MODEL-CHANGE-TO-VERIFIED-ARTIFACTS
func GenerateCompositionFromFileWith ¶ added in v0.4.0
func GenerateCompositionFromFileWith(manifestPath string, options ResolutionOptions) (CompositionResult, error)
GenerateCompositionFromFileWith resolves the system-of-systems rooted at engmod.yml under explicit workspace and lock modes. Lock policy: while workspace replacements are active, engmod.lock.yml is never touched and the resolved lock is written to engmod.lock.local.yml; in check mode nothing is written and, without replacements, the resolved lock is compared with the committed one (composition.lock_missing, lock_invalid, lock_mismatch); otherwise engmod.lock.yml is written. TRLC-LINKS: REQ-EMG-016, REQ-EMG-047, REQ-EMG-048, REQ-EMG-049, REQ-EMG-051, REQ-EMG-063, REQ-EMG-064, REQ-EMG-066 ENGMODEL-LINKS: FU-SYSTEM-COMPOSITION, FU-MODEL-LOADER, FLOW-MODEL-CHANGE-TO-VERIFIED-ARTIFACTS
type ConfigurationArtifact ¶ added in v0.5.0
type ConfigurationArtifact = model.ConfigurationArtifact
Model types. Each is an alias of the internal model type, so values move freely between the facade and every generator in this package. The set is every exported type reachable from Bundle, CanonicalBundle, WorkspaceDocument, ManifestDocument, AuthoringContract and SemanticModel.
type ConfigurationBaseline ¶ added in v0.5.0
type ConfigurationBaseline = model.ConfigurationBaseline
Model types. Each is an alias of the internal model type, so values move freely between the facade and every generator in this package. The set is every exported type reachable from Bundle, CanonicalBundle, WorkspaceDocument, ManifestDocument, AuthoringContract and SemanticModel.
type ConfigurationBuild ¶ added in v0.5.0
type ConfigurationBuild = model.ConfigurationBuild
Model types. Each is an alias of the internal model type, so values move freely between the facade and every generator in this package. The set is every exported type reachable from Bundle, CanonicalBundle, WorkspaceDocument, ManifestDocument, AuthoringContract and SemanticModel.
type ContractEntry ¶ added in v0.5.0
type ContractEntry = model.ContractEntry
Model types. Each is an alias of the internal model type, so values move freely between the facade and every generator in this package. The set is every exported type reachable from Bundle, CanonicalBundle, WorkspaceDocument, ManifestDocument, AuthoringContract and SemanticModel.
type ContractModel ¶ added in v0.5.0
type ContractModel = model.ContractModel
Model types. Each is an alias of the internal model type, so values move freely between the facade and every generator in this package. The set is every exported type reachable from Bundle, CanonicalBundle, WorkspaceDocument, ManifestDocument, AuthoringContract and SemanticModel.
type Control ¶ added in v0.5.0
Model types. Each is an alias of the internal model type, so values move freely between the facade and every generator in this package. The set is every exported type reachable from Bundle, CanonicalBundle, WorkspaceDocument, ManifestDocument, AuthoringContract and SemanticModel.
type ControlEvidence ¶ added in v0.5.0
type ControlEvidence = model.ControlEvidence
Model types. Each is an alias of the internal model type, so values move freely between the facade and every generator in this package. The set is every exported type reachable from Bundle, CanonicalBundle, WorkspaceDocument, ManifestDocument, AuthoringContract and SemanticModel.
type ControlVerification ¶ added in v0.5.0
type ControlVerification = model.ControlVerification
Model types. Each is an alias of the internal model type, so values move freely between the facade and every generator in this package. The set is every exported type reachable from Bundle, CanonicalBundle, WorkspaceDocument, ManifestDocument, AuthoringContract and SemanticModel.
type ControlVerificationEvidence ¶ added in v0.5.0
type ControlVerificationEvidence = model.ControlVerificationEvidence
Model types. Each is an alias of the internal model type, so values move freely between the facade and every generator in this package. The set is every exported type reachable from Bundle, CanonicalBundle, WorkspaceDocument, ManifestDocument, AuthoringContract and SemanticModel.
type DanglingLink ¶
type DanglingLink = trace.DanglingLink
DanglingLink is a code trace link that resolves to nothing in the model. ENGMODEL-LINKS: FU-VALIDATION-ENGINE, CTRL-TRACEABILITY-COVERAGE
type DataObject ¶ added in v0.5.0
type DataObject = model.DataObject
Model types. Each is an alias of the internal model type, so values move freely between the facade and every generator in this package. The set is every exported type reachable from Bundle, CanonicalBundle, WorkspaceDocument, ManifestDocument, AuthoringContract and SemanticModel.
type Decision ¶ added in v0.5.0
Model types. Each is an alias of the internal model type, so values move freely between the facade and every generator in this package. The set is every exported type reachable from Bundle, CanonicalBundle, WorkspaceDocument, ManifestDocument, AuthoringContract and SemanticModel.
type DecisionsDocument ¶ added in v0.5.0
type DecisionsDocument = model.DecisionsDocument
Model types. Each is an alias of the internal model type, so values move freely between the facade and every generator in this package. The set is every exported type reachable from Bundle, CanonicalBundle, WorkspaceDocument, ManifestDocument, AuthoringContract and SemanticModel.
type DependencyGuide ¶ added in v0.5.0
type DependencyGuide = model.DependencyGuide
Model types. Each is an alias of the internal model type, so values move freely between the facade and every generator in this package. The set is every exported type reachable from Bundle, CanonicalBundle, WorkspaceDocument, ManifestDocument, AuthoringContract and SemanticModel.
type DeploymentTarget ¶ added in v0.5.0
type DeploymentTarget = model.DeploymentTarget
Model types. Each is an alias of the internal model type, so values move freely between the facade and every generator in this package. The set is every exported type reachable from Bundle, CanonicalBundle, WorkspaceDocument, ManifestDocument, AuthoringContract and SemanticModel.
type DesignDocument ¶ added in v0.5.0
type DesignDocument = model.DesignDocument
Model types. Each is an alias of the internal model type, so values move freely between the facade and every generator in this package. The set is every exported type reachable from Bundle, CanonicalBundle, WorkspaceDocument, ManifestDocument, AuthoringContract and SemanticModel.
func LoadDesign ¶ added in v0.5.0
func LoadDesign(path string) (DesignDocument, error)
LoadDesign reads a single design document. ENGMODEL-LINKS: FU-MODEL-LOADER, DO-ARCHITECTURE-MODEL TRLC-LINKS: REQ-EMG-001, REQ-EMG-044, REQ-EMG-046
type DesignFunctionalGroup ¶ added in v0.5.0
type DesignFunctionalGroup = model.DesignFunctionalGroup
Model types. Each is an alias of the internal model type, so values move freely between the facade and every generator in this package. The set is every exported type reachable from Bundle, CanonicalBundle, WorkspaceDocument, ManifestDocument, AuthoringContract and SemanticModel.
type DesignFunctionalUnit ¶ added in v0.5.0
type DesignFunctionalUnit = model.DesignFunctionalUnit
Model types. Each is an alias of the internal model type, so values move freely between the facade and every generator in this package. The set is every exported type reachable from Bundle, CanonicalBundle, WorkspaceDocument, ManifestDocument, AuthoringContract and SemanticModel.
type DesignModel ¶ added in v0.5.0
type DesignModel = model.DesignModel
Model types. Each is an alias of the internal model type, so values move freely between the facade and every generator in this package. The set is every exported type reachable from Bundle, CanonicalBundle, WorkspaceDocument, ManifestDocument, AuthoringContract and SemanticModel.
type DesignView ¶ added in v0.5.0
type DesignView = model.DesignView
Model types. Each is an alias of the internal model type, so values move freely between the facade and every generator in this package. The set is every exported type reachable from Bundle, CanonicalBundle, WorkspaceDocument, ManifestDocument, AuthoringContract and SemanticModel.
type Diagnostic ¶ added in v0.5.0
type Diagnostic = validate.Diagnostic
Diagnostic is one validation finding with a stable code, severity, message and model path.
func DedupeDiagnostics ¶ added in v0.5.0
func DedupeDiagnostics(lists ...[]Diagnostic) []Diagnostic
DedupeDiagnostics merges diagnostic lists from separate checks of one run so each finding (code, path, message) is reported once; an error severity on a duplicate wins over a warning. ENGMODEL-LINKS: FU-VALIDATION-ENGINE, EVT-VALIDATION-FAILED TRLC-LINKS: REQ-EMG-001, REQ-EMG-009, REQ-EMG-011
func QualifiedReferenceDiagnostics ¶ added in v0.4.0
func QualifiedReferenceDiagnostics(bundle Bundle, result CompositionResult) []Diagnostic
QualifiedReferenceDiagnostics reports every alias::ID reference in the authored model that no selected dependency publication makes visible, once per field path (composition.unpublished_reference). A model without composition has no visible imports, so each of its qualified references is reported. TRLC-LINKS: REQ-EMG-065 ENGMODEL-LINKS: FU-SYSTEM-COMPOSITION, FU-VALIDATION-ENGINE
func SortDiagnostics ¶ added in v0.5.0
func SortDiagnostics(in []Diagnostic) []Diagnostic
SortDiagnostics returns a copy of in in stable path, severity, code and message order. ENGMODEL-LINKS: FU-VALIDATION-ENGINE TRLC-LINKS: REQ-EMG-001, REQ-EMG-009, REQ-EMG-011, REQ-EMG-012
func SuppressWaivedDiagnostics ¶ added in v0.4.0
func SuppressWaivedDiagnostics(diags []Diagnostic, waivers map[string][]string) []Diagnostic
SuppressWaivedDiagnostics removes requirement-scoped diagnostics a model has explicitly waived. waivers maps a requirement id to the diagnostic codes waived for it (for example "lint.multiple_responses"). Only warnings are suppressed: an error is never waived. Diagnostics whose path is not a requirement path are kept. ENGMODEL-LINKS: FU-VALIDATION-ENGINE, CTRL-TRACEABILITY-COVERAGE, STATE-MODEL-VALID, STATE-MODEL-INVALID TRLC-LINKS: REQ-EMG-001, REQ-EMG-009
func ValidateBundle ¶ added in v0.5.0
func ValidateBundle(b Bundle) []Diagnostic
ValidateBundle runs every model validation rule over a loaded bundle and returns the diagnostics. It is validate.Bundle, renamed because Bundle is the model type at the package root. ENGMODEL-LINKS: FU-VALIDATION-ENGINE, STATE-MODEL-VALID, STATE-MODEL-INVALID, EVT-VALIDATION-FAILED TRLC-LINKS: REQ-EMG-001, REQ-EMG-009, REQ-EMG-011, REQ-EMG-035, REQ-EMG-036, REQ-EMG-037, REQ-EMG-041, REQ-EMG-043, REQ-EMG-049, REQ-EMG-065
type DocumentControl ¶ added in v0.5.0
type DocumentControl = model.DocumentControl
Model types. Each is an alias of the internal model type, so values move freely between the facade and every generator in this package. The set is every exported type reachable from Bundle, CanonicalBundle, WorkspaceDocument, ManifestDocument, AuthoringContract and SemanticModel.
type DocumentDefinition ¶ added in v0.5.0
type DocumentDefinition = model.DocumentDefinition
Model types. Each is an alias of the internal model type, so values move freely between the facade and every generator in this package. The set is every exported type reachable from Bundle, CanonicalBundle, WorkspaceDocument, ManifestDocument, AuthoringContract and SemanticModel.
type DocumentReferences ¶ added in v0.5.0
type DocumentReferences = model.DocumentReferences
Model types. Each is an alias of the internal model type, so values move freely between the facade and every generator in this package. The set is every exported type reachable from Bundle, CanonicalBundle, WorkspaceDocument, ManifestDocument, AuthoringContract and SemanticModel.
type DocumentSection ¶ added in v0.5.0
type DocumentSection = model.DocumentSection
Model types. Each is an alias of the internal model type, so values move freely between the facade and every generator in this package. The set is every exported type reachable from Bundle, CanonicalBundle, WorkspaceDocument, ManifestDocument, AuthoringContract and SemanticModel.
type Event ¶ added in v0.5.0
Model types. Each is an alias of the internal model type, so values move freely between the facade and every generator in this package. The set is every exported type reachable from Bundle, CanonicalBundle, WorkspaceDocument, ManifestDocument, AuthoringContract and SemanticModel.
type EvidenceReference ¶ added in v0.5.0
type EvidenceReference = model.EvidenceReference
Model types. Each is an alias of the internal model type, so values move freely between the facade and every generator in this package. The set is every exported type reachable from Bundle, CanonicalBundle, WorkspaceDocument, ManifestDocument, AuthoringContract and SemanticModel.
type Expected ¶ added in v0.5.0
Model types. Each is an alias of the internal model type, so values move freely between the facade and every generator in this package. The set is every exported type reachable from Bundle, CanonicalBundle, WorkspaceDocument, ManifestDocument, AuthoringContract and SemanticModel.
type Flow ¶ added in v0.5.0
Model types. Each is an alias of the internal model type, so values move freely between the facade and every generator in this package. The set is every exported type reachable from Bundle, CanonicalBundle, WorkspaceDocument, ManifestDocument, AuthoringContract and SemanticModel.
type FlowStep ¶ added in v0.5.0
Model types. Each is an alias of the internal model type, so values move freely between the facade and every generator in this package. The set is every exported type reachable from Bundle, CanonicalBundle, WorkspaceDocument, ManifestDocument, AuthoringContract and SemanticModel.
type FunctionalGroup ¶ added in v0.5.0
type FunctionalGroup = model.FunctionalGroup
Model types. Each is an alias of the internal model type, so values move freely between the facade and every generator in this package. The set is every exported type reachable from Bundle, CanonicalBundle, WorkspaceDocument, ManifestDocument, AuthoringContract and SemanticModel.
type FunctionalUnit ¶ added in v0.5.0
type FunctionalUnit = model.FunctionalUnit
Model types. Each is an alias of the internal model type, so values move freely between the facade and every generator in this package. The set is every exported type reachable from Bundle, CanonicalBundle, WorkspaceDocument, ManifestDocument, AuthoringContract and SemanticModel.
type GemaraCrossReferenceError ¶ added in v0.4.0
type GemaraCrossReferenceError = gemara.CrossReferenceError
GemaraCrossReferenceError reports one reference that does not resolve within the rendered artifact set. ENGMODEL-LINKS: FU-GEMARA-EXPORTER, CTRL-TRACEABILITY-COVERAGE
func CheckGemaraCrossReferences ¶ added in v0.4.0
func CheckGemaraCrossReferences(docs map[string]string) []GemaraCrossReferenceError
CheckGemaraCrossReferences parses the artifacts (short-name -> YAML) and returns every EntryMapping, MultiEntryMapping, artifact import and mapping document source/target that does not resolve within the set. Documents that fail to parse are reported as errors too. TRLC-LINKS: REQ-EMG-015 ENGMODEL-LINKS: FU-GEMARA-EXPORTER, CTRL-TRACEABILITY-COVERAGE
func CheckGemaraModelConsistency ¶ added in v0.4.0
func CheckGemaraModelConsistency(bundle Bundle, docs map[string]string) []GemaraCrossReferenceError
CheckGemaraModelConsistency compares the treatment claims in a rendered artifact set (short-name -> YAML) with the model they were rendered from: an enforcement action's disposition must follow its POA&M item's status (only completed is Enforced, only accepted is Tolerated), the log's aggregate must follow the actions, the policy may list a risk as mitigated only when it is closed and as accepted only when it is accepted. It reports each claim the model does not support with the same error shape as the cross-reference check. TRLC-LINKS: REQ-EMG-015, REQ-EMG-062 ENGMODEL-LINKS: FU-GEMARA-EXPORTER, CTRL-TRACEABILITY-COVERAGE
type GemaraEvaluationResult ¶
type GemaraEvaluationResult = gemara.EvaluationResult
GemaraEvaluationResult holds the L5 Evaluation Log and its serialization. ENGMODEL-LINKS: FU-GEMARA-EXPORTER, CTRL-TRACEABILITY-COVERAGE
func GenerateGemaraEvaluationLog ¶
func GenerateGemaraEvaluationLog(bundle Bundle, requirements RequirementsDocument, codeRoot string, options GemaraExportOptions) (GemaraEvaluationResult, error)
GenerateGemaraEvaluationLog builds an L5 Evaluation Log from the model bundle. requirements and codeRoot are reserved for inferred-verification augmentation. TRLC-LINKS: REQ-EMG-015, REQ-EMG-035, REQ-EMG-036 ENGMODEL-LINKS: FU-GEMARA-EXPORTER, CTRL-TRACEABILITY-COVERAGE
func GenerateGemaraEvaluationLogFromFiles ¶
func GenerateGemaraEvaluationLogFromFiles(architecturePath, requirementsPath, codeRoot string, options GemaraExportOptions) (GemaraEvaluationResult, error)
GenerateGemaraEvaluationLogFromFiles loads inputs and renders the Evaluation Log. TRLC-LINKS: REQ-EMG-015 ENGMODEL-LINKS: FU-GEMARA-EXPORTER, CTRL-TRACEABILITY-COVERAGE
type GemaraExportOptions ¶
GemaraExportOptions configures the deterministic metadata stamped into artifacts. ENGMODEL-LINKS: FU-GEMARA-EXPORTER, CTRL-TRACEABILITY-COVERAGE
type GemaraExportResult ¶
GemaraExportResult holds the typed Gemara documents and their YAML serializations. ENGMODEL-LINKS: FU-GEMARA-EXPORTER, CTRL-TRACEABILITY-COVERAGE
func GenerateGemara ¶
func GenerateGemara(bundle Bundle, options GemaraExportOptions) (GemaraExportResult, error)
GenerateGemara renders the engineering model bundle into Gemara L1-L3 documents. TRLC-LINKS: REQ-EMG-015, REQ-EMG-035, REQ-EMG-036 ENGMODEL-LINKS: FU-GEMARA-EXPORTER, CTRL-TRACEABILITY-COVERAGE
func GenerateGemaraFromFile ¶
func GenerateGemaraFromFile(architecturePath string, options GemaraExportOptions) (GemaraExportResult, error)
GenerateGemaraFromFile loads the model bundle and renders the Gemara catalogs. TRLC-LINKS: REQ-EMG-015 ENGMODEL-LINKS: FU-GEMARA-EXPORTER, CTRL-TRACEABILITY-COVERAGE
type HardwareInterface ¶ added in v0.5.0
type HardwareInterface = model.HardwareInterface
Model types. Each is an alias of the internal model type, so values move freely between the facade and every generator in this package. The set is every exported type reachable from Bundle, CanonicalBundle, WorkspaceDocument, ManifestDocument, AuthoringContract and SemanticModel.
type HardwareItem ¶ added in v0.5.0
type HardwareItem = model.HardwareItem
Model types. Each is an alias of the internal model type, so values move freely between the facade and every generator in this package. The set is every exported type reachable from Bundle, CanonicalBundle, WorkspaceDocument, ManifestDocument, AuthoringContract and SemanticModel.
type ImportedEntityProvenance ¶ added in v0.2.0
type ImportedEntityProvenance = composition.ImportedEntityProvenance
ImportedEntityProvenance records where each visible imported identifier came from without leaking composition metadata into generic target properties. TRLC-LINKS: REQ-EMG-047, REQ-EMG-049, REQ-EMG-051
type IndependenceRecord ¶ added in v0.5.0
type IndependenceRecord = model.IndependenceRecord
Model types. Each is an alias of the internal model type, so values move freely between the facade and every generator in this package. The set is every exported type reachable from Bundle, CanonicalBundle, WorkspaceDocument, ManifestDocument, AuthoringContract and SemanticModel.
type InferenceHints ¶ added in v0.5.0
type InferenceHints = model.InferenceHints
Model types. Each is an alias of the internal model type, so values move freely between the facade and every generator in this package. The set is every exported type reachable from Bundle, CanonicalBundle, WorkspaceDocument, ManifestDocument, AuthoringContract and SemanticModel.
type Interface ¶ added in v0.5.0
Model types. Each is an alias of the internal model type, so values move freely between the facade and every generator in this package. The set is every exported type reachable from Bundle, CanonicalBundle, WorkspaceDocument, ManifestDocument, AuthoringContract and SemanticModel.
type LifecycleDataRecord ¶ added in v0.5.0
type LifecycleDataRecord = model.LifecycleDataRecord
Model types. Each is an alias of the internal model type, so values move freely between the facade and every generator in this package. The set is every exported type reachable from Bundle, CanonicalBundle, WorkspaceDocument, ManifestDocument, AuthoringContract and SemanticModel.
type LintRun ¶ added in v0.5.0
Model types. Each is an alias of the internal model type, so values move freely between the facade and every generator in this package. The set is every exported type reachable from Bundle, CanonicalBundle, WorkspaceDocument, ManifestDocument, AuthoringContract and SemanticModel.
type LintWaiver ¶ added in v0.5.0
type LintWaiver = model.LintWaiver
Model types. Each is an alias of the internal model type, so values move freely between the facade and every generator in this package. The set is every exported type reachable from Bundle, CanonicalBundle, WorkspaceDocument, ManifestDocument, AuthoringContract and SemanticModel.
type LobsterActivityExportOptions ¶
ENGMODEL-LINKS: FU-LOBSTER-EXPORTER, CTRL-TRACEABILITY-COVERAGE, FU-TRLC-EXPORTER
type LobsterActivityExportResult ¶
ENGMODEL-LINKS: FU-LOBSTER-EXPORTER, CTRL-TRACEABILITY-COVERAGE
func GenerateLobsterActivityTraceFromDir ¶
func GenerateLobsterActivityTraceFromDir(testsDir string, options LobsterActivityExportOptions) (LobsterActivityExportResult, error)
TRLC-LINKS: REQ-EMG-006, REQ-EMG-035, REQ-EMG-036 ENGMODEL-LINKS: FU-LOBSTER-EXPORTER, CTRL-TRACEABILITY-COVERAGE, FLOW-MODEL-CHANGE-TO-VERIFIED-ARTIFACTS, FU-TRLC-EXPORTER, FU-CODEMAP-INFERENCE, DEP-LOCAL-WORKSPACE
type ManifestDependency ¶ added in v0.5.0
type ManifestDependency = model.ManifestDependency
Model types. Each is an alias of the internal model type, so values move freely between the facade and every generator in this package. The set is every exported type reachable from Bundle, CanonicalBundle, WorkspaceDocument, ManifestDocument, AuthoringContract and SemanticModel.
type ManifestDocument ¶ added in v0.5.0
type ManifestDocument = model.ManifestDocument
Model types. Each is an alias of the internal model type, so values move freely between the facade and every generator in this package. The set is every exported type reachable from Bundle, CanonicalBundle, WorkspaceDocument, ManifestDocument, AuthoringContract and SemanticModel.
type ManifestPublication ¶ added in v0.5.0
type ManifestPublication = model.ManifestPublication
Model types. Each is an alias of the internal model type, so values move freely between the facade and every generator in this package. The set is every exported type reachable from Bundle, CanonicalBundle, WorkspaceDocument, ManifestDocument, AuthoringContract and SemanticModel.
type Mapping ¶ added in v0.5.0
Model types. Each is an alias of the internal model type, so values move freely between the facade and every generator in this package. The set is every exported type reachable from Bundle, CanonicalBundle, WorkspaceDocument, ManifestDocument, AuthoringContract and SemanticModel.
type MaterializedAllocation ¶
type MaterializedAllocation = composition.MaterializedAllocation
MaterializedAllocation is a parent->subsystem allocation with its composed-view resolution status. ENGMODEL-LINKS: FU-ALLOCATION-TRACE, CTRL-TRACEABILITY-COVERAGE
type MetamodelPropertyValue ¶ added in v0.5.0
type MetamodelPropertyValue = model.MetamodelPropertyValue
Model types. Each is an alias of the internal model type, so values move freely between the facade and every generator in this package. The set is every exported type reachable from Bundle, CanonicalBundle, WorkspaceDocument, ManifestDocument, AuthoringContract and SemanticModel.
type MetamodelValue ¶ added in v0.5.0
type MetamodelValue = model.MetamodelValue
Model types. Each is an alias of the internal model type, so values move freely between the facade and every generator in this package. The set is every exported type reachable from Bundle, CanonicalBundle, WorkspaceDocument, ManifestDocument, AuthoringContract and SemanticModel.
type ModelMeta ¶ added in v0.5.0
Model types. Each is an alias of the internal model type, so values move freely between the facade and every generator in this package. The set is every exported type reachable from Bundle, CanonicalBundle, WorkspaceDocument, ManifestDocument, AuthoringContract and SemanticModel.
type ModuleIdentity ¶ added in v0.5.0
type ModuleIdentity = model.ModuleIdentity
Model types. Each is an alias of the internal model type, so values move freely between the facade and every generator in this package. The set is every exported type reachable from Bundle, CanonicalBundle, WorkspaceDocument, ManifestDocument, AuthoringContract and SemanticModel.
type Multiplicity ¶ added in v0.5.0
type Multiplicity = model.Multiplicity
Model types. Each is an alias of the internal model type, so values move freely between the facade and every generator in this package. The set is every exported type reachable from Bundle, CanonicalBundle, WorkspaceDocument, ManifestDocument, AuthoringContract and SemanticModel.
type NAFConcern ¶ added in v0.5.0
type NAFConcern = model.NAFConcern
Model types. Each is an alias of the internal model type, so values move freely between the facade and every generator in this package. The set is every exported type reachable from Bundle, CanonicalBundle, WorkspaceDocument, ManifestDocument, AuthoringContract and SemanticModel.
type NAFExportResult ¶ added in v0.2.0
NAFExportResult is a deterministic NAF v4.1 architecture document and its diagnostics.
func GenerateNAFV41 ¶ added in v0.2.0
func GenerateNAFV41(bundle Bundle) (NAFExportResult, error)
GenerateNAFV41 validates and projects existing Engmod views into NAF products. TRLC-LINKS: REQ-EMG-041, REQ-EMG-042, REQ-EMG-043
func GenerateNAFV41FromFile ¶ added in v0.2.0
func GenerateNAFV41FromFile(architecturePath string) (NAFExportResult, error)
GenerateNAFV41FromFile loads canonical YAML and generates the selected NAF products. TRLC-LINKS: REQ-EMG-041, REQ-EMG-042, REQ-EMG-043 ENGMODEL-LINKS: FU-NAF-EXPORTER, IF-CLI-ENGNAF, DO-NAF-V4-ARCHITECTURE, REF-NAF-V4-1-SPECIFICATION
type NAFProduct ¶ added in v0.5.0
type NAFProduct = model.NAFProduct
Model types. Each is an alias of the internal model type, so values move freely between the facade and every generator in this package. The set is every exported type reachable from Bundle, CanonicalBundle, WorkspaceDocument, ManifestDocument, AuthoringContract and SemanticModel.
type NAFProfile ¶ added in v0.5.0
type NAFProfile = model.NAFProfile
Model types. Each is an alias of the internal model type, so values move freely between the facade and every generator in this package. The set is every exported type reachable from Bundle, CanonicalBundle, WorkspaceDocument, ManifestDocument, AuthoringContract and SemanticModel.
type NAFStakeholder ¶ added in v0.5.0
type NAFStakeholder = model.NAFStakeholder
Model types. Each is an alias of the internal model type, so values move freely between the facade and every generator in this package. The set is every exported type reachable from Bundle, CanonicalBundle, WorkspaceDocument, ManifestDocument, AuthoringContract and SemanticModel.
type OSCALAPDocument ¶ added in v0.2.0
type OSCALAPDocument = oscal.APDocument
type OSCALAPOptions ¶ added in v0.2.0
type OSCALAPResult ¶ added in v0.2.0
func GenerateOSCALAssessmentPlan ¶ added in v0.2.0
func GenerateOSCALAssessmentPlan(bundle Bundle, options OSCALAPOptions) (OSCALAPResult, error)
TRLC-LINKS: REQ-EMG-012, REQ-EMG-013 ENGMODEL-LINKS: FU-OSCAL-EXPORTER, CTRL-TRACEABILITY-COVERAGE, FU-VALIDATION-ENGINE
func GenerateOSCALAssessmentPlanFromFile ¶ added in v0.2.0
func GenerateOSCALAssessmentPlanFromFile(architecturePath string, options OSCALAPOptions) (OSCALAPResult, error)
TRLC-LINKS: REQ-EMG-012, REQ-EMG-013 ENGMODEL-LINKS: FU-OSCAL-EXPORTER, CTRL-TRACEABILITY-COVERAGE, FLOW-MODEL-CHANGE-TO-VERIFIED-ARTIFACTS
type OSCALARDocument ¶
type OSCALARDocument = oscal.ARDocument
ENGMODEL-LINKS: FU-OSCAL-EXPORTER, CTRL-TRACEABILITY-COVERAGE
type OSCALAROptions ¶
ENGMODEL-LINKS: FU-OSCAL-EXPORTER, CTRL-TRACEABILITY-COVERAGE
type OSCALARResult ¶
ENGMODEL-LINKS: FU-OSCAL-EXPORTER, CTRL-TRACEABILITY-COVERAGE, FU-VALIDATION-ENGINE, STATE-MODEL-INVALID, EVT-VALIDATION-FAILED
func GenerateOSCALAssessmentResults ¶
func GenerateOSCALAssessmentResults(bundle Bundle, requirements RequirementsDocument, options OSCALAROptions) (OSCALARResult, error)
TRLC-LINKS: REQ-EMG-001, REQ-EMG-013, REQ-EMG-035, REQ-EMG-036 ENGMODEL-LINKS: FU-OSCAL-EXPORTER, CTRL-TRACEABILITY-COVERAGE, FLOW-MODEL-CHANGE-TO-VERIFIED-ARTIFACTS, FU-THREAT-EXPORTER, FU-VALIDATION-ENGINE, STATE-MODEL-INVALID, EVT-VALIDATION-FAILED
func GenerateOSCALAssessmentResultsFromFile ¶
func GenerateOSCALAssessmentResultsFromFile(architecturePath string, options OSCALAROptions) (OSCALARResult, error)
TRLC-LINKS: REQ-EMG-001, REQ-EMG-013 ENGMODEL-LINKS: FU-OSCAL-EXPORTER, CTRL-TRACEABILITY-COVERAGE, FLOW-MODEL-CHANGE-TO-VERIFIED-ARTIFACTS
type OSCALPOAMDocument ¶
type OSCALPOAMDocument = oscal.POAMDocument
ENGMODEL-LINKS: FU-OSCAL-EXPORTER, CTRL-TRACEABILITY-COVERAGE
type OSCALPOAMOptions ¶
type OSCALPOAMOptions = oscal.POAMOptions
ENGMODEL-LINKS: FU-OSCAL-EXPORTER, CTRL-TRACEABILITY-COVERAGE
type OSCALPOAMResult ¶
type OSCALPOAMResult = oscal.POAMResult
ENGMODEL-LINKS: FU-OSCAL-EXPORTER, CTRL-TRACEABILITY-COVERAGE, FU-VALIDATION-ENGINE, STATE-MODEL-INVALID, EVT-VALIDATION-FAILED
func GenerateOSCALPOAM ¶
func GenerateOSCALPOAM(bundle Bundle, options OSCALPOAMOptions) (OSCALPOAMResult, error)
TRLC-LINKS: REQ-EMG-001, REQ-EMG-013, REQ-EMG-035, REQ-EMG-036 ENGMODEL-LINKS: FU-OSCAL-EXPORTER, CTRL-TRACEABILITY-COVERAGE, FLOW-MODEL-CHANGE-TO-VERIFIED-ARTIFACTS, FU-THREAT-EXPORTER, FU-VALIDATION-ENGINE, STATE-MODEL-INVALID, EVT-VALIDATION-FAILED
func GenerateOSCALPOAMFromFile ¶
func GenerateOSCALPOAMFromFile(architecturePath string, options OSCALPOAMOptions) (OSCALPOAMResult, error)
TRLC-LINKS: REQ-EMG-001, REQ-EMG-013 ENGMODEL-LINKS: FU-OSCAL-EXPORTER, CTRL-TRACEABILITY-COVERAGE, FLOW-MODEL-CHANGE-TO-VERIFIED-ARTIFACTS
type OSCALProfileOptions ¶ added in v0.2.0
type OSCALProfileOptions = oscal.ProfileOptions
ENGMODEL-LINKS: FU-OSCAL-EXPORTER, CTRL-TRACEABILITY-COVERAGE
type OSCALSSPDocument ¶
type OSCALSSPDocument = oscal.SSPDocument
ENGMODEL-LINKS: FU-OSCAL-EXPORTER, CTRL-TRACEABILITY-COVERAGE
type OSCALSSPOptions ¶
type OSCALSSPOptions = oscal.SSPOptions
ENGMODEL-LINKS: FU-OSCAL-EXPORTER, CTRL-TRACEABILITY-COVERAGE
type OSCALSSPResult ¶
ENGMODEL-LINKS: FU-OSCAL-EXPORTER, CTRL-TRACEABILITY-COVERAGE, FU-VALIDATION-ENGINE, STATE-MODEL-INVALID, EVT-VALIDATION-FAILED
func GenerateOSCALSSP ¶
func GenerateOSCALSSP(bundle Bundle, options OSCALSSPOptions) (OSCALSSPResult, error)
TRLC-LINKS: REQ-EMG-001, REQ-EMG-013, REQ-EMG-035, REQ-EMG-036 ENGMODEL-LINKS: FU-OSCAL-EXPORTER, CTRL-TRACEABILITY-COVERAGE, FLOW-MODEL-CHANGE-TO-VERIFIED-ARTIFACTS, FU-VALIDATION-ENGINE, STATE-MODEL-INVALID, EVT-VALIDATION-FAILED
func GenerateOSCALSSPFromFile ¶
func GenerateOSCALSSPFromFile(architecturePath string, options OSCALSSPOptions) (OSCALSSPResult, error)
TRLC-LINKS: REQ-EMG-001, REQ-EMG-013 ENGMODEL-LINKS: FU-OSCAL-EXPORTER, CTRL-TRACEABILITY-COVERAGE, FLOW-MODEL-CHANGE-TO-VERIFIED-ARTIFACTS
type ObjectiveReference ¶ added in v0.5.0
type ObjectiveReference = model.ObjectiveReference
Model types. Each is an alias of the internal model type, so values move freely between the facade and every generator in this package. The set is every exported type reachable from Bundle, CanonicalBundle, WorkspaceDocument, ManifestDocument, AuthoringContract and SemanticModel.
type POAMArtifact ¶ added in v0.5.0
type POAMArtifact = model.POAMArtifact
Model types. Each is an alias of the internal model type, so values move freely between the facade and every generator in this package. The set is every exported type reachable from Bundle, CanonicalBundle, WorkspaceDocument, ManifestDocument, AuthoringContract and SemanticModel.
type POAMItem ¶ added in v0.5.0
Model types. Each is an alias of the internal model type, so values move freely between the facade and every generator in this package. The set is every exported type reachable from Bundle, CanonicalBundle, WorkspaceDocument, ManifestDocument, AuthoringContract and SemanticModel.
type ProblemReport ¶ added in v0.5.0
type ProblemReport = model.ProblemReport
Model types. Each is an alias of the internal model type, so values move freely between the facade and every generator in this package. The set is every exported type reachable from Bundle, CanonicalBundle, WorkspaceDocument, ManifestDocument, AuthoringContract and SemanticModel.
type PublishedProjection ¶ added in v0.2.0
type PublishedProjection = composition.PublishedProjection
PublishedProjection groups the entities selected from one dependency publication. TRLC-LINKS: REQ-EMG-050, REQ-EMG-051
type PublishedProjectionEntity ¶ added in v0.2.0
type PublishedProjectionEntity = composition.PublishedProjectionEntity
PublishedProjectionEntity is one explicitly published dependency entity, retaining its typed value, qualified identity, source bundle, and provenance. TRLC-LINKS: REQ-EMG-050, REQ-EMG-051
type ReferencedElement ¶ added in v0.5.0
type ReferencedElement = model.ReferencedElement
Model types. Each is an alias of the internal model type, so values move freely between the facade and every generator in this package. The set is every exported type reachable from Bundle, CanonicalBundle, WorkspaceDocument, ManifestDocument, AuthoringContract and SemanticModel.
type RelationshipPair ¶ added in v0.5.0
type RelationshipPair = validate.RelationshipPair
RelationshipPair is one allowed mapping type with its end kinds.
type Requirement ¶ added in v0.5.0
type Requirement = model.Requirement
Model types. Each is an alias of the internal model type, so values move freely between the facade and every generator in this package. The set is every exported type reachable from Bundle, CanonicalBundle, WorkspaceDocument, ManifestDocument, AuthoringContract and SemanticModel.
type RequirementAssurance ¶ added in v0.5.0
type RequirementAssurance = model.RequirementAssurance
Model types. Each is an alias of the internal model type, so values move freely between the facade and every generator in this package. The set is every exported type reachable from Bundle, CanonicalBundle, WorkspaceDocument, ManifestDocument, AuthoringContract and SemanticModel.
type RequirementsDelta ¶
type RequirementsDelta = reqdelta.RequirementsDelta
RequirementsDelta describes stable-ID operations against requirements.yml. Updates replace the complete requirement entity. ENGMODEL-LINKS: FU-MODEL-CHANGE, DO-REQUIREMENTS-DELTA, DO-REQUIREMENTS-DOCUMENT
type RequirementsDeltaOperations ¶
type RequirementsDeltaOperations = reqdelta.RequirementsDeltaOperations
RequirementsDeltaOperations groups supported requirement mutations. ENGMODEL-LINKS: FU-MODEL-CHANGE, DO-REQUIREMENTS-DELTA
type RequirementsDeltaResult ¶
type RequirementsDeltaResult = reqdelta.RequirementsDeltaResult
RequirementsDeltaResult is the validated candidate and deterministic change summary. ENGMODEL-LINKS: FU-MODEL-CHANGE, FU-VALIDATION-ENGINE, DO-REQUIREMENTS-DELTA, DO-REQUIREMENTS-DOCUMENT
func ApplyRequirementsDelta ¶
func ApplyRequirementsDelta(root, deltaPath string) (result RequirementsDeltaResult, err error)
ApplyRequirementsDelta validates and atomically writes a requirements delta. TRLC-LINKS: REQ-EMG-031, REQ-EMG-032, REQ-EMG-033 ENGMODEL-LINKS: FU-MODEL-CHANGE, FU-MODEL-LOADER, FU-VALIDATION-ENGINE, DO-REQUIREMENTS-DELTA, DO-REQUIREMENTS-DOCUMENT, DEP-LOCAL-WORKSPACE
func PlanRequirementsDelta ¶
func PlanRequirementsDelta(root, deltaPath string) (RequirementsDeltaResult, error)
PlanRequirementsDelta loads a delta, applies it in memory, and validates the complete candidate. It never modifies requirements.yml. TRLC-LINKS: REQ-EMG-031, REQ-EMG-032 ENGMODEL-LINKS: FU-MODEL-CHANGE, FU-MODEL-LOADER, FU-VALIDATION-ENGINE, DO-REQUIREMENTS-DELTA, DO-REQUIREMENTS-DOCUMENT
type RequirementsDocument ¶ added in v0.5.0
type RequirementsDocument = model.RequirementsDocument
Model types. Each is an alias of the internal model type, so values move freely between the facade and every generator in this package. The set is every exported type reachable from Bundle, CanonicalBundle, WorkspaceDocument, ManifestDocument, AuthoringContract and SemanticModel.
func LoadRequirements ¶ added in v0.5.0
func LoadRequirements(path string) (RequirementsDocument, error)
LoadRequirements reads a single requirements document. ENGMODEL-LINKS: FU-MODEL-LOADER, DO-ARCHITECTURE-MODEL TRLC-LINKS: REQ-EMG-001, REQ-EMG-044, REQ-EMG-046
type ResolutionOptions ¶ added in v0.4.0
type ResolutionOptions = composition.ResolutionOptions
ResolutionOptions overrides the ENGMOD_WORK and ENGMOD_LOCK environment for one call. Empty fields fall back to the environment. Workspace is "off" or a workspace file path; Lock is "check" or "write". TRLC-LINKS: REQ-EMG-063, REQ-EMG-064
type Result ¶
ENGMODEL-LINKS: FU-CLI-ORCHESTRATION, FU-VIEW-PROJECTION, FU-ASCIIDOC-GENERATOR, FU-VALIDATION-ENGINE, CTRL-TRACEABILITY-COVERAGE, STATE-MODEL-INVALID, EVT-VALIDATION-FAILED
func Generate ¶
TRLC-LINKS: REQ-EMG-001, REQ-EMG-003, REQ-EMG-035, REQ-EMG-036 ENGMODEL-LINKS: FLOW-MODEL-CHANGE-TO-VERIFIED-ARTIFACTS, FU-CLI-ORCHESTRATION, FU-VIEW-PROJECTION, FU-ASCIIDOC-GENERATOR, FU-VALIDATION-ENGINE, CTRL-TRACEABILITY-COVERAGE, STATE-MODEL-INVALID, EVT-VALIDATION-FAILED
func GenerateFromFile ¶
TRLC-LINKS: REQ-EMG-001, REQ-EMG-003 ENGMODEL-LINKS: FLOW-MODEL-CHANGE-TO-VERIFIED-ARTIFACTS, FU-CLI-ORCHESTRATION, FU-VIEW-PROJECTION
type Risk ¶ added in v0.5.0
Model types. Each is an alias of the internal model type, so values move freely between the facade and every generator in this package. The set is every exported type reachable from Bundle, CanonicalBundle, WorkspaceDocument, ManifestDocument, AuthoringContract and SemanticModel.
type RiskEvidence ¶ added in v0.5.0
type RiskEvidence = model.RiskEvidence
Model types. Each is an alias of the internal model type, so values move freely between the facade and every generator in this package. The set is every exported type reachable from Bundle, CanonicalBundle, WorkspaceDocument, ManifestDocument, AuthoringContract and SemanticModel.
type SQAAudit ¶ added in v0.5.0
Model types. Each is an alias of the internal model type, so values move freely between the facade and every generator in this package. The set is every exported type reachable from Bundle, CanonicalBundle, WorkspaceDocument, ManifestDocument, AuthoringContract and SemanticModel.
type Satisfaction ¶ added in v0.5.0
type Satisfaction = model.Satisfaction
Model types. Each is an alias of the internal model type, so values move freely between the facade and every generator in this package. The set is every exported type reachable from Bundle, CanonicalBundle, WorkspaceDocument, ManifestDocument, AuthoringContract and SemanticModel.
type SemanticContent ¶ added in v0.5.0
type SemanticContent = model.SemanticContent
Model types. Each is an alias of the internal model type, so values move freely between the facade and every generator in this package. The set is every exported type reachable from Bundle, CanonicalBundle, WorkspaceDocument, ManifestDocument, AuthoringContract and SemanticModel.
type SemanticDiagnostic ¶ added in v0.5.0
type SemanticDiagnostic = model.SemanticDiagnostic
Model types. Each is an alias of the internal model type, so values move freely between the facade and every generator in this package. The set is every exported type reachable from Bundle, CanonicalBundle, WorkspaceDocument, ManifestDocument, AuthoringContract and SemanticModel.
func GenerateSysMLV2Projection ¶ added in v0.2.0
func GenerateSysMLV2Projection(semantic SemanticModel) (string, []SemanticDiagnostic)
GenerateSysMLV2Projection renders a pre-built semantic graph. Missing rendering rules are errors; official concepts are never replaced by a generic item declaration.
TRLC-LINKS: REQ-EMG-036 ENGMODEL-LINKS: FU-SYSML-EXPORTER, DO-CANONICAL-SEMANTIC-MODEL, DO-SYSML-V2-MODEL
func ValidateSemanticModel ¶ added in v0.5.0
func ValidateSemanticModel(semantic SemanticModel) []SemanticDiagnostic
ValidateSemanticModel checks identity, relationship and ownership invariants of a semantic model. ENGMODEL-LINKS: FU-MODEL-LOADER, DO-CANONICAL-SEMANTIC-MODEL TRLC-LINKS: REQ-EMG-035, REQ-EMG-036, REQ-EMG-037
type SemanticElement ¶ added in v0.5.0
type SemanticElement = model.SemanticElement
Model types. Each is an alias of the internal model type, so values move freely between the facade and every generator in this package. The set is every exported type reachable from Bundle, CanonicalBundle, WorkspaceDocument, ManifestDocument, AuthoringContract and SemanticModel.
type SemanticElementKind ¶ added in v0.5.0
type SemanticElementKind = model.SemanticElementKind
Model types. Each is an alias of the internal model type, so values move freely between the facade and every generator in this package. The set is every exported type reachable from Bundle, CanonicalBundle, WorkspaceDocument, ManifestDocument, AuthoringContract and SemanticModel.
type SemanticExpression ¶ added in v0.5.0
type SemanticExpression = model.SemanticExpression
Model types. Each is an alias of the internal model type, so values move freely between the facade and every generator in this package. The set is every exported type reachable from Bundle, CanonicalBundle, WorkspaceDocument, ManifestDocument, AuthoringContract and SemanticModel.
type SemanticFeature ¶ added in v0.5.0
type SemanticFeature = model.SemanticFeature
Model types. Each is an alias of the internal model type, so values move freely between the facade and every generator in this package. The set is every exported type reachable from Bundle, CanonicalBundle, WorkspaceDocument, ManifestDocument, AuthoringContract and SemanticModel.
type SemanticFeatureKind ¶ added in v0.5.0
type SemanticFeatureKind = model.SemanticFeatureKind
Model types. Each is an alias of the internal model type, so values move freely between the facade and every generator in this package. The set is every exported type reachable from Bundle, CanonicalBundle, WorkspaceDocument, ManifestDocument, AuthoringContract and SemanticModel.
type SemanticImport ¶ added in v0.5.0
type SemanticImport = model.SemanticImport
Model types. Each is an alias of the internal model type, so values move freely between the facade and every generator in this package. The set is every exported type reachable from Bundle, CanonicalBundle, WorkspaceDocument, ManifestDocument, AuthoringContract and SemanticModel.
type SemanticMetadata ¶ added in v0.5.0
type SemanticMetadata = model.SemanticMetadata
Model types. Each is an alias of the internal model type, so values move freely between the facade and every generator in this package. The set is every exported type reachable from Bundle, CanonicalBundle, WorkspaceDocument, ManifestDocument, AuthoringContract and SemanticModel.
type SemanticModel ¶ added in v0.5.0
type SemanticModel = model.SemanticModel
Model types. Each is an alias of the internal model type, so values move freely between the facade and every generator in this package. The set is every exported type reachable from Bundle, CanonicalBundle, WorkspaceDocument, ManifestDocument, AuthoringContract and SemanticModel.
func ImportSysMLV2Project ¶ added in v0.2.0
func ImportSysMLV2Project(sourcePath string) (SemanticModel, error)
ImportSysMLV2Project reconstructs the canonical semantic model from legacy projects that embedded an Engineering Model payload. Native projections do not embed non-SysML canonical data.
TRLC-LINKS: REQ-EMG-036, REQ-EMG-037
type SemanticQuantity ¶ added in v0.5.0
type SemanticQuantity = model.SemanticQuantity
Model types. Each is an alias of the internal model type, so values move freely between the facade and every generator in this package. The set is every exported type reachable from Bundle, CanonicalBundle, WorkspaceDocument, ManifestDocument, AuthoringContract and SemanticModel.
type SemanticRelationship ¶ added in v0.5.0
type SemanticRelationship = model.SemanticRelationship
Model types. Each is an alias of the internal model type, so values move freely between the facade and every generator in this package. The set is every exported type reachable from Bundle, CanonicalBundle, WorkspaceDocument, ManifestDocument, AuthoringContract and SemanticModel.
type SemanticRelationshipKind ¶ added in v0.5.0
type SemanticRelationshipKind = model.SemanticRelationshipKind
Model types. Each is an alias of the internal model type, so values move freely between the facade and every generator in this package. The set is every exported type reachable from Bundle, CanonicalBundle, WorkspaceDocument, ManifestDocument, AuthoringContract and SemanticModel.
type SemanticSeverity ¶ added in v0.5.0
type SemanticSeverity = model.SemanticSeverity
Model types. Each is an alias of the internal model type, so values move freely between the facade and every generator in this package. The set is every exported type reachable from Bundle, CanonicalBundle, WorkspaceDocument, ManifestDocument, AuthoringContract and SemanticModel.
type SemanticValue ¶ added in v0.5.0
type SemanticValue = model.SemanticValue
Model types. Each is an alias of the internal model type, so values move freely between the facade and every generator in this package. The set is every exported type reachable from Bundle, CanonicalBundle, WorkspaceDocument, ManifestDocument, AuthoringContract and SemanticModel.
type SpecDeltaOperation ¶ added in v0.6.0
type SpecDeltaOperation = reqdelta.SpecDeltaOperation
SpecDeltaOperation names the OpenSpec delta section RenderSpecDelta renders. ENGMODEL-LINKS: FU-MODEL-CHANGE
type SpecDeltaOptions ¶ added in v0.6.0
type SpecDeltaOptions = reqdelta.SpecDeltaOptions
SpecDeltaOptions selects the requirements to render (IDs or Prefix) and the optional capability heading and delta operation. ENGMODEL-LINKS: FU-MODEL-CHANGE, DO-REQUIREMENTS-DOCUMENT
type SpecDeltaResult ¶ added in v0.6.0
type SpecDeltaResult = reqdelta.SpecDeltaResult
SpecDeltaResult is the rendered spec delta markdown, the rendered IDs and warnings. ENGMODEL-LINKS: FU-MODEL-CHANGE, DO-REQUIREMENTS-DOCUMENT
func RenderSpecDelta ¶ added in v0.6.0
func RenderSpecDelta(requirements []Requirement, options SpecDeltaOptions) (SpecDeltaResult, error)
RenderSpecDelta renders OpenSpec spec delta markdown from model requirements: one requirement per entry whose "<ID>: <text>" line starts with the model text (shall and must capitalized) and one scenario from verificationCriteria. TRLC-LINKS: REQ-EMG-081 ENGMODEL-LINKS: FU-MODEL-CHANGE, DO-REQUIREMENTS-DOCUMENT
func RenderSpecDeltaFromModel ¶ added in v0.6.0
func RenderSpecDeltaFromModel(manifestPath string, options SpecDeltaOptions) (SpecDeltaResult, error)
RenderSpecDeltaFromModel loads engmod.yml and renders its selected requirements. TRLC-LINKS: REQ-EMG-081 ENGMODEL-LINKS: FU-MODEL-CHANGE, FU-MODEL-LOADER, DO-REQUIREMENTS-DOCUMENT
type StableIdentifierGuide ¶ added in v0.5.0
type StableIdentifierGuide = model.StableIdentifierGuide
Model types. Each is an alias of the internal model type, so values move freely between the facade and every generator in this package. The set is every exported type reachable from Bundle, CanonicalBundle, WorkspaceDocument, ManifestDocument, AuthoringContract and SemanticModel.
type State ¶ added in v0.5.0
Model types. Each is an alias of the internal model type, so values move freely between the facade and every generator in this package. The set is every exported type reachable from Bundle, CanonicalBundle, WorkspaceDocument, ManifestDocument, AuthoringContract and SemanticModel.
type StructuralCoverage ¶ added in v0.5.0
type StructuralCoverage = model.StructuralCoverage
Model types. Each is an alias of the internal model type, so values move freely between the facade and every generator in this package. The set is every exported type reachable from Bundle, CanonicalBundle, WorkspaceDocument, ManifestDocument, AuthoringContract and SemanticModel.
type StructurizrExportResult ¶
type StructurizrExportResult = structurizr.Result
ENGMODEL-LINKS: FU-STRUCTURIZR-EXPORTER, DO-STRUCTURIZR-DSL, FU-VALIDATION-ENGINE, CTRL-TRACEABILITY-COVERAGE, STATE-MODEL-INVALID, EVT-VALIDATION-FAILED
func GenerateStructurizrDSL ¶
func GenerateStructurizrDSL(bundle Bundle) (StructurizrExportResult, error)
TRLC-LINKS: REQ-EMG-001, REQ-EMG-005, REQ-EMG-035, REQ-EMG-036 ENGMODEL-LINKS: FU-STRUCTURIZR-EXPORTER, DO-STRUCTURIZR-DSL, FLOW-MODEL-CHANGE-TO-VERIFIED-ARTIFACTS, DEP-LOCAL-WORKSPACE, DEP-CI-PIPELINE, FU-VALIDATION-ENGINE, CTRL-TRACEABILITY-COVERAGE, STATE-MODEL-INVALID, EVT-VALIDATION-FAILED
func GenerateStructurizrDSLFromFile ¶
func GenerateStructurizrDSLFromFile(architecturePath string) (StructurizrExportResult, error)
TRLC-LINKS: REQ-EMG-001, REQ-EMG-005 ENGMODEL-LINKS: FU-STRUCTURIZR-EXPORTER, DO-STRUCTURIZR-DSL, FLOW-MODEL-CHANGE-TO-VERIFIED-ARTIFACTS
type Subsystem ¶ added in v0.5.0
Model types. Each is an alias of the internal model type, so values move freely between the facade and every generator in this package. The set is every exported type reachable from Bundle, CanonicalBundle, WorkspaceDocument, ManifestDocument, AuthoringContract and SemanticModel.
type SysMLCoverageAuthority ¶ added in v0.2.0
type SysMLCoverageAuthority = sysml.CoverageAuthority
type SysMLCoverageCheckEvidence ¶ added in v0.2.0
type SysMLCoverageCheckEvidence = sysml.CoverageCheckEvidence
type SysMLCoverageManifest ¶ added in v0.2.0
type SysMLCoverageManifest = sysml.CoverageManifest
func SysMLV2Coverage ¶ added in v0.2.0
func SysMLV2Coverage() SysMLCoverageManifest
SysMLV2Coverage returns metaclass/property-level evidence generated from the pinned official inventory and strict binding.
TRLC-LINKS: REQ-EMG-039, REQ-EMG-040
type SysMLCoverageTotals ¶ added in v0.2.0
type SysMLCoverageTotals = sysml.CoverageTotals
type SysMLExportResult ¶ added in v0.2.0
type SysMLExportResult = sysml.ExportResult
SysMLExportResult is a deterministic textual projection plus explicit projection and conformance diagnostics.
func ExportSysMLV2Project ¶ added in v0.2.0
func ExportSysMLV2Project(architecturePath, projectDir, kparPath, sysandPath string) (SysMLExportResult, error)
ExportSysMLV2Project creates a Sysand interchange project and builds its KPAR. Sysand, rather than a custom ZIP writer, owns all normative KPAR packaging.
TRLC-LINKS: REQ-EMG-036, REQ-EMG-037 ENGMODEL-LINKS: FU-SYSML-EXPORTER, IF-CLI-ENGSYSML, DO-SYSML-V2-MODEL, REF-SYSML-V2-TOOLCHAIN
func GenerateSysMLV2 ¶ added in v0.2.0
func GenerateSysMLV2(bundle Bundle) (SysMLExportResult, error)
GenerateSysMLV2 validates and projects a Bundle before rendering.
TRLC-LINKS: REQ-EMG-035, REQ-EMG-036 ENGMODEL-LINKS: FU-SYSML-EXPORTER, DO-CANONICAL-SEMANTIC-MODEL, DO-SYSML-V2-MODEL
func GenerateSysMLV2FromFile ¶ added in v0.2.0
func GenerateSysMLV2FromFile(architecturePath string) (SysMLExportResult, error)
GenerateSysMLV2FromFile loads the canonical YAML input and generates a SysML v2 textual projection.
TRLC-LINKS: REQ-EMG-035, REQ-EMG-036, REQ-EMG-037, REQ-EMG-047, REQ-EMG-050 ENGMODEL-LINKS: FU-SYSML-EXPORTER, IF-CLI-ENGSYSML, DO-CANONICAL-SEMANTIC-MODEL, DO-SYSML-V2-MODEL, REF-SYSML-V2-TOOLCHAIN
type SysMLExtensionCoverage ¶ added in v0.2.0
type SysMLExtensionCoverage = sysml.ExtensionCoverage
type SysMLMetaclassCoverage ¶ added in v0.2.0
type SysMLMetaclassCoverage = sysml.MetaclassCoverage
type SysMLPropertyCoverage ¶ added in v0.2.0
type SysMLPropertyCoverage = sysml.PropertyCoverage
type SysMLRelationshipCoverage ¶ added in v0.2.0
type SysMLRelationshipCoverage = sysml.RelationshipCoverage
type SysMLRendererCoverage ¶ added in v0.2.0
type SysMLRendererCoverage = sysml.RendererCoverage
type SysMLRendererEvidence ¶ added in v0.2.0
type SysMLRendererEvidence = sysml.RendererEvidence
type SysMLRoundTripResult ¶ added in v0.2.0
type SysMLRoundTripResult = sysml.RoundTripResult
SysMLRoundTripResult captures the normative KPAR path and reopened native SysML source used for source-integrity comparison.
func ReopenSysMLV2Project ¶ added in v0.2.0
func ReopenSysMLV2Project(kparPath, reopenedDir, sysandPath string) (SysMLRoundTripResult, error)
ReopenSysMLV2Project clones a KPAR with Sysand and returns its native SysML project source.
TRLC-LINKS: REQ-EMG-036, REQ-EMG-037
func VerifySysMLV2RoundTrip ¶ added in v0.2.0
func VerifySysMLV2RoundTrip(architecturePath, kparPath, reopenedDir, sysandPath string) (SysMLRoundTripResult, error)
VerifySysMLV2RoundTrip compares the reopened KPAR source to a fresh native SysML projection of the authored Engineering Model.
TRLC-LINKS: REQ-EMG-036, REQ-EMG-037
type TRLCExportOptions ¶
ENGMODEL-LINKS: FU-TRLC-EXPORTER, CTRL-TRACEABILITY-COVERAGE
type TRLCExportResult ¶
ENGMODEL-LINKS: FU-TRLC-EXPORTER, CTRL-TRACEABILITY-COVERAGE
func GenerateTRLCRequirements ¶
func GenerateTRLCRequirements(requirements RequirementsDocument, options TRLCExportOptions) (TRLCExportResult, error)
TRLC-LINKS: REQ-EMG-006, REQ-EMG-035, REQ-EMG-036 ENGMODEL-LINKS: FU-TRLC-EXPORTER, CTRL-TRACEABILITY-COVERAGE, FLOW-MODEL-CHANGE-TO-VERIFIED-ARTIFACTS
func GenerateTRLCRequirementsFromFile ¶
func GenerateTRLCRequirementsFromFile(requirementsPath string, options TRLCExportOptions) (TRLCExportResult, error)
TRLC-LINKS: REQ-EMG-006 ENGMODEL-LINKS: FU-TRLC-EXPORTER, CTRL-TRACEABILITY-COVERAGE, FLOW-MODEL-CHANGE-TO-VERIFIED-ARTIFACTS
type ThreatAssumption ¶ added in v0.5.0
type ThreatAssumption = model.ThreatAssumption
Model types. Each is an alias of the internal model type, so values move freely between the facade and every generator in this package. The set is every exported type reachable from Bundle, CanonicalBundle, WorkspaceDocument, ManifestDocument, AuthoringContract and SemanticModel.
type ThreatAssumptionEvidence ¶ added in v0.5.0
type ThreatAssumptionEvidence = model.ThreatAssumptionEvidence
Model types. Each is an alias of the internal model type, so values move freely between the facade and every generator in this package. The set is every exported type reachable from Bundle, CanonicalBundle, WorkspaceDocument, ManifestDocument, AuthoringContract and SemanticModel.
type ThreatMitigation ¶ added in v0.5.0
type ThreatMitigation = model.ThreatMitigation
Model types. Each is an alias of the internal model type, so values move freely between the facade and every generator in this package. The set is every exported type reachable from Bundle, CanonicalBundle, WorkspaceDocument, ManifestDocument, AuthoringContract and SemanticModel.
type ThreatMitigationEvidence ¶ added in v0.5.0
type ThreatMitigationEvidence = model.ThreatMitigationEvidence
Model types. Each is an alias of the internal model type, so values move freely between the facade and every generator in this package. The set is every exported type reachable from Bundle, CanonicalBundle, WorkspaceDocument, ManifestDocument, AuthoringContract and SemanticModel.
type ThreatModelExportOptions ¶
type ThreatModelExportOptions = threatmodel.Options
ENGMODEL-LINKS: FU-THREAT-EXPORTER, DO-THREAT-DRAGON-JSON
type ThreatModelExportResult ¶
type ThreatModelExportResult = threatmodel.Result
ENGMODEL-LINKS: FU-THREAT-EXPORTER, DO-THREAT-DRAGON-JSON, FU-VALIDATION-ENGINE, CTRL-TRACEABILITY-COVERAGE, STATE-MODEL-INVALID, EVT-VALIDATION-FAILED
func GenerateThreatModelExport ¶
func GenerateThreatModelExport(bundle Bundle, options ThreatModelExportOptions) (ThreatModelExportResult, error)
TRLC-LINKS: REQ-EMG-001, REQ-EMG-004, REQ-EMG-011, REQ-EMG-035, REQ-EMG-036 ENGMODEL-LINKS: FU-THREAT-EXPORTER, DO-THREAT-DRAGON-JSON, FLOW-MODEL-CHANGE-TO-VERIFIED-ARTIFACTS, FU-VALIDATION-ENGINE, CTRL-TRACEABILITY-COVERAGE, STATE-MODEL-INVALID, EVT-VALIDATION-FAILED
func GenerateThreatModelExportFromFile ¶
func GenerateThreatModelExportFromFile(architecturePath string, options ThreatModelExportOptions) (ThreatModelExportResult, error)
TRLC-LINKS: REQ-EMG-001, REQ-EMG-004, REQ-EMG-011 ENGMODEL-LINKS: FU-THREAT-EXPORTER, DO-THREAT-DRAGON-JSON, FLOW-MODEL-CHANGE-TO-VERIFIED-ARTIFACTS
type ThreatModelFormat ¶
type ThreatModelFormat = threatmodel.Format
ENGMODEL-LINKS: FU-THREAT-EXPORTER, DO-THREAT-DRAGON-JSON
type ThreatOutOfScope ¶ added in v0.5.0
type ThreatOutOfScope = model.ThreatOutOfScope
Model types. Each is an alias of the internal model type, so values move freely between the facade and every generator in this package. The set is every exported type reachable from Bundle, CanonicalBundle, WorkspaceDocument, ManifestDocument, AuthoringContract and SemanticModel.
type ThreatOutOfScopeEvidence ¶ added in v0.5.0
type ThreatOutOfScopeEvidence = model.ThreatOutOfScopeEvidence
Model types. Each is an alias of the internal model type, so values move freely between the facade and every generator in this package. The set is every exported type reachable from Bundle, CanonicalBundle, WorkspaceDocument, ManifestDocument, AuthoringContract and SemanticModel.
type ThreatScenario ¶ added in v0.5.0
type ThreatScenario = model.ThreatScenario
Model types. Each is an alias of the internal model type, so values move freely between the facade and every generator in this package. The set is every exported type reachable from Bundle, CanonicalBundle, WorkspaceDocument, ManifestDocument, AuthoringContract and SemanticModel.
type ThreatScenarioEvidence ¶ added in v0.5.0
type ThreatScenarioEvidence = model.ThreatScenarioEvidence
Model types. Each is an alias of the internal model type, so values move freely between the facade and every generator in this package. The set is every exported type reachable from Bundle, CanonicalBundle, WorkspaceDocument, ManifestDocument, AuthoringContract and SemanticModel.
type ToolAssessment ¶ added in v0.5.0
type ToolAssessment = model.ToolAssessment
Model types. Each is an alias of the internal model type, so values move freely between the facade and every generator in this package. The set is every exported type reachable from Bundle, CanonicalBundle, WorkspaceDocument, ManifestDocument, AuthoringContract and SemanticModel.
type TraceCodeRef ¶
TraceCodeRef is a code symbol that implements a requirement. ENGMODEL-LINKS: FU-CODEMAP-INFERENCE
type TraceDelegatedStatus ¶ added in v0.4.0
type TraceDelegatedStatus = trace.DelegatedStatus
TraceDelegatedStatus is the trace status of a delegation's target requirement computed in the dependency itself. Status is "implemented", "test-linked", "delegated" or "orphan" as in that repository's own matrix, "not-available" when the dependency has no code sources, and "unknown-requirement" when the target requirement does not exist there. ENGMODEL-LINKS: FU-ALLOCATION-TRACE, FU-SYSTEM-COMPOSITION
type TraceDelegation ¶
type TraceDelegation = trace.Delegation
TraceDelegation is the downward allocation of a requirement onto a subsystem. ENGMODEL-LINKS: FU-ALLOCATION-TRACE
type TraceMatrix ¶
TraceMatrix is the consolidated, machine-readable traceability matrix for one model. ENGMODEL-LINKS: FU-ALLOCATION-TRACE, CTRL-TRACEABILITY-COVERAGE
type TraceOptions ¶ added in v0.4.0
TraceOptions configures BuildTraceMatrixFromFilesWith. TRLC-LINKS: REQ-EMG-063, REQ-EMG-064, REQ-EMG-066
type TraceProvenance ¶ added in v0.2.0
type TraceProvenance = trace.Provenance
TraceProvenance identifies the selected dependency publication that supplied an imported requirement. TRLC-LINKS: REQ-EMG-050, REQ-EMG-051
type TraceRow ¶
TraceRow is one requirement and everything that traces to it. ENGMODEL-LINKS: FU-ALLOCATION-TRACE, CTRL-TRACEABILITY-COVERAGE
type TraceSummary ¶
TraceSummary is the headline coverage roll-up. ENGMODEL-LINKS: FU-ALLOCATION-TRACE
type TrustBoundary ¶ added in v0.5.0
type TrustBoundary = model.TrustBoundary
Model types. Each is an alias of the internal model type, so values move freely between the facade and every generator in this package. The set is every exported type reachable from Bundle, CanonicalBundle, WorkspaceDocument, ManifestDocument, AuthoringContract and SemanticModel.
type UncoveredDisposition ¶ added in v0.5.0
type UncoveredDisposition = model.UncoveredDisposition
Model types. Each is an alias of the internal model type, so values move freely between the facade and every generator in this package. The set is every exported type reachable from Bundle, CanonicalBundle, WorkspaceDocument, ManifestDocument, AuthoringContract and SemanticModel.
type ValidationRules ¶ added in v0.5.0
ValidationRules is the machine-readable subset of the validation rules (controlled vocabularies, relationship kind pairs, field rules).
func AuthoringRules ¶ added in v0.5.0
func AuthoringRules() ValidationRules
AuthoringRules returns the validation rules an author needs before editing YAML, derived from the same tables ValidateBundle uses. ENGMODEL-LINKS: FU-VALIDATION-ENGINE, DO-MODEL-AUTHORING-CONTRACT TRLC-LINKS: REQ-EMG-045, REQ-EMG-009
type VerificationExecution ¶ added in v0.5.0
type VerificationExecution = model.VerificationExecution
Model types. Each is an alias of the internal model type, so values move freely between the facade and every generator in this package. The set is every exported type reachable from Bundle, CanonicalBundle, WorkspaceDocument, ManifestDocument, AuthoringContract and SemanticModel.
type VerificationProcedure ¶ added in v0.5.0
type VerificationProcedure = model.VerificationProcedure
Model types. Each is an alias of the internal model type, so values move freely between the facade and every generator in this package. The set is every exported type reachable from Bundle, CanonicalBundle, WorkspaceDocument, ManifestDocument, AuthoringContract and SemanticModel.
type View ¶ added in v0.5.0
Model types. Each is an alias of the internal model type, so values move freely between the facade and every generator in this package. The set is every exported type reachable from Bundle, CanonicalBundle, WorkspaceDocument, ManifestDocument, AuthoringContract and SemanticModel.
type ViewsDocument ¶ added in v0.5.0
type ViewsDocument = model.ViewsDocument
Model types. Each is an alias of the internal model type, so values move freely between the facade and every generator in this package. The set is every exported type reachable from Bundle, CanonicalBundle, WorkspaceDocument, ManifestDocument, AuthoringContract and SemanticModel.
type WorkspaceDocument ¶ added in v0.5.0
type WorkspaceDocument = model.WorkspaceDocument
Model types. Each is an alias of the internal model type, so values move freely between the facade and every generator in this package. The set is every exported type reachable from Bundle, CanonicalBundle, WorkspaceDocument, ManifestDocument, AuthoringContract and SemanticModel.
func FindWorkspace ¶ added in v0.5.0
func FindWorkspace(start string) (WorkspaceDocument, string, error)
FindWorkspace looks for engmod.work.yml from start upwards, honouring ENGMOD_WORK, and returns the document and its path (empty when none). ENGMODEL-LINKS: FU-MODEL-LOADER, FU-SYSTEM-COMPOSITION TRLC-LINKS: REQ-EMG-048
func FindWorkspaceWith ¶ added in v0.5.0
func FindWorkspaceWith(start, mode string) (WorkspaceDocument, string, error)
FindWorkspaceWith is FindWorkspace with an explicit mode: "" (look up, honouring ENGMOD_WORK), WorkspaceOff, or a path to one workspace file. ENGMODEL-LINKS: FU-MODEL-LOADER, FU-SYSTEM-COMPOSITION TRLC-LINKS: REQ-EMG-048, REQ-EMG-063
func LoadWorkspace ¶ added in v0.5.0
func LoadWorkspace(path string) (WorkspaceDocument, error)
LoadWorkspace reads the workspace file at path. ENGMODEL-LINKS: FU-MODEL-LOADER, FU-SYSTEM-COMPOSITION TRLC-LINKS: REQ-EMG-048, REQ-EMG-049
type WorkspaceReplacement ¶ added in v0.5.0
type WorkspaceReplacement = model.WorkspaceReplacement
Model types. Each is an alias of the internal model type, so values move freely between the facade and every generator in this package. The set is every exported type reachable from Bundle, CanonicalBundle, WorkspaceDocument, ManifestDocument, AuthoringContract and SemanticModel.
Source Files
¶
Directories
¶
| Path | Synopsis |
|---|---|
|
cmd
|
|
|
engair
command
ENGMODEL-OWNER-UNIT: FU-AIRBORNE-ASSURANCE-EXPORTER
|
ENGMODEL-OWNER-UNIT: FU-AIRBORNE-ASSURANCE-EXPORTER |
|
engchange
command
ENGMODEL-OWNER-UNIT: FU-MODEL-CHANGE
|
ENGMODEL-OWNER-UNIT: FU-MODEL-CHANGE |
|
engdoc
command
ENGMODEL-OWNER-UNIT: FU-CLI-ORCHESTRATION
|
ENGMODEL-OWNER-UNIT: FU-CLI-ORCHESTRATION |
|
engdragon
command
ENGMODEL-OWNER-UNIT: FU-THREAT-EXPORTER
|
ENGMODEL-OWNER-UNIT: FU-THREAT-EXPORTER |
|
enggemara
command
ENGMODEL-OWNER-UNIT: FU-CLI-ORCHESTRATION Command enggemara renders the engineering model into OpenSSF Gemara documents (L1 Vector/Principle/Guidance, L2 Capability/Threat/Control, L3 Risk/Policy, L5 Evaluation Log, L6 Enforcement Log, L7 Audit Log) using the official go-gemara SDK types, with an optional OSCAL catalog and assessment-results bridge.
|
ENGMODEL-OWNER-UNIT: FU-CLI-ORCHESTRATION Command enggemara renders the engineering model into OpenSSF Gemara documents (L1 Vector/Principle/Guidance, L2 Capability/Threat/Control, L3 Risk/Policy, L5 Evaluation Log, L6 Enforcement Log, L7 Audit Log) using the official go-gemara SDK types, with an optional OSCAL catalog and assessment-results bridge. |
|
englobster
command
ENGMODEL-OWNER-UNIT: FU-LOBSTER-EXPORTER
|
ENGMODEL-OWNER-UNIT: FU-LOBSTER-EXPORTER |
|
engmcp
command
ENGMODEL-OWNER-UNIT: FU-MCP-SERVER
|
ENGMODEL-OWNER-UNIT: FU-MCP-SERVER |
|
engnaf
command
ENGMODEL-OWNER-UNIT: FU-NAF-EXPORTER
|
ENGMODEL-OWNER-UNIT: FU-NAF-EXPORTER |
|
engoscal
command
ENGMODEL-OWNER-UNIT: FU-OSCAL-EXPORTER
|
ENGMODEL-OWNER-UNIT: FU-OSCAL-EXPORTER |
|
engspec
command
ENGMODEL-OWNER-UNIT: FU-MODEL-CHANGE
|
ENGMODEL-OWNER-UNIT: FU-MODEL-CHANGE |
|
engstruct
command
ENGMODEL-OWNER-UNIT: FU-STRUCTURIZR-EXPORTER
|
ENGMODEL-OWNER-UNIT: FU-STRUCTURIZR-EXPORTER |
|
engsysml
command
ENGMODEL-OWNER-UNIT: FU-SYSML-EXPORTER
|
ENGMODEL-OWNER-UNIT: FU-SYSML-EXPORTER |
|
engtrace
command
ENGMODEL-OWNER-UNIT: FU-ALLOCATION-TRACE
|
ENGMODEL-OWNER-UNIT: FU-ALLOCATION-TRACE |
|
engtrlc
command
ENGMODEL-OWNER-UNIT: FU-TRLC-EXPORTER
|
ENGMODEL-OWNER-UNIT: FU-TRLC-EXPORTER |
|
engview
command
ENGMODEL-OWNER-UNIT: FU-CLI-ORCHESTRATION
|
ENGMODEL-OWNER-UNIT: FU-CLI-ORCHESTRATION |
|
engws
command
ENGMODEL-OWNER-UNIT: FU-CLI-ORCHESTRATION
|
ENGMODEL-OWNER-UNIT: FU-CLI-ORCHESTRATION |
|
sysmlmetamodel
command
ENGMODEL-OWNER-UNIT: FU-CLI-ORCHESTRATION
|
ENGMODEL-OWNER-UNIT: FU-CLI-ORCHESTRATION |
|
examples
|
|
|
bedrock-pr-review-github-app-sample/src
ENGMODEL-OWNER-UNIT: FU-LAMBDA-RUNTIME-OPERATIONS ENGMODEL-CODE-DESCRIPTION: wires Lambda runtime entrypoints and shared execution dependencies
|
ENGMODEL-OWNER-UNIT: FU-LAMBDA-RUNTIME-OPERATIONS ENGMODEL-CODE-DESCRIPTION: wires Lambda runtime entrypoints and shared execution dependencies |
|
coffee-fleet-ota-cloud-sample/src
ENGMODEL-OWNER-UNIT: FU-CLOUD-RUNTIME-OPERATIONS ENGMODEL-CODE-DESCRIPTION: wires cloud runtime handlers and integration entrypoints
|
ENGMODEL-OWNER-UNIT: FU-CLOUD-RUNTIME-OPERATIONS ENGMODEL-CODE-DESCRIPTION: wires cloud runtime handlers and integration entrypoints |
|
payments-engineering-sample/src
ENGMODEL-OWNER-UNIT: FU-CHECKOUT ENGMODEL-CODE-DESCRIPTION: accepts checkout requests and forwards payment authorization flow input
|
ENGMODEL-OWNER-UNIT: FU-CHECKOUT ENGMODEL-CODE-DESCRIPTION: accepts checkout requests and forwards payment authorization flow input |
|
internal
|
|
|
asciidoc
ENGMODEL-OWNER-UNIT: FU-ASCIIDOC-GENERATOR
|
ENGMODEL-OWNER-UNIT: FU-ASCIIDOC-GENERATOR |
|
cliflags
Package cliflags gives every engmod command the same --workspace and --lock flags.
|
Package cliflags gives every engmod command the same --workspace and --lock flags. |
|
codemap
ENGMODEL-OWNER-UNIT: FU-CODEMAP-INFERENCE
|
ENGMODEL-OWNER-UNIT: FU-CODEMAP-INFERENCE |
|
codescan
ENGMODEL-OWNER-UNIT: FU-CODEMAP-INFERENCE
|
ENGMODEL-OWNER-UNIT: FU-CODEMAP-INFERENCE |
|
composition
ENGMODEL-OWNER-UNIT: FU-SYSTEM-COMPOSITION
|
ENGMODEL-OWNER-UNIT: FU-SYSTEM-COMPOSITION |
|
engws
ENGMODEL-OWNER-UNIT: FU-CLI-ORCHESTRATION
|
ENGMODEL-OWNER-UNIT: FU-CLI-ORCHESTRATION |
|
export/airborne
ENGMODEL-OWNER-UNIT: FU-AIRBORNE-ASSURANCE-EXPORTER
|
ENGMODEL-OWNER-UNIT: FU-AIRBORNE-ASSURANCE-EXPORTER |
|
export/exportutil
ENGMODEL-OWNER-UNIT: FU-CLI-ORCHESTRATION
|
ENGMODEL-OWNER-UNIT: FU-CLI-ORCHESTRATION |
|
export/gemara
ENGMODEL-OWNER-UNIT: FU-GEMARA-EXPORTER
|
ENGMODEL-OWNER-UNIT: FU-GEMARA-EXPORTER |
|
export/lobster
ENGMODEL-OWNER-UNIT: FU-LOBSTER-EXPORTER
|
ENGMODEL-OWNER-UNIT: FU-LOBSTER-EXPORTER |
|
export/naf
ENGMODEL-OWNER-UNIT: FU-NAF-EXPORTER
|
ENGMODEL-OWNER-UNIT: FU-NAF-EXPORTER |
|
export/oscal
ENGMODEL-OWNER-UNIT: FU-OSCAL-EXPORTER
|
ENGMODEL-OWNER-UNIT: FU-OSCAL-EXPORTER |
|
export/structurizr
ENGMODEL-OWNER-UNIT: FU-STRUCTURIZR-EXPORTER
|
ENGMODEL-OWNER-UNIT: FU-STRUCTURIZR-EXPORTER |
|
export/sysml
ENGMODEL-OWNER-UNIT: FU-SYSML-EXPORTER
|
ENGMODEL-OWNER-UNIT: FU-SYSML-EXPORTER |
|
export/threatmodel
ENGMODEL-OWNER-UNIT: FU-THREAT-EXPORTER
|
ENGMODEL-OWNER-UNIT: FU-THREAT-EXPORTER |
|
export/trlc
ENGMODEL-OWNER-UNIT: FU-TRLC-EXPORTER
|
ENGMODEL-OWNER-UNIT: FU-TRLC-EXPORTER |
|
generate
ENGMODEL-OWNER-UNIT: FU-CLI-ORCHESTRATION
|
ENGMODEL-OWNER-UNIT: FU-CLI-ORCHESTRATION |
|
integration
Package integration holds cross-package end-to-end tests only: a composed system-of-systems driven through the AsciiDoc publication, the trace and the exporters (Gemara, OSCAL, SysML, Structurizr, threat model), and the multi-repository Atlas Industries example.
|
Package integration holds cross-package end-to-end tests only: a composed system-of-systems driven through the AsciiDoc publication, the trace and the exporters (Gemara, OSCAL, SysML, Structurizr, threat model), and the multi-repository Atlas Industries example. |
|
mcp
ENGMODEL-OWNER-UNIT: FU-MCP-SERVER
|
ENGMODEL-OWNER-UNIT: FU-MCP-SERVER |
|
model
ENGMODEL-OWNER-UNIT: FU-MODEL-LOADER
|
ENGMODEL-OWNER-UNIT: FU-MODEL-LOADER |
|
render/diagramstyle
ENGMODEL-OWNER-UNIT: FU-VIEW-PROJECTION
|
ENGMODEL-OWNER-UNIT: FU-VIEW-PROJECTION |
|
render/mermaid
ENGMODEL-OWNER-UNIT: FU-VIEW-PROJECTION
|
ENGMODEL-OWNER-UNIT: FU-VIEW-PROJECTION |
|
render/svg
ENGMODEL-OWNER-UNIT: FU-VIEW-PROJECTION
|
ENGMODEL-OWNER-UNIT: FU-VIEW-PROJECTION |
|
reqdelta
ENGMODEL-OWNER-UNIT: FU-MODEL-CHANGE
|
ENGMODEL-OWNER-UNIT: FU-MODEL-CHANGE |
|
reqlint
ENGMODEL-OWNER-UNIT: FU-VALIDATION-ENGINE
|
ENGMODEL-OWNER-UNIT: FU-VALIDATION-ENGINE |
|
sysmlmetamodel
ENGMODEL-OWNER-UNIT: FU-MODEL-LOADER
|
ENGMODEL-OWNER-UNIT: FU-MODEL-LOADER |
|
testutil
ENGMODEL-OWNER-UNIT: FU-VALIDATION-ENGINE
|
ENGMODEL-OWNER-UNIT: FU-VALIDATION-ENGINE |
|
textutil
Package textutil holds small, model-independent string and collection helpers shared by the generators.
|
Package textutil holds small, model-independent string and collection helpers shared by the generators. |
|
trace
ENGMODEL-OWNER-UNIT: FU-ALLOCATION-TRACE
|
ENGMODEL-OWNER-UNIT: FU-ALLOCATION-TRACE |
|
validate
ENGMODEL-OWNER-UNIT: FU-VALIDATION-ENGINE
|
ENGMODEL-OWNER-UNIT: FU-VALIDATION-ENGINE |
|
view
ENGMODEL-OWNER-UNIT: FU-VIEW-PROJECTION
|
ENGMODEL-OWNER-UNIT: FU-VIEW-PROJECTION |