rules are list of options not strings
This commit is contained in:
@@ -20,13 +20,73 @@ type TrustedCanonicalProjectionReference = TrustedCanonicalProjectionReference o
|
||||
|
||||
type TrustedRuntimeTraceReference = TrustedRuntimeTraceReference of string
|
||||
|
||||
type CandidateDiscoveryRule = CandidateDiscoveryRule of string
|
||||
type CandidateGroupingRule =
|
||||
| GroupAdjacentSegments
|
||||
| GroupStructurallyLinkedSegments
|
||||
| GroupSharedLiteralClusters
|
||||
| GroupSharedExportSurface
|
||||
|
||||
type ScoringRule = ScoringRule of string
|
||||
type BoundaryRationaleRule =
|
||||
| RecordAdjacentGroupingRationale
|
||||
| RecordStructuralLinkRationale
|
||||
| RecordSharedLiteralRationale
|
||||
| RecordExportSurfaceRationale
|
||||
|
||||
type TieBreakRule = TieBreakRule of string
|
||||
type ScoringRule =
|
||||
| WeightLicenseBanner
|
||||
| WeightPreservedPackageName
|
||||
| WeightSourceMapHint
|
||||
| WeightPreservedRequireString
|
||||
| WeightCharacteristicLiteralSet
|
||||
| WeightHelperSignature
|
||||
| WeightAstShapeFingerprint
|
||||
| WeightExportSurfaceSimilarity
|
||||
| WeightDependencyGraphPosition
|
||||
| WeightByteSimilarity
|
||||
| WeightRuntimeExecutionTrace
|
||||
|
||||
type RequirementRule = RequirementRule of string
|
||||
type RankingRule =
|
||||
| RankByTotalEvidenceWeight
|
||||
| RankByEvidenceDiversity
|
||||
| RankByBoundaryCoverage
|
||||
| RankByRuntimeSupport
|
||||
|
||||
type TieBreakRule =
|
||||
| PreferMoreSpecificPackageMatch
|
||||
| PreferBroaderBoundaryCoverage
|
||||
| PreferStaticEvidenceAgreement
|
||||
| PreferStablePackageNameOrder
|
||||
|
||||
type UnresolvedRule =
|
||||
| KeepBelowThresholdCandidatesUnresolved
|
||||
| KeepCollidingCandidatesUnresolved
|
||||
| KeepAmbiguousCandidatesUnresolved
|
||||
| KeepConflictingEvidenceCandidatesUnresolved
|
||||
|
||||
type RejectedRule =
|
||||
| RejectDeterministicallyAppAuthoredCandidates
|
||||
| RejectDeterministicallyNonPackageCandidates
|
||||
| RejectDeterministicallyContradictedCandidates
|
||||
|
||||
type RequiredManifestField =
|
||||
| CandidatePackageNameField
|
||||
| DecisionStateField
|
||||
| ConfidenceScoreField
|
||||
| EvidenceSummaryField
|
||||
| RawEvidenceReferencesField
|
||||
| MatchedSegmentIdsField
|
||||
| RecoveredBoundaryNotesField
|
||||
| ReplacementPlanField
|
||||
| FallbackReferenceField
|
||||
| EvidenceProvenanceField
|
||||
| AmbiguityNotesField
|
||||
|
||||
type AuditabilityRule =
|
||||
| RecordDecisionRationale
|
||||
| RecordThresholdUsed
|
||||
| RecordScoringInputs
|
||||
| RecordCompetingMatches
|
||||
| RecordDecisionTimestampOrder
|
||||
|
||||
// 2. Commands (Inputs)
|
||||
|
||||
@@ -49,25 +109,25 @@ type TrustedIngestArtifacts = {
|
||||
|
||||
type VendoredCandidateDiscoveryRules = {
|
||||
allowedSignals: EvidenceSignal list
|
||||
groupingRules: CandidateDiscoveryRule list
|
||||
boundaryRationaleRules: CandidateDiscoveryRule list
|
||||
groupingRules: CandidateGroupingRule list
|
||||
boundaryRationaleRules: BoundaryRationaleRule list
|
||||
}
|
||||
|
||||
type ConfidenceScoringRules = {
|
||||
scoringRules: ScoringRule list
|
||||
rankingRules: ScoringRule list
|
||||
rankingRules: RankingRule list
|
||||
tieBreakRules: TieBreakRule list
|
||||
}
|
||||
|
||||
type AcceptanceThresholdPolicy = {
|
||||
acceptanceThreshold: ConfidenceScore
|
||||
unresolvedRules: RequirementRule list
|
||||
rejectedRules: RequirementRule list
|
||||
unresolvedRules: UnresolvedRule list
|
||||
rejectedRules: RejectedRule list
|
||||
}
|
||||
|
||||
type DependencyDecisionRequirements = {
|
||||
requiredManifestRules: RequirementRule list
|
||||
auditabilityRules: RequirementRule list
|
||||
requiredManifestFields: RequiredManifestField list
|
||||
auditabilityRules: AuditabilityRule list
|
||||
}
|
||||
|
||||
type DependencyRecoveryState = {
|
||||
|
||||
Reference in New Issue
Block a user