@tiinex/app 0.1.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +201 -0
- package/NOTICE +31 -0
- package/README.md +26 -0
- package/docs/CONSUMER-CONTRACT.md +65 -0
- package/package.json +94 -0
- package/src/acceptance/knownScenarios.case.mjs +48 -0
- package/src/acceptance/knownScenarios.js +89 -0
- package/src/acceptance/postV423CanonicalTransitionProductVerticalSlice.case.mjs +774 -0
- package/src/acceptance/postV437M0ETimePortalProductParityClosure.case.mjs +51 -0
- package/src/acceptance/postV447M0FGithubSocialPublicationProductIntegration.case.mjs +33 -0
- package/src/acceptance/postV450M0ProductAcceptanceHardening.case.mjs +82 -0
- package/src/acceptance/postV470SchemaReadingContractMaterializationIdentitySourceCoalescingAuthorityCorrection.case.mjs +236 -0
- package/src/acceptance/recoveryAcceptance.case.mjs +196 -0
- package/src/adapters/adapter.definition.schema.json +33 -0
- package/src/adapters/archive/archive.adapter.case.mjs +212 -0
- package/src/adapters/export/export.adapter.js +79 -0
- package/src/adapters/git-native/git-native.adapter.js +43 -0
- package/src/adapters/github/github.adapter.case.mjs +843 -0
- package/src/adapters/github/github.adapter.js +395 -0
- package/src/adapters/github/github.issueEmbedded.js +262 -0
- package/src/adapters/github/github.issueMirror.js +309 -0
- package/src/adapters/github/github.issueSnapshot.js +475 -0
- package/src/adapters/github/github.issueSurface.js +188 -0
- package/src/adapters/github/github.issueTransport.js +237 -0
- package/src/adapters/github/github.publicationRead.js +24 -0
- package/src/adapters/github/github.readTransport.js +18 -0
- package/src/adapters/github/github.repoDiscovery.js +222 -0
- package/src/adapters/github/github.repoMirror.js +255 -0
- package/src/adapters/github/github.repoProxy.js +276 -0
- package/src/adapters/github/github.repoSurface.js +60 -0
- package/src/adapters/github/github.transportDiagnostics.js +68 -0
- package/src/adapters/local/local.adapter.case.mjs +72 -0
- package/src/adapters/local/local.adapter.js +188 -0
- package/src/adapters/registry.js +35 -0
- package/src/adapters/static/static.adapter.js +84 -0
- package/src/app/App.js +1 -0
- package/src/app/TiinexApp.jsx +822 -0
- package/src/app/appShell.views.jsx +58 -0
- package/src/app/artifactAuthoringCapability.js +49 -0
- package/src/app/boot/bootApp.js +19 -0
- package/src/app/boot/environment.js +1 -0
- package/src/app/canonicalAuthoringValues.js +4 -0
- package/src/app/canonicalCreationProductController.js +57 -0
- package/src/app/canonicalCreationProductSettlement.case.mjs +10 -0
- package/src/app/canonicalCreationProductSettlement.js +11 -0
- package/src/app/canonicalReferenceLocalCreateCommand.js +210 -0
- package/src/app/canonicalReferenceTargets.js +73 -0
- package/src/app/canonicalTransitionLocalCreateCommand.js +217 -0
- package/src/app/defaultWorkspaceStart.case.mjs +39 -0
- package/src/app/defaultWorkspaceStart.js +65 -0
- package/src/app/defaultWorkspaceStartCommand.js +55 -0
- package/src/app/durableLocalMutationPolicy.js +21 -0
- package/src/app/githubMaterializationSummary.js +69 -0
- package/src/app/githubProgress.js +25 -0
- package/src/app/githubSourceInput.js +47 -0
- package/src/app/githubSourceMaterializationCommand.js +97 -0
- package/src/app/githubSourceOperation.js +226 -0
- package/src/app/governanceDialogData.js +27 -0
- package/src/app/handoffPackageImportCommand.js +182 -0
- package/src/app/historyAuthority.js +53 -0
- package/src/app/initialWorkspaceBootstrapOperation.js +105 -0
- package/src/app/lineageCommand.js +118 -0
- package/src/app/lineageSourceRecovery.js +339 -0
- package/src/app/localDraftMutationCommand.js +174 -0
- package/src/app/localMaterialCommand.js +124 -0
- package/src/app/nodeGraphVerse.case.mjs +111 -0
- package/src/app/persistenceOwnership.js +92 -0
- package/src/app/productStateBoundary.js +7 -0
- package/src/app/providers/AppProviders.js +1 -0
- package/src/app/providers/LocaleProvider.js +1 -0
- package/src/app/providers/SchemaRegistryProvider.js +1 -0
- package/src/app/providers/WorkspaceProvider.js +1 -0
- package/src/app/publicTarget.js +251 -0
- package/src/app/publicTargetRestoreCommand.js +149 -0
- package/src/app/recordUi.cache.js +35 -0
- package/src/app/recordUi.js +11 -0
- package/src/app/routes/RouteSurface.js +1 -0
- package/src/app/routes/routes.js +1 -0
- package/src/app/runtimeState.js +54 -0
- package/src/app/schemaCurrentDeclaration.js +69 -0
- package/src/app/schemaFactoryLocalCreateCommand.js +101 -0
- package/src/app/schemaFactoryViewerProof.case.mjs +134 -0
- package/src/app/schemaFactoryViewerProof.js +20 -0
- package/src/app/schemaNavigationCommand.js +285 -0
- package/src/app/schemaNavigationMaterialization.js +171 -0
- package/src/app/schemaNavigationRuntimeCatalog.js +25 -0
- package/src/app/schemaNavigationState.js +66 -0
- package/src/app/schemaReadingContractQualification.js +91 -0
- package/src/app/schemaSourceRecovery.js +373 -0
- package/src/app/scrollPersistence.js +30 -0
- package/src/app/semanticOperationHistory.js +18 -0
- package/src/app/shareActionCommand.js +55 -0
- package/src/app/shareProjection.js +190 -0
- package/src/app/shell/AppShell.js +1 -0
- package/src/app/shell/Header.js +1 -0
- package/src/app/shell/Navigation.js +1 -0
- package/src/app/shell/SurfaceSwitcher.js +1 -0
- package/src/app/sourceTransportRefresh.js +176 -0
- package/src/app/startupOwnership.js +40 -0
- package/src/app/startupPresentation.case.mjs +34 -0
- package/src/app/startupPresentation.js +33 -0
- package/src/app/startupPresentation.views.jsx +21 -0
- package/src/app/startupRenderPhase.js +9 -0
- package/src/app/startupWorkspaceCommand.js +62 -0
- package/src/app/startupWorkspaceConfigApplication.js +49 -0
- package/src/app/statePersistenceScheduler.js +106 -0
- package/src/app/tiinexAppConfigPlan.js +108 -0
- package/src/app/tiinexAppConfigSource.js +349 -0
- package/src/app/tiinexAppStartupSource.js +79 -0
- package/src/app/tiinexHostedWorkspaceConventions.js +572 -0
- package/src/app/timePortalHistoricalRead.js +114 -0
- package/src/app/timePortalSnapshotResolution.js +53 -0
- package/src/app/urlMaterialCommand.js +24 -0
- package/src/app/useCanonicalPlacementSelectionOptions.js +9 -0
- package/src/app/useCanonicalReferenceSelectionOptions.js +8 -0
- package/src/app/useLocalMaterialIntake.js +68 -0
- package/src/app/useTimePortalProductController.jsx +111 -0
- package/src/app/useWorkspaceEntrypointIntake.js +77 -0
- package/src/app/useWorkspaceSelectionProductController.jsx +21 -0
- package/src/app/viewState.js +35 -0
- package/src/app/viewport.js +21 -0
- package/src/app/visualDormancy.js +286 -0
- package/src/app/workspaceContinuityNotices.js +32 -0
- package/src/app/workspaceDisplayCounts.js +9 -0
- package/src/app/workspaceEntrypointIntakeCommand.js +87 -0
- package/src/app/workspaceEntrypointProductRouting.case.mjs +20 -0
- package/src/app/workspaceExportCommand.js +21 -0
- package/src/app/workspaceExportDownload.js +23 -0
- package/src/app/workspaceExportExecutionCommand.js +10 -0
- package/src/app/workspaceGithubPublication.js +237 -0
- package/src/app/workspaceHandoffExport.js +56 -0
- package/src/app/workspaceHomeTarget.js +9 -0
- package/src/app/workspaceMulticolumn.js +113 -0
- package/src/app/workspaceNavigationParity.case.mjs +110 -0
- package/src/app/workspaceOpenProgress.js +26 -0
- package/src/app/workspacePlacementOptions.js +46 -0
- package/src/app/workspaceRecordActions.js +158 -0
- package/src/app/workspaceScopedInteraction.js +68 -0
- package/src/app/workspaceSelectionOriginContext.js +29 -0
- package/src/app/workspaceSelectionSession.js +54 -0
- package/src/app/workspaceSourceCloseCommand.js +25 -0
- package/src/app/workspaceSpineProductRouting.case.mjs +22 -0
- package/src/app/workspaceStartupTransition.js +32 -0
- package/src/app/workspaceWindow.js +85 -0
- package/src/artifacts/artifact.fixture.js +1 -0
- package/src/artifacts/artifact.identity.js +6 -0
- package/src/artifacts/artifact.identityAggregation.js +218 -0
- package/src/artifacts/artifact.model.js +2 -0
- package/src/artifacts/artifact.parse.case.mjs +196 -0
- package/src/artifacts/artifact.participantIndex.js +189 -0
- package/src/artifacts/fixtures/evidence.trace.md +50 -0
- package/src/artifacts/fixtures/topic.trace.md +33 -0
- package/src/artifacts/fixtures/unknown-schema.trace.md +25 -0
- package/src/audit/audit.findings.js +1 -0
- package/src/audit/audit.model.js +2 -0
- package/src/audit/audit.plan.js +13 -0
- package/src/audit/audit.report.js +12 -0
- package/src/audit/audit.severity.js +1 -0
- package/src/audit/audit.traverse.js +119 -0
- package/src/audit/integrity/auditIntegrity.checks.js +1 -0
- package/src/audit/integrity/auditIntegrity.compare.js +1 -0
- package/src/audit/lineage/auditLineage.load.js +1 -0
- package/src/audit/lineage/auditLineage.plan.js +1 -0
- package/src/audit/lineage/auditLineage.resolve.js +12 -0
- package/src/audit/sources/auditSources.boundaries.js +1 -0
- package/src/audit/sources/auditSources.checks.js +1 -0
- package/src/audit/validation/auditValidation.recheck.js +1 -0
- package/src/audit/validation/auditValidation.run.js +1 -0
- package/src/build.identity.js +15 -0
- package/src/commands/command.vocabulary.js +14 -0
- package/src/conformance/conformance.fixtures.js +151 -0
- package/src/conformance/conformance.run.js +238 -0
- package/src/data/applicationDataStore.js +23 -0
- package/src/data/companionAccess.js +35 -0
- package/src/diagnostics/events.js +1 -0
- package/src/diagnostics/invariant.js +1 -0
- package/src/diagnostics/schemaBindingChecks.js +1 -0
- package/src/diagnostics/schemaModuleChecks.js +1 -0
- package/src/diagnostics/sourceBoundaryChecks.js +5 -0
- package/src/diagnostics/sourceTransport.report.js +190 -0
- package/src/discovery/discovery.controls.js +7 -0
- package/src/export/export.plan.js +182 -0
- package/src/export/handoff.plan.js +50 -0
- package/src/export/package.builder.case.mjs +97 -0
- package/src/export/package.controlTopology.case.mjs +130 -0
- package/src/export/package.zip.case.mjs +33 -0
- package/src/graph/artifactGraph.model.js +344 -0
- package/src/graph/artifactGraph.project.js +139 -0
- package/src/graph/artifactGraph.worker.js +10 -0
- package/src/i18n/i18n.keys.js +1 -0
- package/src/i18n/i18n.provider.js +1 -0
- package/src/i18n/i18n.resolve.js +5 -0
- package/src/i18n/locales/en/common.json +4 -0
- package/src/i18n/locales/en/schemas/evidence.json +3 -0
- package/src/i18n/locales/en/schemas/presentation-surface.json +3 -0
- package/src/i18n/locales/en/schemas/preservation.json +3 -0
- package/src/i18n/locales/en/schemas/root.json +3 -0
- package/src/i18n/locales/en/schemas/schema-module.json +3 -0
- package/src/i18n/locales/en/schemas/topic.json +3 -0
- package/src/i18n/locales/en/surfaces/audit.json +3 -0
- package/src/i18n/locales/en/surfaces/create.json +3 -0
- package/src/i18n/locales/en/surfaces/detail.json +3 -0
- package/src/i18n/locales/en/surfaces/display-options.json +3 -0
- package/src/i18n/locales/en/surfaces/edit.json +3 -0
- package/src/i18n/locales/en/surfaces/feed.json +3 -0
- package/src/i18n/locales/en/surfaces/lineage.json +3 -0
- package/src/i18n/locales/en/surfaces/preview.json +3 -0
- package/src/i18n/locales/en/surfaces/share.json +3 -0
- package/src/i18n/locales/en/surfaces/source-settings.json +3 -0
- package/src/i18n/locales/en/surfaces/tree.json +3 -0
- package/src/i18n/locales/sv/common.json +4 -0
- package/src/i18n/locales/sv/schemas/evidence.json +3 -0
- package/src/i18n/locales/sv/schemas/presentation-surface.json +3 -0
- package/src/i18n/locales/sv/schemas/preservation.json +3 -0
- package/src/i18n/locales/sv/schemas/root.json +3 -0
- package/src/i18n/locales/sv/schemas/schema-module.json +3 -0
- package/src/i18n/locales/sv/schemas/topic.json +3 -0
- package/src/i18n/locales/sv/surfaces/audit.json +3 -0
- package/src/i18n/locales/sv/surfaces/create.json +3 -0
- package/src/i18n/locales/sv/surfaces/detail.json +3 -0
- package/src/i18n/locales/sv/surfaces/display-options.json +3 -0
- package/src/i18n/locales/sv/surfaces/edit.json +3 -0
- package/src/i18n/locales/sv/surfaces/feed.json +3 -0
- package/src/i18n/locales/sv/surfaces/lineage.json +3 -0
- package/src/i18n/locales/sv/surfaces/preview.json +3 -0
- package/src/i18n/locales/sv/surfaces/share.json +3 -0
- package/src/i18n/locales/sv/surfaces/source-settings.json +3 -0
- package/src/i18n/locales/sv/surfaces/tree.json +3 -0
- package/src/index.js +10 -0
- package/src/integrity/integrity.testFixture.js +9 -0
- package/src/interaction/interaction.spine.js +12 -0
- package/src/lineage/lineage.audit.js +1 -0
- package/src/lineage/lineage.edges.js +1 -0
- package/src/main.js +319 -0
- package/src/main.jsx +34 -0
- package/src/multiverse/multiverse.model.js +10 -0
- package/src/parity/poc.m1ParityScenarios.js +42 -0
- package/src/parity/poc.parityLedger.js +261 -0
- package/src/publication/publication.githubSocialContract.case.mjs +247 -0
- package/src/publication/publication.preflight.case.mjs +64 -0
- package/src/react/TiinexApplication.jsx +39 -0
- package/src/react/VerseHost.jsx +29 -0
- package/src/react/applicationDataContext.jsx +30 -0
- package/src/react.js +2 -0
- package/src/readers/modes/audit.reader.js +1 -0
- package/src/readers/modes/detail.reader.js +1 -0
- package/src/readers/modes/handover.reader.js +1 -0
- package/src/readers/modes/mobile.reader.js +1 -0
- package/src/readers/modes/print.reader.js +1 -0
- package/src/readers/modes/scan.reader.js +1 -0
- package/src/readers/reader.model.js +1 -0
- package/src/readers/reader.resolve.js +2 -0
- package/src/reingest/reingest.plan.case.mjs +65 -0
- package/src/runtime.js +54 -0
- package/src/schemas/README.md +99 -0
- package/src/schemas/coordination/handoff/tiinex.handoff.v1.schema.md +614 -0
- package/src/schemas/coordination/project/tiinex.project.v1.schema.md +311 -0
- package/src/schemas/core/decision/tiinex.decision.v1.schema.md +227 -0
- package/src/schemas/core/evidence/tiinex.evidence.v1.schema.md +318 -0
- package/src/schemas/core/feedback/tiinex.feedback.v1.schema.md +243 -0
- package/src/schemas/core/interpretation/.transitions/evidence-to-interpretation-transition-definition.trace.md +102 -0
- package/src/schemas/core/interpretation/tiinex.interpretation.v1.schema.md +308 -0
- package/src/schemas/core/preservation/tiinex.preservation.v1.schema.md +312 -0
- package/src/schemas/core/relation/.generation/reference-relation-generation-authority.trace.md +185 -0
- package/src/schemas/core/relation/.transitions/topic-references-task-transition-definition.trace.md +119 -0
- package/src/schemas/core/relation/tiinex.relation.v1.schema.md +240 -0
- package/src/schemas/core/relation/workspace/representation/tiinex.workspace.representation.v1.schema.md +550 -0
- package/src/schemas/core/signal/tiinex.signal.v1.schema.md +239 -0
- package/src/schemas/core/task/.transitions/create-task-transition-definition.trace.md +93 -0
- package/src/schemas/core/task/.transitions/topic-to-task-transition-definition.trace.md +102 -0
- package/src/schemas/core/task/task-semantic-package.trace.md +53 -0
- package/src/schemas/core/task/tiinex.task.v1-transitions.trace.md +33 -0
- package/src/schemas/core/task/tiinex.task.v1.authoring.js +65 -0
- package/src/schemas/core/task/tiinex.task.v1.schema.md +229 -0
- package/src/schemas/core/topic/.transitions/create-topic-transition-definition.trace.md +93 -0
- package/src/schemas/core/topic/tiinex.topic.v1-transitions.trace.md +33 -0
- package/src/schemas/core/topic/tiinex.topic.v1.schema.md +197 -0
- package/src/schemas/core/topic/topic-semantic-package.trace.md +53 -0
- package/src/schemas/discovery/finding/tiinex.discovery.finding.v1.schema.md +240 -0
- package/src/schemas/discovery/tiinex.discovery.v1.schema.md +294 -0
- package/src/schemas/manifest.json +367 -0
- package/src/schemas/origins.js +46 -0
- package/src/schemas/party/organization/tiinex.party.organization.v1.schema.md +290 -0
- package/src/schemas/party/role/tiinex.party.role.v1.schema.md +298 -0
- package/src/schemas/party/tiinex.party.v1.schema.js +14 -0
- package/src/schemas/party/tiinex.party.v1.schema.json +23 -0
- package/src/schemas/party/tiinex.party.v1.schema.md +311 -0
- package/src/schemas/party/tiinex.party.v1.schema.runtime.json +2033 -0
- package/src/schemas/party/tiinex.party.v1.schema.source.js +9 -0
- package/src/schemas/presentation/surface/tiinex.presentation.surface.v1.schema.md +476 -0
- package/src/schemas/reduction/tiinex.reduction.v1.schema.md +248 -0
- package/src/schemas/schema/module/tiinex.schema.module.v1.schema.md +465 -0
- package/src/schemas/schema.companionContract.case.mjs +259 -0
- package/src/schemas/schema.factory.case.mjs +256 -0
- package/src/schemas/schema.factory.viewerProjection.js +183 -0
- package/src/schemas/schemaMarkdownCatalog.js +19 -0
- package/src/schemas/tiinex.root.v1.schema.md +865 -0
- package/src/schemas/validation/finding/tiinex.validation.finding.v1.schema.md +309 -0
- package/src/schemas/validation/method/tiinex.validation.method.v1.schema.md +280 -0
- package/src/schemas/validation/report/tiinex.validation.report.v1.schema.md +300 -0
- package/src/schemas/workspace/tiinex.workspace.v1.schema.md +486 -0
- package/src/schemas/workspace/workspace.add.views.jsx +327 -0
- package/src/schemas/workspace/workspace.audit.views.jsx +160 -0
- package/src/schemas/workspace/workspace.auditBadge.views.jsx +98 -0
- package/src/schemas/workspace/workspace.canonicalReferenceDialog.views.jsx +63 -0
- package/src/schemas/workspace/workspace.canonicalTaskDialog.views.jsx +169 -0
- package/src/schemas/workspace/workspace.cardActions.js +9 -0
- package/src/schemas/workspace/workspace.cards.views.jsx +146 -0
- package/src/schemas/workspace/workspace.chrome.views.jsx +299 -0
- package/src/schemas/workspace/workspace.continuationDialog.views.jsx +80 -0
- package/src/schemas/workspace/workspace.discovery.views.jsx +63 -0
- package/src/schemas/workspace/workspace.discoveryRenderWindow.js +56 -0
- package/src/schemas/workspace/workspace.displayOptions.views.jsx +114 -0
- package/src/schemas/workspace/workspace.entrypointChoice.views.jsx +30 -0
- package/src/schemas/workspace/workspace.exportDialog.controller.jsx +40 -0
- package/src/schemas/workspace/workspace.exportDialog.views.jsx +142 -0
- package/src/schemas/workspace/workspace.governance.views.jsx +45 -0
- package/src/schemas/workspace/workspace.graph.views.jsx +134 -0
- package/src/schemas/workspace/workspace.lineage.views.jsx +307 -0
- package/src/schemas/workspace/workspace.read.views.jsx +105 -0
- package/src/schemas/workspace/workspace.recordActionButton.views.jsx +35 -0
- package/src/schemas/workspace/workspace.recordDialogs.views.jsx +257 -0
- package/src/schemas/workspace/workspace.selection.views.jsx +14 -0
- package/src/schemas/workspace/workspace.sourceReceipt.views.jsx +40 -0
- package/src/schemas/workspace/workspace.timePortal.views.jsx +56 -0
- package/src/schemas/workspace/workspace.tree.views.jsx +107 -0
- package/src/schemas/workspace/workspace.viewFormatting.js +172 -0
- package/src/schemas/workspace/workspace.views.jsx +210 -0
- package/src/source-settings/sourceSettings.model.js +7 -0
- package/src/sources/draft/draft.source.js +1 -0
- package/src/sources/github/github.loader.js +204 -0
- package/src/sources/github/github.permalink.js +1 -0
- package/src/sources/github/github.source.js +1 -0
- package/src/sources/github/github.transport.case.mjs +237 -0
- package/src/sources/github/github.transport.js +472 -0
- package/src/sources/local/local.source.js +1 -0
- package/src/sources/source.assetReferences.js +109 -0
- package/src/sources/source.boundaries.js +24 -0
- package/src/sources/source.identity.js +56 -0
- package/src/sources/source.model.case.mjs +26 -0
- package/src/sources/source.model.js +56 -0
- package/src/sources/source.presenter.js +66 -0
- package/src/sources/source.resolve.js +11 -0
- package/src/sources/static/static.source.js +1 -0
- package/src/sources/transport.policy.case.mjs +39 -0
- package/src/sources/transport.policy.js +81 -0
- package/src/storage/storage.policy.js +79 -0
- package/src/styles/app.css +8699 -0
- package/src/styles/responsive.css +10 -0
- package/src/styles/theme.css +4 -0
- package/src/styles/tokens.css +30 -0
- package/src/surfaces/audit/AuditSurface.js +1 -0
- package/src/surfaces/audit/audit.model.js +1 -0
- package/src/surfaces/audit/audit.render.js +1 -0
- package/src/surfaces/contracts.js +45 -0
- package/src/surfaces/create/CreateSurface.js +1 -0
- package/src/surfaces/create/create.model.js +1 -0
- package/src/surfaces/create/create.render.js +1 -0
- package/src/surfaces/detail/DetailSurface.js +1 -0
- package/src/surfaces/detail/detail.model.js +1 -0
- package/src/surfaces/detail/detail.render.js +1 -0
- package/src/surfaces/display-options/DisplayOptionsSurface.js +1 -0
- package/src/surfaces/display-options/displayOptions.model.js +1 -0
- package/src/surfaces/display-options/displayOptions.render.js +1 -0
- package/src/surfaces/edit/EditSurface.js +1 -0
- package/src/surfaces/edit/edit.model.js +1 -0
- package/src/surfaces/edit/edit.render.js +1 -0
- package/src/surfaces/feed/FeedSurface.js +1 -0
- package/src/surfaces/feed/feed.model.js +1 -0
- package/src/surfaces/feed/feed.render.js +1 -0
- package/src/surfaces/lineage/LineageSurface.js +1 -0
- package/src/surfaces/lineage/lineage.model.js +1 -0
- package/src/surfaces/lineage/lineage.render.js +1 -0
- package/src/surfaces/preview/PreviewSurface.js +1 -0
- package/src/surfaces/preview/preview.model.js +1 -0
- package/src/surfaces/preview/preview.render.js +1 -0
- package/src/surfaces/registry.js +58 -0
- package/src/surfaces/share/ShareSurface.js +1 -0
- package/src/surfaces/share/share.model.js +1 -0
- package/src/surfaces/share/share.render.js +1 -0
- package/src/surfaces/source-settings/SourceSettingsSurface.js +1 -0
- package/src/surfaces/source-settings/sourceSettings.model.js +1 -0
- package/src/surfaces/source-settings/sourceSettings.render.js +1 -0
- package/src/surfaces/surfaceContext.js +1 -0
- package/src/surfaces/tree/TreeSurface.js +1 -0
- package/src/surfaces/tree/tree.model.js +1 -0
- package/src/surfaces/tree/tree.render.js +1 -0
- package/src/tooling/portable/adapters/cli/cli.common-output.case.mjs +153 -0
- package/src/tooling/portable/adapters/cli/cli.handoff-sibling-allocation.case.mjs +52 -0
- package/src/tooling/portable/adapters/cli/cli.run.case.mjs +372 -0
- package/src/tooling/portable/adapters/cli/cli.summaryProjection.case.mjs +46 -0
- package/src/tooling/portable/audit/audit.capability.case.mjs +45 -0
- package/src/tooling/portable/fixtures/legacy-artifacts/collaboration/dogfood/001-tiinex-development-dogfood-collaboration-model.trace.fixture.txt +37 -0
- package/src/tooling/portable/fixtures/legacy-artifacts/handoff/tooling/001-v480-tooling-workflow-schema-enablement-handoff.trace.fixture.txt +108 -0
- package/src/tooling/portable/fixtures/legacy-artifacts/handoff/tooling/002-v481-tooling-recipient-relative-handoff-material-closure-planner-foundation-handoff.trace.fixture.txt +130 -0
- package/src/tooling/portable/fixtures/legacy-artifacts/loom/role/001-loom-role.trace.fixture.txt +61 -0
- package/src/tooling/portable/fixtures/legacy-artifacts/sigma/role/001-1-sigma-role.trace.fixture.txt +61 -0
- package/src/tooling/portable/fixtures/legacy-artifacts/tooling/dogfood/001-1-1-1-1-1-1-1-site-tooling-v474-loaded-parent-identity-evidence-closure-result.trace.fixture.txt +48 -0
- package/src/tooling/portable/fixtures/legacy-artifacts/tooling/dogfood/001-1-1-1-1-1-1-site-tooling-v474-loaded-parent-identity-evidence-closure.trace.fixture.txt +48 -0
- package/src/tooling/portable/fixtures/legacy-artifacts/tooling/dogfood/001-1-1-1-1-1-site-tooling-v473-portable-parent-authority-coherence-metadata-fidelity-closure-result.trace.fixture.txt +48 -0
- package/src/tooling/portable/fixtures/legacy-artifacts/tooling/dogfood/001-1-1-1-1-site-tooling-v473-portable-parent-authority-coherence-metadata-fidelity-closure.trace.fixture.txt +48 -0
- package/src/tooling/portable/fixtures/legacy-artifacts/tooling/dogfood/001-1-1-1-site-tooling-v472-portable-exact-authoring-fidelity-closure-result.trace.fixture.txt +48 -0
- package/src/tooling/portable/fixtures/legacy-artifacts/tooling/dogfood/001-1-1-site-tooling-v472-portable-exact-authoring-fidelity-closure.trace.fixture.txt +48 -0
- package/src/tooling/portable/fixtures/legacy-artifacts/tooling/dogfood/001-1-site-tooling-v471-portable-lineage-authoring-closure-result.trace.fixture.txt +48 -0
- package/src/tooling/portable/fixtures/legacy-artifacts/tooling/dogfood/001-site-tooling-v471-portable-lineage-authoring-closure.trace.fixture.txt +39 -0
- package/src/tooling/portable/fixtures/legacy-artifacts/tooling/dogfood/002-1-v475-canonical-artifact-envelope-reference-integrity-validation.trace.fixture.txt +43 -0
- package/src/tooling/portable/fixtures/legacy-artifacts/tooling/dogfood/003-1-v476-canonical-authority-binding-integrity-method-lineage-alloca.trace.fixture.txt +42 -0
- package/src/tooling/portable/fixtures/legacy-artifacts/tooling/dogfood/027-handoff-package-workspace-archive-and-control-plane-minimality-audit.trace.fixture.txt +56 -0
- package/src/tooling/portable/fixtures/legacyArtifactFixtures.mjs +34 -0
- package/src/tooling/portable/grounding/grounding.capsule.case.mjs +65 -0
- package/src/tooling/portable/grounding/grounding.readiness.case.mjs +543 -0
- package/src/tooling/portable/grounding/grounding.semanticIntegration.case.mjs +131 -0
- package/src/tooling/portable/handoff/boundedWorkspaceRepresentation.case.mjs +103 -0
- package/src/tooling/portable/handoff/carrierLineage.fixedWidth.case.mjs +97 -0
- package/src/tooling/portable/handoff/coldStartQualification.case.mjs +293 -0
- package/src/tooling/portable/handoff/fixtures/027-invalid-audit-result.fixture.txt +192 -0
- package/src/tooling/portable/handoff/fixtures/027-invalid-return-handoff.fixture.txt +92 -0
- package/src/tooling/portable/handoff/fixtures/cold-start-qualification.v1.examples.json +60 -0
- package/src/tooling/portable/handoff/handoff.manufacture.case.mjs +293 -0
- package/src/tooling/portable/handoff/materialClosure.case.mjs +727 -0
- package/src/tooling/portable/handoff/multiRootManufacture.case.mjs +615 -0
- package/src/tooling/portable/handoff/operatorBridgeCore.case.mjs +205 -0
- package/src/tooling/portable/handoff/workspaceLandingPlan.case.mjs +143 -0
- package/src/tooling/portable/input/node.input.case.mjs +293 -0
- package/src/tooling/portable/lifecycle/lifecycle.readiness.case.mjs +179 -0
- package/src/tooling/portable/lineage/fixtures/lineage.integrity.repair-projection.v1.examples.json +605 -0
- package/src/tooling/portable/lineage/lineage.integrity.shared-capability.case.mjs +37 -0
- package/src/tooling/portable/lineage/publicationProviderReceipt.fixture.mjs +50 -0
- package/src/tooling/portable/package/fixtures/reference-relation-generation-authority.trace.md +84 -0
- package/src/tooling/portable/package/fixtures/tiinex.root.v1.package-authority.contract-fixture.md +64 -0
- package/src/tooling/portable/package/fixtures/tiinex.schema.generation.v1.generation-binding.contract-fixture.md +140 -0
- package/src/tooling/portable/package/fixtures/tiinex.schema.transition.companion.v1.contract-fixture.md +73 -0
- package/src/tooling/portable/package/fixtures/tiinex.semantic.package.v1.contract-fixture.md +147 -0
- package/src/tooling/portable/package/fixtures/tiinex.transition.definition.v1.package-contract-fixture.md +77 -0
- package/src/tooling/portable/providers/schema.providers.genericity.case.mjs +31 -0
- package/src/tooling/portable/reduction/reduction.preflight.case.mjs +298 -0
- package/src/tooling/portable/schema/fixtures/evidence-preservation-body.inheritance-record-fixture.md +65 -0
- package/src/tooling/portable/schema/fixtures/tiinex.portal.time.v1.contract-fixture.md +294 -0
- package/src/tooling/portable/schema/fixtures/tiinex.root.v1.contract-fixture.md +584 -0
- package/src/tooling/portable/schema/fixtures/tiinex.root.v1.machine-shape.contract-fixture.md +44 -0
- package/src/tooling/portable/schema/fixtures/tiinex.root.v1.ordinary-target.contract-fixture.md +630 -0
- package/src/tooling/portable/schema/fixtures/tiinex.schema.contract.v1.repeated-record.contract-fixture.md +69 -0
- package/src/tooling/portable/schema/fixtures/tiinex.schema.generation.v1.repeated-record.contract-fixture.md +98 -0
- package/src/tooling/portable/schema/fixtures/tiinex.schema.inheritance.v1.repeated-record.contract-fixture.md +58 -0
- package/src/tooling/portable/schema/fixtures/tiinex.task.v1.contract-fixture.md +165 -0
- package/src/tooling/portable/schema/fixtures/tiinex.transition.definition.v1.contract-fixture.md +744 -0
- package/src/tooling/portable/schema/fixtures/tiinex.transition.definition.v1.field-domain.contract-fixture.md +319 -0
- package/src/transitions/canonical-schema-cache/053d46ce082d4ec261b82abc44ecca403d61e240/tiinex.relation.v1.schema.md +240 -0
- package/src/transitions/canonical-schema-cache/053d46ce082d4ec261b82abc44ecca403d61e240/tiinex.schema.contract.v1.schema.md +391 -0
- package/src/transitions/canonical-schema-cache/053d46ce082d4ec261b82abc44ecca403d61e240/tiinex.schema.generation.v1.schema.md +379 -0
- package/src/transitions/canonical-schema-cache/053d46ce082d4ec261b82abc44ecca403d61e240/tiinex.schema.transition.companion.v1.schema.md +265 -0
- package/src/transitions/canonical-schema-cache/053d46ce082d4ec261b82abc44ecca403d61e240/tiinex.semantic.package.v1.schema.md +402 -0
- package/src/transitions/canonical-schema-cache/52ecdea0a75893882ce282214d155f70e1309c2a/tiinex.topic.v1.schema.md +197 -0
- package/src/transitions/canonical-schema-cache/d69b8ff55a56b8cb9282b8684db6a938a4435b94/tiinex.root.v1.schema.md +797 -0
- package/src/transitions/canonical-schema-cache/d69b8ff55a56b8cb9282b8684db6a938a4435b94/tiinex.transition.definition.v1.schema.md +1062 -0
- package/src/transitions/canonicalTransition.packageContracts.js +22 -0
- package/src/transitions/canonicalTransition.productDefaults.js +105 -0
- package/src/transitions/canonicalTransition.schemaCache.case.mjs +45 -0
- package/src/transitions/canonicalTransition.schemaCache.js +81 -0
- package/src/transitions/canonicalTransition.semanticPackage.js +146 -0
- package/src/transitions/record.transitions.case.mjs +88 -0
- package/src/transitions/transition.authorityRepresentation.js +55 -0
- package/src/transitions/transition.availabilityPlanner.js +376 -0
- package/src/transitions/transition.availabilitySemantics.js +150 -0
- package/src/transitions/transition.definitionReadProjection.js +107 -0
- package/src/transitions/transition.definitionRegistry.js +355 -0
- package/src/transitions/transition.definitionRegistryAggregation.js +21 -0
- package/src/transitions/transition.definitions.js +46 -0
- package/src/transitions/transition.explicitGenerationPlanner.js +58 -0
- package/src/transitions/transition.generationInputPlanner.js +19 -0
- package/src/transitions/transition.interpretationMaterializer.js +2 -0
- package/src/transitions/transition.invocationBindingPacket.js +52 -0
- package/src/transitions/transition.invocationBindingPlanner.js +467 -0
- package/src/transitions/transition.legacyShorthand.js +133 -0
- package/src/transitions/transition.localArtifactMaterializers.js +16 -0
- package/src/transitions/transition.localCreateCapability.js +111 -0
- package/src/transitions/transition.outputMaterializationPlanner.js +336 -0
- package/src/transitions/transition.parentReference.js +90 -0
- package/src/transitions/transition.presentation.js +43 -0
- package/src/transitions/transition.productPreparation.js +377 -0
- package/src/transitions/transition.productPresentation.browser.js +28 -0
- package/src/transitions/transition.productPresentation.js +55 -0
- package/src/transitions/transition.referenceCreateCapability.js +119 -0
- package/src/transitions/transition.referenceTarget.js +50 -0
- package/src/transitions/transition.relationMaterializer.js +2 -0
- package/src/transitions/transition.resultSemantics.js +453 -0
- package/src/transitions/transition.taskMaterializer.js +2 -0
- package/src/transitions/transition.topicMaterializer.js +2 -0
- package/src/transitions/transition.validate.case.mjs +58 -0
- package/src/ui/cards/ArtifactCard.js +1 -0
- package/src/ui/cards/SchemaCard.js +1 -0
- package/src/ui/cards/SourceCard.js +1 -0
- package/src/ui/dialog.presenter.js +24 -0
- package/src/ui/feedback/DegradedNotice.js +1 -0
- package/src/ui/feedback/EmptyState.js +1 -0
- package/src/ui/feedback/ValidationNotice.js +1 -0
- package/src/ui/forms/FormRenderer.js +1 -0
- package/src/ui/forms/fields/MarkdownField.js +1 -0
- package/src/ui/forms/fields/SelectField.js +1 -0
- package/src/ui/forms/fields/SourcePickerField.js +1 -0
- package/src/ui/forms/fields/TextField.js +1 -0
- package/src/ui/icon.paths.js +37 -0
- package/src/ui/layout/Panel.js +1 -0
- package/src/ui/layout/ResponsiveFrame.js +1 -0
- package/src/ui/layout/SplitView.js +1 -0
- package/src/ui/layout/Stack.js +1 -0
- package/src/ui/panels/DetailPanel.js +1 -0
- package/src/ui/panels/LineagePanel.js +1 -0
- package/src/ui/panels/SourcePanel.js +1 -0
- package/src/ui/primitives/Badge.js +1 -0
- package/src/ui/primitives/Badge.jsx +5 -0
- package/src/ui/primitives/Button.js +1 -0
- package/src/ui/primitives/Button.jsx +12 -0
- package/src/ui/primitives/Card.js +1 -0
- package/src/ui/primitives/Field.js +1 -0
- package/src/ui/primitives/Field.jsx +21 -0
- package/src/ui/primitives/Icon.jsx +90 -0
- package/src/ui/primitives/Modal.jsx +27 -0
- package/src/validation/i18n.js +37 -0
- package/src/validation/validateArtifact.case.mjs +41 -0
- package/src/verses/column/ColumnVerse.js +1 -0
- package/src/verses/column/column.model.js +6 -0
- package/src/verses/column/column.project.js +7 -0
- package/src/verses/context.js +26 -0
- package/src/verses/contracts.js +1 -0
- package/src/verses/hostRegistry.js +47 -0
- package/src/verses/registry.js +22 -0
- package/src/verses/universe.model.js +8 -0
- package/src/verses/universe.presenter.js +8 -0
- package/src/verses/universe.project.js +12 -0
- package/src/viewer.js +34 -0
- package/src/workspace.model.js +5 -0
- package/src/workspaces/workspace.actions.js +1 -0
- package/src/workspaces/workspace.artifactActions.js +56 -0
- package/src/workspaces/workspace.auditView.js +153 -0
- package/src/workspaces/workspace.candidates.js +149 -0
- package/src/workspaces/workspace.config.js +153 -0
- package/src/workspaces/workspace.configuredSource.js +68 -0
- package/src/workspaces/workspace.discoveryProgress.js +34 -0
- package/src/workspaces/workspace.discoveryView.js +386 -0
- package/src/workspaces/workspace.displayFilters.js +63 -0
- package/src/workspaces/workspace.displayOptions.js +58 -0
- package/src/workspaces/workspace.emptyStateCopy.js +24 -0
- package/src/workspaces/workspace.entrypointLifecycle.js +131 -0
- package/src/workspaces/workspace.entrypointViewIntent.js +83 -0
- package/src/workspaces/workspace.entrypoints.js +157 -0
- package/src/workspaces/workspace.feedSort.js +152 -0
- package/src/workspaces/workspace.import.js +212 -0
- package/src/workspaces/workspace.importConflicts.js +200 -0
- package/src/workspaces/workspace.importLifecycle.case.mjs +103 -0
- package/src/workspaces/workspace.lifecycle.case.mjs +353 -0
- package/src/workspaces/workspace.lifecycle.js +357 -0
- package/src/workspaces/workspace.lineageView.js +244 -0
- package/src/workspaces/workspace.localSourceLifecycle.js +91 -0
- package/src/workspaces/workspace.materialLedger.js +110 -0
- package/src/workspaces/workspace.materialReconciliation.case.mjs +164 -0
- package/src/workspaces/workspace.materialReconciliation.js +390 -0
- package/src/workspaces/workspace.memberIdentity.js +140 -0
- package/src/workspaces/workspace.model.js +2 -0
- package/src/workspaces/workspace.navigation.js +20 -0
- package/src/workspaces/workspace.openSemantics.js +33 -0
- package/src/workspaces/workspace.pathTree.js +132 -0
- package/src/workspaces/workspace.persistence.case.mjs +271 -0
- package/src/workspaces/workspace.persistence.js +469 -0
- package/src/workspaces/workspace.persistenceCache.js +41 -0
- package/src/workspaces/workspace.persistenceClear.js +45 -0
- package/src/workspaces/workspace.persistencePresentation.js +93 -0
- package/src/workspaces/workspace.persistenceRecovery.js +147 -0
- package/src/workspaces/workspace.persistenceRouteCache.js +82 -0
- package/src/workspaces/workspace.publicationReceipts.case.mjs +36 -0
- package/src/workspaces/workspace.publicationReceipts.js +56 -0
- package/src/workspaces/workspace.recoverabilityView.js +264 -0
- package/src/workspaces/workspace.route.js +432 -0
- package/src/workspaces/workspace.runtimeCanonical.js +18 -0
- package/src/workspaces/workspace.sourceMaterial.js +71 -0
- package/src/workspaces/workspace.sourceRecordPath.js +5 -0
- package/src/workspaces/workspace.sourceRecords.js +75 -0
- package/src/workspaces/workspace.store.js +3 -0
- package/src/workspaces/workspace.summary.js +116 -0
- package/src/workspaces/workspace.timePortal.js +137 -0
package/src/tooling/portable/schema/fixtures/tiinex.root.v1.ordinary-target.contract-fixture.md
ADDED
|
@@ -0,0 +1,630 @@
|
|
|
1
|
+
<!-- Contract-only test fixture for Tiinex/docs@068241174421716b941421e95931ec5a6e95b0da. Not a canonical snapshot; only machine-authoritative contract surfaces are retained. -->
|
|
2
|
+
# Continuity Context
|
|
3
|
+
|
|
4
|
+
- Envelope Schema: tiinex.root.v1
|
|
5
|
+
- Current
|
|
6
|
+
- Current Schema: tiinex.root.v1
|
|
7
|
+
- Created At: 2026-08-15 00:00:00
|
|
8
|
+
|
|
9
|
+
---
|
|
10
|
+
|
|
11
|
+
# Root
|
|
12
|
+
|
|
13
|
+
## Schema Validation Contract
|
|
14
|
+
|
|
15
|
+
### Machine Authority Surfaces
|
|
16
|
+
|
|
17
|
+
Validation Authority
|
|
18
|
+
|
|
19
|
+
- Schema Validation Contract
|
|
20
|
+
|
|
21
|
+
Generation Authority
|
|
22
|
+
|
|
23
|
+
- Artifact Creation Contract
|
|
24
|
+
|
|
25
|
+
Integrity Authority
|
|
26
|
+
|
|
27
|
+
- Continuity Integrity
|
|
28
|
+
|
|
29
|
+
Non-Authoritative For Validation
|
|
30
|
+
|
|
31
|
+
- Summary
|
|
32
|
+
- Root Semantics
|
|
33
|
+
- Contract Reading Model
|
|
34
|
+
- Inheritance
|
|
35
|
+
- Extension
|
|
36
|
+
- Artifact Creation Contract
|
|
37
|
+
|
|
38
|
+
Rules
|
|
39
|
+
|
|
40
|
+
- Validators must read `Schema Validation Contract` as the validation surface.
|
|
41
|
+
- Validators must not infer extra required fields from non-authoritative prose sections.
|
|
42
|
+
- `Artifact Creation Contract` defines generation when present.
|
|
43
|
+
- `Artifact Creation Contract` must not override `Schema Validation Contract`.
|
|
44
|
+
- `Continuity Integrity` defines the integrity footer.
|
|
45
|
+
- Descendant schema contracts are additive unless they explicitly define an override.
|
|
46
|
+
|
|
47
|
+
### Contract Syntax
|
|
48
|
+
|
|
49
|
+
Group Shape
|
|
50
|
+
|
|
51
|
+
- Third-Level Heading
|
|
52
|
+
|
|
53
|
+
Category Shape
|
|
54
|
+
|
|
55
|
+
- Category Label
|
|
56
|
+
- Hyphen List Items
|
|
57
|
+
|
|
58
|
+
List Marker
|
|
59
|
+
|
|
60
|
+
- hyphen
|
|
61
|
+
|
|
62
|
+
Known Category Labels
|
|
63
|
+
|
|
64
|
+
- Allowed Labels
|
|
65
|
+
- Allowed Shapes
|
|
66
|
+
- Allowed Target Blocks
|
|
67
|
+
- Applies To
|
|
68
|
+
- Category Shape
|
|
69
|
+
- Declaration Fields
|
|
70
|
+
- Entry Shape
|
|
71
|
+
- Fields
|
|
72
|
+
- Footer Sections
|
|
73
|
+
- Generation Authority
|
|
74
|
+
- Group Shape
|
|
75
|
+
- Header Sections
|
|
76
|
+
- Integrity Authority
|
|
77
|
+
- Instance Target
|
|
78
|
+
- Known Category Labels
|
|
79
|
+
- List Marker
|
|
80
|
+
- Non-Authoritative For Validation
|
|
81
|
+
- Optional Fields
|
|
82
|
+
- Optional Sections
|
|
83
|
+
- Ordering
|
|
84
|
+
- Required Entries
|
|
85
|
+
- Required Fields
|
|
86
|
+
- Required Heading
|
|
87
|
+
- Required Shape
|
|
88
|
+
- Required When
|
|
89
|
+
- Rules
|
|
90
|
+
- Severity Levels
|
|
91
|
+
- Towards Allowed Shapes
|
|
92
|
+
- Validation Authority
|
|
93
|
+
|
|
94
|
+
Rules
|
|
95
|
+
|
|
96
|
+
- A contract group begins at a third-level heading.
|
|
97
|
+
- A category label is a plain text line from the known category label set.
|
|
98
|
+
- A category label applies to the first hyphen list after the label.
|
|
99
|
+
- Blank lines between a category label and its list are allowed.
|
|
100
|
+
- Machine contract list items use hyphen bullets.
|
|
101
|
+
- Envelope list items use hyphen bullets.
|
|
102
|
+
- Footer method entries use hyphen bullets.
|
|
103
|
+
- Star bullets are not part of the root machine contract shape.
|
|
104
|
+
- List item order is not significant unless the category label is `Ordering`.
|
|
105
|
+
- `Rules` list items are normative.
|
|
106
|
+
- Only third-level headings, category labels, and hyphen list items are part of the machine contract.
|
|
107
|
+
- Other prose inside `Schema Validation Contract` is not part of the machine contract.
|
|
108
|
+
- Descendant schemas may introduce new category labels only through `Contract Category Extension`.
|
|
109
|
+
- `Artifact Creation Contract`, when present, uses the same contract syntax.
|
|
110
|
+
|
|
111
|
+
### Validator Response Policy
|
|
112
|
+
|
|
113
|
+
Severity Levels
|
|
114
|
+
|
|
115
|
+
- error
|
|
116
|
+
- warning
|
|
117
|
+
- info
|
|
118
|
+
- preserve
|
|
119
|
+
|
|
120
|
+
Rules
|
|
121
|
+
|
|
122
|
+
- `error` means the artifact does not satisfy the active contract.
|
|
123
|
+
- `warning` means the artifact remains readable but is degraded, ambiguous, or not fully portable.
|
|
124
|
+
- `info` means the validator may surface non-blocking state without changing validity.
|
|
125
|
+
- `preserve` means the validator must retain the signal without claiming to understand or normalize it.
|
|
126
|
+
- Validators must not silently downgrade `error` conditions.
|
|
127
|
+
- Validators must not silently upgrade `preserve` conditions into `warning` or `error` without contract authority.
|
|
128
|
+
|
|
129
|
+
### Unknown Handling
|
|
130
|
+
|
|
131
|
+
Applies To
|
|
132
|
+
|
|
133
|
+
- contract category labels
|
|
134
|
+
- envelope fields
|
|
135
|
+
- extension declarations
|
|
136
|
+
|
|
137
|
+
Rules
|
|
138
|
+
|
|
139
|
+
- Declared but unsupported contract category labels are `preserve` and may also be `warning`.
|
|
140
|
+
- Undeclared contract category labels are `error` when full schema lineage is available.
|
|
141
|
+
- Undeclared contract category labels are `warning` when full schema lineage is unavailable.
|
|
142
|
+
- Unknown envelope fields are `preserve` by default.
|
|
143
|
+
- Unknown envelope fields may become `warning` or `error` only when full schema lineage proves they are undeclared.
|
|
144
|
+
- Unknown extension declarations must be preserved unless the active schema contract explicitly forbids them.
|
|
145
|
+
|
|
146
|
+
### Matching And Normalization
|
|
147
|
+
|
|
148
|
+
Applies To
|
|
149
|
+
|
|
150
|
+
- heading text
|
|
151
|
+
- category labels
|
|
152
|
+
- field names
|
|
153
|
+
- line endings
|
|
154
|
+
- blank lines between category labels and lists
|
|
155
|
+
- bullet markers in machine-authoritative surfaces
|
|
156
|
+
|
|
157
|
+
Rules
|
|
158
|
+
|
|
159
|
+
- Heading text is exact after trimming leading and trailing whitespace.
|
|
160
|
+
- Category labels are exact after trimming leading and trailing whitespace.
|
|
161
|
+
- Field names are exact after trimming leading and trailing whitespace.
|
|
162
|
+
- Matching is case-sensitive unless a descendant schema explicitly defines a local exception.
|
|
163
|
+
- Blank lines between a category label and its list are ignored.
|
|
164
|
+
- Line endings may be normalized before parsing.
|
|
165
|
+
- Bullet marker normalization is not allowed in machine-authoritative surfaces.
|
|
166
|
+
|
|
167
|
+
### Inheritance And Override
|
|
168
|
+
|
|
169
|
+
Rules
|
|
170
|
+
|
|
171
|
+
- Descendant schema contracts are additive by default.
|
|
172
|
+
- Descendant schemas may add groups, categories, declarations, fields, and stricter local rules.
|
|
173
|
+
- Descendant schemas must not weaken root identity, continuity, or integrity requirements.
|
|
174
|
+
- Descendant schemas must not remove inherited requirements unless they explicitly define override semantics.
|
|
175
|
+
- Override semantics must identify which inherited requirement is being replaced and how the replacement is interpreted.
|
|
176
|
+
- Validators must not guess override behavior when a descendant schema does not define it.
|
|
177
|
+
- A descendant extension must not silently redeclare an inherited contract category label as if it were new.
|
|
178
|
+
|
|
179
|
+
### Contract Cardinality
|
|
180
|
+
|
|
181
|
+
Applies To
|
|
182
|
+
|
|
183
|
+
- contract groups
|
|
184
|
+
- category labels within a contract group
|
|
185
|
+
- named declarations within a contract group
|
|
186
|
+
- required groups
|
|
187
|
+
- optional groups
|
|
188
|
+
|
|
189
|
+
Rules
|
|
190
|
+
|
|
191
|
+
- Contract groups are identified by third-level heading text.
|
|
192
|
+
- Contract group names should be unique within the same machine-readable contract section.
|
|
193
|
+
- Category labels may appear at most once within the same contract group unless a descendant schema explicitly declares repeat semantics.
|
|
194
|
+
- Named declarations must be unique within the same contract group.
|
|
195
|
+
- Duplicate named declarations are invalid unless a descendant schema explicitly defines override semantics.
|
|
196
|
+
- Missing required groups are `error`.
|
|
197
|
+
- Missing optional groups are valid.
|
|
198
|
+
- Duplicate handling must not be silently guessed.
|
|
199
|
+
|
|
200
|
+
### Ordinary Instance Field Targeting
|
|
201
|
+
|
|
202
|
+
Applies To
|
|
203
|
+
|
|
204
|
+
- descendant `Schema Validation Contract` groups that declare `Required Fields` and/or `Optional Fields`
|
|
205
|
+
|
|
206
|
+
Rules
|
|
207
|
+
|
|
208
|
+
- An ordinary instance-field group declares `Required Fields` and/or `Optional Fields`, does not declare `Entry Shape`, and uses ordinary unqualified field labels.
|
|
209
|
+
- Root-owned envelope/footer groups, qualified envelope/path fields such as `Current -> Why`, named-declaration groups, and `Artifact Creation Contract` groups are outside this default.
|
|
210
|
+
- Unless an ordinary instance-field group declares `Instance Target`, its Artifact instance target is the exact second-level heading whose text equals the contract group name.
|
|
211
|
+
- The same-name correspondence is machine authority defined by Root; validators must not treat it as a heuristic or fall back to document-wide field matching.
|
|
212
|
+
- Heading text follows Root exact, case-sensitive matching rules and heading depth is part of target identity.
|
|
213
|
+
- `Instance Target` overrides only the default instance target for the declaring group.
|
|
214
|
+
- An authorized target must resolve to at most one Artifact heading block. Multiple exact target matches are structural ambiguity and `error`; validators must not choose the first or last match.
|
|
215
|
+
- If the authorized target block is absent, fields elsewhere in the document do not satisfy the group.
|
|
216
|
+
- Target/block requiredness, field requiredness, and field ownership are separate truths.
|
|
217
|
+
- When the authorized target is an optional section and that section is absent, `Required Fields` inside that group do not independently make the optional section required.
|
|
218
|
+
- When an optional authorized target is present, its `Required Fields` are required inside that target.
|
|
219
|
+
- Ordinary field occurrences are owned only by their authorized target block. Fields inside a nested heading or named-declaration-owned region are not claimed by an ancestor ordinary group merely because the label matches.
|
|
220
|
+
- `Required Fields` and `Optional Fields` declare singular ordinary scalar occurrences by default within one instantiated target block.
|
|
221
|
+
- Duplicate ordinary scalar occurrences must remain observable and are `error` unless another explicit contract owns repeated structured entries or explicitly defines repeat semantics.
|
|
222
|
+
- Validators must retain field occurrence multiplicity long enough to validate it; collapsing ordinary occurrences into a Set before validation is not allowed.
|
|
223
|
+
- Inherited and descendant contributions are additive by default, preserve contributing schema/contract provenance, and may share one physical authorized target without requiring duplicate headings.
|
|
224
|
+
- A descendant contribution must not silently retarget or replace an inherited requirement without declared override semantics.
|
|
225
|
+
|
|
226
|
+
### Instance Target
|
|
227
|
+
|
|
228
|
+
Applies To
|
|
229
|
+
|
|
230
|
+
- ordinary instance-field contract groups that intentionally target a heading other than Root's same-name default
|
|
231
|
+
|
|
232
|
+
Required Shape
|
|
233
|
+
|
|
234
|
+
- one literal Markdown heading token
|
|
235
|
+
|
|
236
|
+
Rules
|
|
237
|
+
|
|
238
|
+
- `Instance Target` contains exactly one literal Markdown heading token including heading depth, for example `## Deferral` or `### Nested Block`.
|
|
239
|
+
- `Instance Target` is singular; it must not be used as a list of multiple Artifact targets.
|
|
240
|
+
- Heading text is interpreted using Root exact, case-sensitive heading matching.
|
|
241
|
+
- `Instance Target` changes field-ownership location only; it does not make an otherwise optional target section required.
|
|
242
|
+
- Multi-block semantics should be expressed as locally owned contract groups rather than by pointing one ordinary group at multiple blocks.
|
|
243
|
+
- Validators must not invent selector syntax, positional identity, AST paths, XPath, JSON pointers, or application-internal IDs when the declared heading authority is sufficient.
|
|
244
|
+
|
|
245
|
+
### Named Declaration
|
|
246
|
+
|
|
247
|
+
Entry Shape
|
|
248
|
+
|
|
249
|
+
- First-Level Hyphen List Item
|
|
250
|
+
|
|
251
|
+
Declaration Fields
|
|
252
|
+
|
|
253
|
+
- Base Concept
|
|
254
|
+
- Interpretation
|
|
255
|
+
|
|
256
|
+
Rules
|
|
257
|
+
|
|
258
|
+
- Each named declaration is represented as one first-level hyphen list item.
|
|
259
|
+
- The first-level list item text is the declaration name.
|
|
260
|
+
- Declaration fields are represented as nested hyphen list items under the declaration entry.
|
|
261
|
+
- Declaration names must be unique within the same contract group.
|
|
262
|
+
- Duplicate declaration names are invalid unless a descendant schema explicitly defines override semantics.
|
|
263
|
+
|
|
264
|
+
### Contract Category Extension
|
|
265
|
+
|
|
266
|
+
Required When
|
|
267
|
+
|
|
268
|
+
- A descendant schema introduces a contract category label.
|
|
269
|
+
|
|
270
|
+
Entry Shape
|
|
271
|
+
|
|
272
|
+
- Named Declaration
|
|
273
|
+
|
|
274
|
+
Declaration Fields
|
|
275
|
+
|
|
276
|
+
- Base Concept
|
|
277
|
+
- Interpretation
|
|
278
|
+
|
|
279
|
+
Rules
|
|
280
|
+
|
|
281
|
+
- Each contract category extension uses the `Named Declaration` shape.
|
|
282
|
+
- The declaration name is the new contract category label.
|
|
283
|
+
- A descendant schema must not redeclare an already inherited category label here unless it explicitly defines override semantics.
|
|
284
|
+
- A descendant schema must declare a new category label in `Contract Category Extension` before using it in its own contract.
|
|
285
|
+
- Declared category labels extend the known category label set for that schema and its descendants.
|
|
286
|
+
- Validators that do not understand a declared category label should preserve it and may warn.
|
|
287
|
+
- Strict validators may fail on undeclared category labels when the full schema lineage is available.
|
|
288
|
+
|
|
289
|
+
### Contract Category Override
|
|
290
|
+
|
|
291
|
+
Required When
|
|
292
|
+
|
|
293
|
+
- A descendant schema replaces the interpretation of an inherited contract category label.
|
|
294
|
+
|
|
295
|
+
Entry Shape
|
|
296
|
+
|
|
297
|
+
- Named Declaration
|
|
298
|
+
|
|
299
|
+
Declaration Fields
|
|
300
|
+
|
|
301
|
+
- Replacement Interpretation
|
|
302
|
+
|
|
303
|
+
Rules
|
|
304
|
+
|
|
305
|
+
- Each contract category override uses the `Named Declaration` shape.
|
|
306
|
+
- The declaration name identifies the inherited contract category label being replaced.
|
|
307
|
+
- `Replacement Interpretation` describes how the descendant schema now interprets that inherited label.
|
|
308
|
+
- A descendant schema must not rely on an override unless it declares it here.
|
|
309
|
+
- Validators must not guess contract category overrides that are not declared here.
|
|
310
|
+
|
|
311
|
+
### Document Layout
|
|
312
|
+
|
|
313
|
+
Header Sections
|
|
314
|
+
|
|
315
|
+
- Continuity Context
|
|
316
|
+
|
|
317
|
+
Footer Sections
|
|
318
|
+
|
|
319
|
+
- Continuity Integrity
|
|
320
|
+
|
|
321
|
+
Rules
|
|
322
|
+
|
|
323
|
+
- `Continuity Context` must appear before the artifact body.
|
|
324
|
+
- `Continuity Integrity` must appear after the artifact body and machine-readable contract sections.
|
|
325
|
+
- `Continuity Integrity` is a footer section even though it is represented by a markdown heading.
|
|
326
|
+
- `Continuity Integrity` should be the final top-level section of the artifact.
|
|
327
|
+
|
|
328
|
+
### Continuity Context
|
|
329
|
+
|
|
330
|
+
Required Fields
|
|
331
|
+
|
|
332
|
+
- Envelope Schema
|
|
333
|
+
- Current
|
|
334
|
+
|
|
335
|
+
Optional Fields
|
|
336
|
+
|
|
337
|
+
- Parent
|
|
338
|
+
- Repairs
|
|
339
|
+
|
|
340
|
+
Rules
|
|
341
|
+
|
|
342
|
+
- `Envelope Schema` identifies the envelope-reading schema.
|
|
343
|
+
- `Current` identifies the current artifact.
|
|
344
|
+
- `Parent` identifies the direct continuity parent when one is declared.
|
|
345
|
+
- Parent present means the artifact continues a declared parent.
|
|
346
|
+
- Parent absent means the artifact is the root of its local lineage.
|
|
347
|
+
- Parent absence does not erase origin or provenance.
|
|
348
|
+
|
|
349
|
+
### Repairs
|
|
350
|
+
|
|
351
|
+
Required When
|
|
352
|
+
|
|
353
|
+
- Repairs exists
|
|
354
|
+
|
|
355
|
+
Entry Shape
|
|
356
|
+
|
|
357
|
+
- First-Level Hyphen List Item
|
|
358
|
+
|
|
359
|
+
Optional Fields
|
|
360
|
+
|
|
361
|
+
- Target
|
|
362
|
+
- Note
|
|
363
|
+
- Reason
|
|
364
|
+
|
|
365
|
+
Rules
|
|
366
|
+
|
|
367
|
+
- `Repairs` records known repairs, corrections, or trust-impacting changes to the artifact.
|
|
368
|
+
- A repair entry should state what was repaired and why.
|
|
369
|
+
- A repair entry may refer to lineage, parent, origin, current metadata, body claims, schema references, integrity, or another readable target.
|
|
370
|
+
- Structured repair entries should expose `Target`, `Note`, and `Reason` as nested fields.
|
|
371
|
+
- Free-text repair entries are allowed and must be preserved, but structured entries are preferred for tooling.
|
|
372
|
+
- `Repairs` must not silently replace `Parent`, `Trace`, `Origin`, `Current`, or `Continuity Integrity` semantics.
|
|
373
|
+
- `Repairs` does not automatically invalidate the artifact or lineage.
|
|
374
|
+
- Validators may warn when a repair entry is too vague to support audit or update tooling.
|
|
375
|
+
- Tools that update descendants because of a repair should preserve the repair note or point to the artifact that contains it.
|
|
376
|
+
|
|
377
|
+
### Parent
|
|
378
|
+
|
|
379
|
+
Required When
|
|
380
|
+
|
|
381
|
+
- Parent exists
|
|
382
|
+
|
|
383
|
+
Required Fields
|
|
384
|
+
|
|
385
|
+
- Parent Schema
|
|
386
|
+
- Trace
|
|
387
|
+
- Origin
|
|
388
|
+
|
|
389
|
+
Optional Fields
|
|
390
|
+
|
|
391
|
+
- Created At
|
|
392
|
+
|
|
393
|
+
Rules
|
|
394
|
+
|
|
395
|
+
- `Trace` defines the direct continuity relation.
|
|
396
|
+
- `Parent` describes ancestry only.
|
|
397
|
+
- `Parent` must not point to child artifacts.
|
|
398
|
+
- `Parent` must not point to planned descendants.
|
|
399
|
+
|
|
400
|
+
### Parent Origin
|
|
401
|
+
|
|
402
|
+
Required When
|
|
403
|
+
|
|
404
|
+
- Parent exists
|
|
405
|
+
|
|
406
|
+
Required Fields
|
|
407
|
+
|
|
408
|
+
- browse + git
|
|
409
|
+
|
|
410
|
+
Allowed Labels
|
|
411
|
+
|
|
412
|
+
- relative
|
|
413
|
+
- absolute
|
|
414
|
+
- browse + git
|
|
415
|
+
|
|
416
|
+
Entry Shape
|
|
417
|
+
|
|
418
|
+
- Markdown Link
|
|
419
|
+
|
|
420
|
+
Ordering
|
|
421
|
+
|
|
422
|
+
- relative
|
|
423
|
+
- absolute
|
|
424
|
+
- browse + git
|
|
425
|
+
|
|
426
|
+
Rules
|
|
427
|
+
|
|
428
|
+
- `Origin` supports recovery.
|
|
429
|
+
- `Origin` must not replace `Trace`.
|
|
430
|
+
- Every origin candidate should identify the same parent artifact.
|
|
431
|
+
- Origin candidates must not mix alternate parents.
|
|
432
|
+
- `browse + git` gives the portable archive permalink for the parent artifact.
|
|
433
|
+
- `browse + git` should be commit-pinned when available.
|
|
434
|
+
- `absolute` paths are local recovery hints, not portable authority.
|
|
435
|
+
- Additional origin labels may be introduced by descendant schemas as envelope extensions.
|
|
436
|
+
|
|
437
|
+
### Current
|
|
438
|
+
|
|
439
|
+
Required Fields
|
|
440
|
+
|
|
441
|
+
- Current Schema
|
|
442
|
+
- Created At
|
|
443
|
+
|
|
444
|
+
Optional Fields
|
|
445
|
+
|
|
446
|
+
- Summary
|
|
447
|
+
- Status
|
|
448
|
+
- Why
|
|
449
|
+
|
|
450
|
+
Rules
|
|
451
|
+
|
|
452
|
+
- `Current Schema` identifies the schema governing the current artifact.
|
|
453
|
+
- `Created At` records artifact creation time.
|
|
454
|
+
- `Summary` is a compact fallback description.
|
|
455
|
+
- `Status` records the artifact's current declared state under its active schema semantics.
|
|
456
|
+
- `Status` is optional and root does not define a universal closed status vocabulary.
|
|
457
|
+
- Descendant schemas may constrain `Status` when their domain requires it.
|
|
458
|
+
- `Status` does not by itself prove validity, completeness, publication state, truth, execution success, approval, or readiness.
|
|
459
|
+
- `Why` explains why the artifact exists.
|
|
460
|
+
- `Why` is optional and does not by itself declare governing authority, evidence, validation, transition history, or revision rationale.
|
|
461
|
+
|
|
462
|
+
### Schema Reference Fields
|
|
463
|
+
|
|
464
|
+
Fields
|
|
465
|
+
|
|
466
|
+
- Envelope Schema
|
|
467
|
+
- Parent Schema
|
|
468
|
+
- Current Schema
|
|
469
|
+
|
|
470
|
+
Allowed Shapes
|
|
471
|
+
|
|
472
|
+
- Markdown Link
|
|
473
|
+
- Plain Schema Id
|
|
474
|
+
|
|
475
|
+
Rules
|
|
476
|
+
|
|
477
|
+
- Markdown Link is preferred when a schema artifact target is available.
|
|
478
|
+
- Plain Schema Id is allowed when no useful target is available or when local context already resolves the schema id.
|
|
479
|
+
|
|
480
|
+
### Trace Field
|
|
481
|
+
|
|
482
|
+
Allowed Shapes
|
|
483
|
+
|
|
484
|
+
- Markdown Link
|
|
485
|
+
- Relative Path
|
|
486
|
+
|
|
487
|
+
Rules
|
|
488
|
+
|
|
489
|
+
- Markdown Link is preferred when a target is available.
|
|
490
|
+
- Relative Path is allowed when the parent trace is local and directly recoverable.
|
|
491
|
+
|
|
492
|
+
### Created At
|
|
493
|
+
|
|
494
|
+
Required Shape
|
|
495
|
+
|
|
496
|
+
- YYYY-MM-DD hh:mm:ss
|
|
497
|
+
|
|
498
|
+
Rules
|
|
499
|
+
|
|
500
|
+
- UTC is implied.
|
|
501
|
+
- Time precision is seconds.
|
|
502
|
+
- Timezone suffixes are not part of the root timestamp shape.
|
|
503
|
+
- Local zone names are not part of the root timestamp shape.
|
|
504
|
+
- Numeric offsets are not part of the root timestamp shape.
|
|
505
|
+
- Milliseconds are not part of the root timestamp shape.
|
|
506
|
+
|
|
507
|
+
### Envelope Extension
|
|
508
|
+
|
|
509
|
+
Required When
|
|
510
|
+
|
|
511
|
+
- A descendant schema adds envelope fields.
|
|
512
|
+
|
|
513
|
+
Entry Shape
|
|
514
|
+
|
|
515
|
+
- Named Declaration
|
|
516
|
+
|
|
517
|
+
Declaration Fields
|
|
518
|
+
|
|
519
|
+
- Target Block
|
|
520
|
+
- Base Concept
|
|
521
|
+
- Interpretation
|
|
522
|
+
|
|
523
|
+
Allowed Target Blocks
|
|
524
|
+
|
|
525
|
+
- Continuity Context
|
|
526
|
+
- Parent
|
|
527
|
+
- Parent Origin
|
|
528
|
+
- Current
|
|
529
|
+
- Continuity Integrity
|
|
530
|
+
- Repairs
|
|
531
|
+
|
|
532
|
+
Rules
|
|
533
|
+
|
|
534
|
+
- Each envelope extension uses the `Named Declaration` shape.
|
|
535
|
+
- The declaration name is the added envelope field name.
|
|
536
|
+
- Declaration fields are represented as nested hyphen list items under the declaration entry.
|
|
537
|
+
- Descendant schemas may add machine-readable envelope fields.
|
|
538
|
+
- Added envelope fields must declare which envelope block they extend.
|
|
539
|
+
- Root validators should preserve unknown envelope fields even when they cannot validate them.
|
|
540
|
+
- Strict validators may warn or fail on undeclared envelope fields when the full schema lineage is available.
|
|
541
|
+
|
|
542
|
+
### Continuity Integrity Footer
|
|
543
|
+
|
|
544
|
+
Required Heading
|
|
545
|
+
|
|
546
|
+
- Continuity Integrity
|
|
547
|
+
|
|
548
|
+
Required Entries
|
|
549
|
+
|
|
550
|
+
- Method Entry
|
|
551
|
+
|
|
552
|
+
Rules
|
|
553
|
+
|
|
554
|
+
- `Continuity Integrity` is a footer surface.
|
|
555
|
+
- `Continuity Integrity` verifies relation or artifact integrity according to the named method.
|
|
556
|
+
- The footer should be the final top-level section of the artifact.
|
|
557
|
+
|
|
558
|
+
### Method Entry
|
|
559
|
+
|
|
560
|
+
Entry Shape
|
|
561
|
+
|
|
562
|
+
- First-Level Hyphen List Item
|
|
563
|
+
|
|
564
|
+
Allowed Shapes
|
|
565
|
+
|
|
566
|
+
- Plain Method Identifier
|
|
567
|
+
- Markdown Link Method Label
|
|
568
|
+
|
|
569
|
+
Required Fields
|
|
570
|
+
|
|
571
|
+
- Towards
|
|
572
|
+
- Value
|
|
573
|
+
|
|
574
|
+
Towards Allowed Shapes
|
|
575
|
+
|
|
576
|
+
- Markdown Link
|
|
577
|
+
- self
|
|
578
|
+
|
|
579
|
+
Rules
|
|
580
|
+
|
|
581
|
+
- `Method Entry` is represented by a first-level hyphen list item under `Continuity Integrity`.
|
|
582
|
+
- The `Method Entry` label names the integrity method.
|
|
583
|
+
- The `Method Entry` label may be a plain canonical method identifier or a markdown link to a validation method artifact.
|
|
584
|
+
- A markdown-link method label must use the canonical method identifier as link text.
|
|
585
|
+
- When a maintained validation method artifact has an available commit-pinned `browse + git` permalink, the markdown-link method label must use that permalink as its link target.
|
|
586
|
+
- `Towards` identifies the validated target.
|
|
587
|
+
- `Value` carries the method output.
|
|
588
|
+
- An integrity value identifies or verifies the representation or declared continuity target covered by the named method.
|
|
589
|
+
- For content-derived self methods, changing covered content normally changes the integrity value.
|
|
590
|
+
- An integrity value does not by itself prove immutable logical artifact identity across revisions or materializations.
|
|
591
|
+
- Equal or different integrity values must not by themselves be treated as proof of equal or different logical artifact subjects unless another declared identity contract provides that authority.
|
|
592
|
+
- For hash-based continuity methods, the validated target is hashed without the `# Continuity Integrity` section and everything after it.
|
|
593
|
+
- When `Towards` is not `self`, `Value` must be computed from the validated target identified by `Towards`, not from the current artifact body.
|
|
594
|
+
- `self` is allowed only when the method validates the current artifact itself.
|
|
595
|
+
- When a maintained schema artifact has an available commit-pinned `browse + git` permalink for its validated target, `Towards` should use that permalink instead of a relative local path.
|
|
596
|
+
|
|
597
|
+
### Extension
|
|
598
|
+
|
|
599
|
+
Required When
|
|
600
|
+
|
|
601
|
+
- A descendant schema introduces an extension.
|
|
602
|
+
|
|
603
|
+
Entry Shape
|
|
604
|
+
|
|
605
|
+
- Named Declaration
|
|
606
|
+
|
|
607
|
+
Declaration Fields
|
|
608
|
+
|
|
609
|
+
- Base Concept
|
|
610
|
+
- Interpretation
|
|
611
|
+
|
|
612
|
+
Rules
|
|
613
|
+
|
|
614
|
+
- Each extension uses the `Named Declaration` shape.
|
|
615
|
+
- The declaration name is the extension name.
|
|
616
|
+
- Declaration fields are represented as nested hyphen list items under the declaration entry.
|
|
617
|
+
- Root defines how extensions are introduced.
|
|
618
|
+
- Root does not define all future extensions.
|
|
619
|
+
|
|
620
|
+
### Optional Machine Sections
|
|
621
|
+
|
|
622
|
+
Optional Sections
|
|
623
|
+
|
|
624
|
+
- Artifact Creation Contract
|
|
625
|
+
|
|
626
|
+
Rules
|
|
627
|
+
|
|
628
|
+
- `Artifact Creation Contract` is present only when the schema supports direct artifact generation.
|
|
629
|
+
- `Artifact Creation Contract` uses the same contract syntax as `Schema Validation Contract`.
|
|
630
|
+
- Absence of `Artifact Creation Contract` means artifact generation is not declared by this schema.
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
<!-- Contract-only fixture transcribed from Tiinex/docs@068241174421716b941421e95931ec5a6e95b0da. -->
|
|
2
|
+
# Continuity Context
|
|
3
|
+
|
|
4
|
+
- Envelope Schema: tiinex.root.v1
|
|
5
|
+
- Parent
|
|
6
|
+
- Parent Schema: tiinex.root.v1
|
|
7
|
+
- Trace: parent.trace.md
|
|
8
|
+
- Origin: parent.trace.md
|
|
9
|
+
- Current
|
|
10
|
+
- Current Schema: tiinex.schema.contract.v1
|
|
11
|
+
- Created At: 2026-08-16 00:00:00
|
|
12
|
+
|
|
13
|
+
---
|
|
14
|
+
|
|
15
|
+
# Schema Contract
|
|
16
|
+
|
|
17
|
+
## Schema Validation Contract
|
|
18
|
+
|
|
19
|
+
### Contract Nodes
|
|
20
|
+
|
|
21
|
+
Entry Shape
|
|
22
|
+
|
|
23
|
+
- First-Level Hyphen List Item
|
|
24
|
+
|
|
25
|
+
Required Fields
|
|
26
|
+
|
|
27
|
+
- Contract Node Type
|
|
28
|
+
- Contract Node Label
|
|
29
|
+
|
|
30
|
+
Optional Fields
|
|
31
|
+
|
|
32
|
+
- Applies To
|
|
33
|
+
- Required
|
|
34
|
+
- Optional
|
|
35
|
+
- Cardinality
|
|
36
|
+
- Value Type
|
|
37
|
+
- Condition
|
|
38
|
+
- Operator
|
|
39
|
+
- Severity
|
|
40
|
+
- Message
|
|
41
|
+
- Generation Step
|
|
42
|
+
- Relation Type
|
|
43
|
+
- Parent Binding
|
|
44
|
+
- Child Binding
|
|
45
|
+
- Example Binding
|
|
46
|
+
|
|
47
|
+
Allowed Labels
|
|
48
|
+
|
|
49
|
+
- section
|
|
50
|
+
- field
|
|
51
|
+
- value
|
|
52
|
+
- rule
|
|
53
|
+
- generation
|
|
54
|
+
- relation
|
|
55
|
+
- inheritance
|
|
56
|
+
- example
|
|
57
|
+
- presentation
|
|
58
|
+
- module
|
|
59
|
+
- unknown
|
|
60
|
+
|
|
61
|
+
Rules
|
|
62
|
+
|
|
63
|
+
- Each first-level entry is one Contract Node declaration.
|
|
64
|
+
- The declaration name is the existing `Contract Node Handle` identity and must be unique within `## Contract Nodes`.
|
|
65
|
+
- Node-local fields belong to that declaration; repeated Node Type/Label/Applies To values must not be paired by document position.
|
|
66
|
+
- Contract node handles are scoped to the target schema contract and may remain stable across revisions while they continue to denote the same semantic node; checksum/fingerprint changes do not automatically supersede the scoped handle.
|
|
67
|
+
- Contract node labels should be human-readable.
|
|
68
|
+
- Contract nodes should not rely on hidden application registries as semantic authority.
|
|
69
|
+
- If a tool cannot understand a contract node type, it should report unknown, unavailable, skipped, or unconfirmed rather than treating it as pass.
|