@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
|
@@ -0,0 +1,550 @@
|
|
|
1
|
+
# Continuity Context
|
|
2
|
+
|
|
3
|
+
- Envelope Schema: [tiinex.root.v1](../../../tiinex.root.v1.schema.md)
|
|
4
|
+
- Parent
|
|
5
|
+
- Parent Schema: [tiinex.relation.v1](../../tiinex.relation.v1.schema.md)
|
|
6
|
+
- Created At: 2026-06-26 00:00:00
|
|
7
|
+
- Trace: [tiinex.relation.v1.schema.md](../../tiinex.relation.v1.schema.md)
|
|
8
|
+
- Origin:
|
|
9
|
+
- [relative](../../tiinex.relation.v1.schema.md)
|
|
10
|
+
- [browse + git](https://github.com/Tiinex/docs/blob/0fdce5f265298321a41cd90cf5382bcb6ae31a13/.topics/.schemas/relation/tiinex.relation.v1.schema.md)
|
|
11
|
+
- Current
|
|
12
|
+
- Current Schema: [tiinex.workspace.representation.v1](tiinex.workspace.representation.v1.schema.md)
|
|
13
|
+
- Created At: 2026-08-27 18:23:50
|
|
14
|
+
- Authors: Axiom
|
|
15
|
+
- Why: Defines the narrow canonical non-Parent relation that binds one explicit Workspace artifact to one explicit complete or intentionally bounded External Payload representation with deterministic Workspace-tree correlation and fail-closed provider qualification.
|
|
16
|
+
- Summary: Relation-owned companion schema for exact complete and bounded Workspace byte-tree representation bindings.
|
|
17
|
+
- Repairs
|
|
18
|
+
- Bounded Workspace representation activation
|
|
19
|
+
- Target: Schema Validation Contract / Representation Binding, Representation Scope, Representation Correlation, and Provider Qualification
|
|
20
|
+
- Note: Adds an explicit `bounded` coverage mode and bounded-only activation contract while leaving existing `complete` provider semantics unchanged; legacy `partial` and `unknown` coverage remain non-ready.
|
|
21
|
+
- Reason: Scoped export needs an intentional subset representation of one source Workspace without calling that subset a complete Workspace or treating detached transport closure as Workspace membership.
|
|
22
|
+
|
|
23
|
+
---
|
|
24
|
+
|
|
25
|
+
# Workspace Representation
|
|
26
|
+
|
|
27
|
+
- Status: draft schema note
|
|
28
|
+
|
|
29
|
+
## Summary
|
|
30
|
+
|
|
31
|
+
`tiinex.workspace.representation.v1` defines one explicit non-Parent semantic binding
|
|
32
|
+
between one `tiinex.workspace.v1` artifact and one `tiinex.external.payload.v1`
|
|
33
|
+
artifact whose payload represents either the complete Workspace byte tree or one
|
|
34
|
+
explicitly bounded subset of that byte tree.
|
|
35
|
+
|
|
36
|
+
The Workspace artifact remains the semantic, human-readable, lineage-bearing
|
|
37
|
+
Workspace. The External Payload artifact remains the owner of representation
|
|
38
|
+
payload identity, location, media/format metadata, exact payload-byte integrity,
|
|
39
|
+
access, and recovery boundaries. This companion owns only the relation endpoints,
|
|
40
|
+
Workspace-tree-to-payload-entry correlation, explicit bounded-scope semantics when
|
|
41
|
+
coverage is intentionally narrower than complete, binding state, and provider
|
|
42
|
+
qualification boundaries needed to interpret those two artifacts together.
|
|
43
|
+
|
|
44
|
+
The companion does not create or imply maintained `tiinex.archive.v1` or
|
|
45
|
+
`tiinex.zip.v1` semantics. An archive format such as `application/zip` remains
|
|
46
|
+
External Payload metadata unless a separately maintained schema later owns that
|
|
47
|
+
format semantics.
|
|
48
|
+
|
|
49
|
+
## Schema Validation Contract
|
|
50
|
+
|
|
51
|
+
### Workspace Representation Scope
|
|
52
|
+
|
|
53
|
+
Applies To
|
|
54
|
+
|
|
55
|
+
- artifacts whose `Current -> Current Schema` is `tiinex.workspace.representation.v1`
|
|
56
|
+
|
|
57
|
+
Rules
|
|
58
|
+
|
|
59
|
+
- `tiinex.workspace.representation.v1` identifies artifacts whose main job is to bind one explicit Workspace artifact to one explicit complete or bounded representation payload with deterministic byte-tree correlation and provider-qualification semantics.
|
|
60
|
+
- The binding is a typed non-Parent relation specialized from `tiinex.relation.v1`.
|
|
61
|
+
- The binding must remain readable and machine-extractable without package filenames, directory placement, ZIP adjacency, route labels, package membership, or hidden application state.
|
|
62
|
+
- A schema-valid binding may preserve a non-ready state such as `declared`, `stale`, or `unresolved`; schema validity alone does not authorize provider activation.
|
|
63
|
+
- Prose outside `Schema Validation Contract` may explain the schema, but it does not add required validation rules.
|
|
64
|
+
|
|
65
|
+
### Parent Relation Specialization
|
|
66
|
+
|
|
67
|
+
Rules
|
|
68
|
+
|
|
69
|
+
- Workspace Representation artifacts specialize the inherited `Relation Body` for artifacts whose `Current -> Current Schema` is `tiinex.workspace.representation.v1`.
|
|
70
|
+
- The child body replaces the generic inherited `## Relation Declaration` and `## Relation Target` instance sections with `## Representation Binding` and `## Representation Correlation`.
|
|
71
|
+
- `## Representation Binding` owns the fixed relation predicate/direction plus the explicit Workspace and representation-payload endpoints.
|
|
72
|
+
- Conditional `## Representation Scope` owns intentional bounded-scope meaning when `Coverage` is `bounded`; it is forbidden as a substitute completeness claim.
|
|
73
|
+
- `## Representation Correlation` owns deterministic correlation between represented Workspace paths and representation-payload entries.
|
|
74
|
+
- `## Relation Boundary` preserves and narrows the inherited non-Parent boundary.
|
|
75
|
+
- `## Provider Qualification` and required `## Interpretation Limits` add relation-specific state and interpretation obligations.
|
|
76
|
+
- This specialization changes the artifact body contract only; it does not weaken Root continuity, integrity, schema-reference, Parent, or origin semantics.
|
|
77
|
+
|
|
78
|
+
### Workspace Representation Body
|
|
79
|
+
|
|
80
|
+
Required Shape
|
|
81
|
+
|
|
82
|
+
- first body heading after the continuity envelope
|
|
83
|
+
- `## Representation Binding` section
|
|
84
|
+
- `## Representation Correlation` section
|
|
85
|
+
- `## Provider Qualification` section
|
|
86
|
+
- `## Relation Boundary` section
|
|
87
|
+
- `## Interpretation Limits` section
|
|
88
|
+
|
|
89
|
+
Optional Sections
|
|
90
|
+
|
|
91
|
+
- Representation Scope
|
|
92
|
+
- Evidence Basis
|
|
93
|
+
- Related Artifacts
|
|
94
|
+
- References
|
|
95
|
+
|
|
96
|
+
Rules
|
|
97
|
+
|
|
98
|
+
- A Workspace Representation artifact should begin with a human-readable title.
|
|
99
|
+
- Each required section must be readable without specialized tooling and structured enough that a consumer can preserve unresolved or non-ready state without guessing.
|
|
100
|
+
- Required sections must not be replaced by package-local control metadata or application state.
|
|
101
|
+
- `## Representation Scope` is conditionally required when `Coverage` is `bounded`, forbidden as a bounded-activation substitute when its required fields are absent, and optional/ordinarily omitted for `Coverage: complete`.
|
|
102
|
+
|
|
103
|
+
### Representation Binding
|
|
104
|
+
|
|
105
|
+
Required Fields
|
|
106
|
+
|
|
107
|
+
- Workspace Artifact
|
|
108
|
+
- Representation Payload
|
|
109
|
+
- Representation Kind
|
|
110
|
+
- Coverage
|
|
111
|
+
- Binding State
|
|
112
|
+
|
|
113
|
+
Field Value Constraints
|
|
114
|
+
|
|
115
|
+
- Workspace Artifact
|
|
116
|
+
- Allowed Shape: Markdown Link
|
|
117
|
+
- Domain Policy: closed
|
|
118
|
+
- Representation Payload
|
|
119
|
+
- Allowed Shape: Markdown Link
|
|
120
|
+
- Domain Policy: closed
|
|
121
|
+
- Representation Kind
|
|
122
|
+
- Allowed Value: exact-workspace-byte-tree-archive
|
|
123
|
+
- Allowed Value: exact-bounded-workspace-byte-tree-archive
|
|
124
|
+
- Domain Policy: closed
|
|
125
|
+
- Coverage
|
|
126
|
+
- Allowed Value: complete
|
|
127
|
+
- Allowed Value: bounded
|
|
128
|
+
- Allowed Value: partial
|
|
129
|
+
- Allowed Value: unknown
|
|
130
|
+
- Domain Policy: closed
|
|
131
|
+
- Binding State
|
|
132
|
+
- Allowed Value: verified
|
|
133
|
+
- Allowed Value: declared
|
|
134
|
+
- Allowed Value: stale
|
|
135
|
+
- Allowed Value: unresolved
|
|
136
|
+
- Domain Policy: closed
|
|
137
|
+
|
|
138
|
+
Rules
|
|
139
|
+
|
|
140
|
+
- `Workspace Artifact` identifies exactly one explicit artifact intended to resolve as `tiinex.workspace.v1`; filename, package membership, directory, adjacency, route label, or archive basename must never substitute for this endpoint.
|
|
141
|
+
- `Representation Payload` identifies exactly one explicit artifact intended to resolve as `tiinex.external.payload.v1`; it is the owner of payload identity, location, media/format, integrity value, integrity target, access, and recovery semantics.
|
|
142
|
+
- `Representation Kind: exact-workspace-byte-tree-archive` means the payload is intended to carry a path-addressable complete Workspace byte-tree representation. It does not assert a maintained Archive or ZIP schema.
|
|
143
|
+
- `Representation Kind: exact-bounded-workspace-byte-tree-archive` means the payload is intended to carry a path-addressable intentionally bounded set of Workspace-relative byte-tree entries. It does not make the payload a Workspace artifact and does not claim omitted Workspace paths are absent from the source Workspace.
|
|
144
|
+
- `Coverage: complete` means the representation is intended to cover the complete Workspace byte tree required by this binding.
|
|
145
|
+
- `Coverage: bounded` means the representation intentionally covers exactly the qualified decoded representation-entry set under `## Representation Scope`; it is a positive scope claim, not an incomplete/unknown state and not a completeness claim.
|
|
146
|
+
- `partial` and `unknown` remain preserved non-ready states for provider activation and must not be reinterpreted as `bounded`.
|
|
147
|
+
- `Binding State: verified` is a current qualification claim and is contradictory when either endpoint, required scope when bounded, required correlation, decoder, payload integrity, coverage, or required comparison evidence is unresolved, stale, invalid, or mismatched.
|
|
148
|
+
- `declared`, `stale`, and `unresolved` preserve non-ready states and must not be promoted to `verified` from package placement, digest-string presence, successful decoding alone, or application convenience.
|
|
149
|
+
- The semantic relation direction is Workspace artifact -> representation payload. The payload is a representation of complete or bounded Workspace-tree bytes; it is not the Workspace artifact itself.
|
|
150
|
+
|
|
151
|
+
### Representation Scope
|
|
152
|
+
|
|
153
|
+
Required When
|
|
154
|
+
|
|
155
|
+
- `Coverage` is `bounded`
|
|
156
|
+
|
|
157
|
+
Required Fields
|
|
158
|
+
|
|
159
|
+
- Scope Basis
|
|
160
|
+
- Included Entry Authority
|
|
161
|
+
- Omitted Entry Meaning
|
|
162
|
+
- Source Membership Claim
|
|
163
|
+
- Recovery Closure Boundary
|
|
164
|
+
|
|
165
|
+
Field Value Constraints
|
|
166
|
+
|
|
167
|
+
- Scope Basis
|
|
168
|
+
- Allowed Value: exact-representation-entry-set
|
|
169
|
+
- Domain Policy: closed
|
|
170
|
+
- Included Entry Authority
|
|
171
|
+
- Allowed Value: qualified-decoded-entry-set
|
|
172
|
+
- Domain Policy: closed
|
|
173
|
+
- Omitted Entry Meaning
|
|
174
|
+
- Allowed Value: outside-representation-not-absent-from-workspace
|
|
175
|
+
- Domain Policy: closed
|
|
176
|
+
- Source Membership Claim
|
|
177
|
+
- Allowed Value: represented-entries-are-workspace-relative-source-bytes
|
|
178
|
+
- Domain Policy: closed
|
|
179
|
+
- Recovery Closure Boundary
|
|
180
|
+
- Allowed Value: separate-qualified-closure
|
|
181
|
+
- Domain Policy: closed
|
|
182
|
+
|
|
183
|
+
Rules
|
|
184
|
+
|
|
185
|
+
- `Scope Basis: exact-representation-entry-set` means the bounded semantic scope is exactly the normalized representation entries yielded by the qualified payload, declared decoder, archive-entry root, and path mapping; package siblings, detached dependencies, cache entries, and outer transport files are not members merely because they are carried nearby.
|
|
186
|
+
- `Included Entry Authority: qualified-decoded-entry-set` means the included path set is derived only after payload integrity, decoder safety, path normalization, collision handling, and mapping qualify. A filename list, requested UI selection, manufacture plan, or outer file map alone is not bounded-scope authority.
|
|
187
|
+
- `Omitted Entry Meaning: outside-representation-not-absent-from-workspace` means a Workspace-relative path absent from the bounded representation is outside this representation only. Its absence must not be interpreted as proof that the path is absent from the source Workspace.
|
|
188
|
+
- `Source Membership Claim: represented-entries-are-workspace-relative-source-bytes` means this binding asserts that every bounded representation entry corresponds to the declared Workspace-relative path in the source Workspace scope qualified when the binding became `verified`; a consumer must preserve this as a bounded representation claim rather than promoting it to whole-Workspace completeness.
|
|
189
|
+
- `Recovery Closure Boundary: separate-qualified-closure` means Parent/recovery material carried outside the representation payload remains transport closure only. Detached recovery bytes do not become bounded Workspace members unless they are also entries of the representation payload and therefore part of the exact bounded scope.
|
|
190
|
+
- A bounded binding must include the bound Workspace artifact at `Workspace Artifact Inner Path` as one representation entry so the semantic Workspace endpoint remains directly correlated to the represented path set.
|
|
191
|
+
- Bounded scope must not be inferred from the difference between an archive and some unavailable source tree. `Coverage: bounded` requires this explicit scope section and the bounded-only provider contract below.
|
|
192
|
+
- A bounded representation may carry one, many, or all currently selected Workspace-relative source entries, but it remains `bounded` until a separately qualified complete-coverage contract proves `Coverage: complete`; accidental equality with a complete tree does not silently change coverage semantics.
|
|
193
|
+
|
|
194
|
+
### Representation Correlation
|
|
195
|
+
|
|
196
|
+
Required Fields
|
|
197
|
+
|
|
198
|
+
- Workspace Tree Root
|
|
199
|
+
- Workspace Artifact Inner Path
|
|
200
|
+
- Archive Entry Root
|
|
201
|
+
- Path Mapping
|
|
202
|
+
- Collision Policy
|
|
203
|
+
- Decoder Requirement
|
|
204
|
+
|
|
205
|
+
Optional Fields
|
|
206
|
+
|
|
207
|
+
- Mapping Manifest
|
|
208
|
+
- Entry Integrity Manifest
|
|
209
|
+
|
|
210
|
+
Field Value Constraints
|
|
211
|
+
|
|
212
|
+
- Path Mapping
|
|
213
|
+
- Allowed Value: identity-relative-paths
|
|
214
|
+
- Allowed Value: manifest
|
|
215
|
+
- Domain Policy: closed
|
|
216
|
+
- Collision Policy
|
|
217
|
+
- Allowed Value: reject-ambiguous-or-unsafe-paths
|
|
218
|
+
- Domain Policy: closed
|
|
219
|
+
- Mapping Manifest
|
|
220
|
+
- Allowed Shape: Markdown Link
|
|
221
|
+
- Domain Policy: closed
|
|
222
|
+
- Entry Integrity Manifest
|
|
223
|
+
- Allowed Shape: Markdown Link
|
|
224
|
+
- Domain Policy: closed
|
|
225
|
+
|
|
226
|
+
Rules
|
|
227
|
+
|
|
228
|
+
- `Workspace Tree Root` identifies the logical root from which Workspace-relative paths are interpreted. `.` denotes the represented Workspace root.
|
|
229
|
+
- `Workspace Artifact Inner Path` is the exact Workspace-relative path at which the bound Workspace artifact must occur in the represented tree.
|
|
230
|
+
- `Archive Entry Root` is the exact representation-payload entry prefix corresponding to `Workspace Tree Root`; `.` denotes a root-preserving representation.
|
|
231
|
+
- Workspace and archive path fields must use normalized forward-slash relative path semantics. Absolute paths, drive-qualified paths, NUL-containing paths, `..` traversal, empty non-root paths, and entries that escape their declared root are invalid for provider qualification.
|
|
232
|
+
- `Path Mapping: identity-relative-paths` means every Workspace-relative path under `Workspace Tree Root` maps to the same normalized relative path below `Archive Entry Root`.
|
|
233
|
+
- `Path Mapping: manifest` requires `Mapping Manifest`; the referenced material must explicitly map Workspace-relative paths to representation entries. Identity fallback is forbidden when manifest mapping is declared.
|
|
234
|
+
- `Mapping Manifest` and `Entry Integrity Manifest`, when present, are explicit reference targets whose own schema/source/integrity authority must be qualified separately; the link itself does not prove manifest correctness.
|
|
235
|
+
- `Collision Policy: reject-ambiguous-or-unsafe-paths` requires rejection of duplicate normalized entries, multiple entries mapping to one Workspace-relative path, traversal or absolute entries, unsafe entry types, and case/Unicode-normalization ambiguity when the consuming environment cannot preserve a unique comparison.
|
|
236
|
+
- `Decoder Requirement` states the decoder/codec capability required to interpret the representation payload. Decoder availability, format compatibility, and safe-entry handling are qualification conditions. Consumers must not guess another decoder or representation when the declared requirement is unavailable.
|
|
237
|
+
- Whole-payload digest verification fixes the exact representation bytes only. Provider qualification must additionally validate the declared decoder, path mapping, bound Workspace inner entry, and the declared coverage-mode requirements.
|
|
238
|
+
- For `Coverage: bounded`, every qualified decoded representation entry is part of the bounded scope after mapping; consumers must not silently drop a decoded entry from semantic scope or silently add detached/package material to it.
|
|
239
|
+
- When verified payload bytes plus the declared decoder/mapping and exact bound Workspace comparison cannot establish required entry/tree identity, complete coverage when `complete`, or exact bounded-entry correlation when `bounded`, `Entry Integrity Manifest` or equivalent separately qualified integrity material is required; consumers must fail closed rather than infer equivalence.
|
|
240
|
+
|
|
241
|
+
### Provider Qualification
|
|
242
|
+
|
|
243
|
+
Required Fields
|
|
244
|
+
|
|
245
|
+
- Activation Rule
|
|
246
|
+
- Payload Integrity Requirement
|
|
247
|
+
- Coverage Requirement
|
|
248
|
+
- Staleness Rule
|
|
249
|
+
- Selection Rule
|
|
250
|
+
- Multi-Workspace Isolation
|
|
251
|
+
|
|
252
|
+
Field Value Constraints
|
|
253
|
+
|
|
254
|
+
- Activation Rule
|
|
255
|
+
- Allowed Value: verified-complete-only
|
|
256
|
+
- Allowed Value: verified-bounded-only
|
|
257
|
+
- Domain Policy: closed
|
|
258
|
+
- Payload Integrity Requirement
|
|
259
|
+
- Allowed Value: verified-exact-payload-bytes
|
|
260
|
+
- Domain Policy: closed
|
|
261
|
+
- Coverage Requirement
|
|
262
|
+
- Allowed Value: complete
|
|
263
|
+
- Allowed Value: bounded
|
|
264
|
+
- Domain Policy: closed
|
|
265
|
+
- Staleness Rule
|
|
266
|
+
- Allowed Value: requalify-on-binding-relevant-change
|
|
267
|
+
- Domain Policy: closed
|
|
268
|
+
- Selection Rule
|
|
269
|
+
- Allowed Value: exactly-one-binding-per-workspace
|
|
270
|
+
- Allowed Value: explicit-binding-per-bounded-scope
|
|
271
|
+
- Domain Policy: closed
|
|
272
|
+
- Multi-Workspace Isolation
|
|
273
|
+
- Allowed Value: independent-binding-closure
|
|
274
|
+
- Domain Policy: closed
|
|
275
|
+
|
|
276
|
+
Rules
|
|
277
|
+
|
|
278
|
+
- `Activation Rule: verified-complete-only` permits an archive-backed complete Workspace provider to report ready only when one binding resolves exactly one Workspace artifact and exactly one Representation Payload, `Binding State` is `verified`, `Coverage` and `Coverage Requirement` are `complete`, `Representation Kind` is `exact-workspace-byte-tree-archive`, `Selection Rule` is `exactly-one-binding-per-workspace`, and every required correlation/integrity condition qualifies.
|
|
279
|
+
- `Activation Rule: verified-bounded-only` permits only a bounded Workspace-representation provider to report ready. It requires one explicit binding, `Binding State: verified`, `Coverage` and `Coverage Requirement` `bounded`, `Representation Kind: exact-bounded-workspace-byte-tree-archive`, required `## Representation Scope`, `Selection Rule: explicit-binding-per-bounded-scope`, and every required endpoint/scope/correlation/integrity condition to qualify.
|
|
280
|
+
- A `verified-bounded-only` provider must expose its coverage as bounded and must not advertise, materialize, alias, cache, or serialize the result as a complete Workspace snapshot merely because all requested paths resolved successfully.
|
|
281
|
+
- `Payload Integrity Requirement: verified-exact-payload-bytes` requires the resolved External Payload's `Integrity Status` and `Integrity Target` to qualify the exact representation bytes actually used. The digest value remains owned by the External Payload and must not be duplicated into this binding merely for convenience.
|
|
282
|
+
- `Coverage Requirement: complete` preserves the existing complete Workspace-byte-tree provider contract. `Coverage Requirement: bounded` requires the exact qualified decoded entry set and bounded scope semantics above without any whole-Workspace completeness claim. `partial` and `unknown` never satisfy either activation rule.
|
|
283
|
+
- `Staleness Rule: requalify-on-binding-relevant-change` means a changed bound Workspace representation, changed representation payload digest/integrity target, changed coverage/scope declaration, changed mapping, changed required inner path/root, changed decoder requirement, changed required manifest, or another canonical binding-relevant change makes the prior verified state stale or unresolved until requalified.
|
|
284
|
+
- `Selection Rule: exactly-one-binding-per-workspace` blocks competing ready complete bindings for the same Workspace unless a separate canonical selection authority explicitly resolves the competition.
|
|
285
|
+
- `Selection Rule: explicit-binding-per-bounded-scope` permits multiple different bounded bindings for one Workspace because each binding may carry a different exact scope; a consumer must select the exact Workspace Representation artifact through explicit Handoff/package/reference authority and must not choose a bounded binding from Workspace identity, filename, adjacency, archive basename, or path similarity alone.
|
|
286
|
+
- `Multi-Workspace Isolation: independent-binding-closure` means a qualified binding for Workspace A has no authority for Workspace B, even when payload bytes, filenames, layouts, or source repositories are identical.
|
|
287
|
+
- Provider activation must fail closed on duplicate or ambiguous Workspace identity; incompatible activation/coverage/representation-kind/selection-rule combinations; competing complete bindings without canonical selection authority; bounded activation without an explicitly selected exact binding; missing required bounded scope; missing, stale, unresolved, or schema-invalid binding; missing or schema-invalid External Payload; unavailable or disallowed decoder; payload digest mismatch or wrong integrity target; missing or wrong bound Workspace inner entry; mismatch between exact bound inner Workspace bytes and the referenced Workspace representation when comparison is available or required; duplicate normalized paths; traversal, absolute, or unsafe entries; path/mapping collisions; missing required Mapping Manifest or Entry Integrity Manifest; incomplete required complete coverage; unqualified bounded entry-set correlation; or a binding resolved only through filename, directory, adjacency, route label, package path, or package membership.
|
|
288
|
+
- A bare checksum-string equality, successful archive open, successful path lookup, or successful transport does not satisfy the provider qualification contract by itself.
|
|
289
|
+
|
|
290
|
+
### Relation Boundary
|
|
291
|
+
|
|
292
|
+
Required Fields
|
|
293
|
+
|
|
294
|
+
- Parent Boundary
|
|
295
|
+
- Workspace Identity Boundary
|
|
296
|
+
- Payload Identity Boundary
|
|
297
|
+
- Transport Boundary
|
|
298
|
+
- Outer Integrity Boundary
|
|
299
|
+
|
|
300
|
+
Rules
|
|
301
|
+
|
|
302
|
+
- `Parent Boundary` must state that neither endpoint is a Tiinex `Parent` merely because this representation binding exists.
|
|
303
|
+
- `Workspace Identity Boundary` must preserve the Workspace artifact as the semantic Workspace identity and must not allow the payload, archive filename, inner path, package route, or transport to replace it.
|
|
304
|
+
- `Payload Identity Boundary` must preserve External Payload authority over representation payload identity and exact payload-byte integrity.
|
|
305
|
+
- `Transport Boundary` must state that package-local location, Repository Transport, Handoff transport, decoder success, retrieval mechanics, and detached Parent/recovery closure are separate from this semantic binding.
|
|
306
|
+
- `Outer Integrity Boundary` must state that this relation does not replace separately owned outer-package exact-file/tamper authority such as `tiinex.package/file-map.json`.
|
|
307
|
+
- Preservation/custody semantics may be represented by a separate `tiinex.preservation.v1` artifact when independently meaningful; preservation is not implied by every Workspace Representation binding.
|
|
308
|
+
|
|
309
|
+
### Interpretation Limits
|
|
310
|
+
|
|
311
|
+
Required Fields
|
|
312
|
+
|
|
313
|
+
- Does Not Prove
|
|
314
|
+
- Must Not Be Used As
|
|
315
|
+
|
|
316
|
+
Optional Fields
|
|
317
|
+
|
|
318
|
+
- Preservation Boundary
|
|
319
|
+
- Repository Transport Boundary
|
|
320
|
+
- Source Boundary
|
|
321
|
+
- Open Questions
|
|
322
|
+
|
|
323
|
+
Rules
|
|
324
|
+
|
|
325
|
+
- Payload integrity and verified binding state do not prove semantic correctness, provenance, authorship, acceptance, completion, source identity, permission, consent, or truth.
|
|
326
|
+
- The representation payload must not be interpreted as the Workspace artifact itself or as a continuity Parent.
|
|
327
|
+
- Repository source/transport semantics, optional preservation semantics, Handoff lifecycle truth, recipient addressing, package-parent lineage, START/Pointer behavior, and outer-package tamper authority remain separately owned.
|
|
328
|
+
- Unknown or unavailable companion authority must remain unresolved rather than being repaired from path, filename, host, repository, branch, package location, or similar heuristics.
|
|
329
|
+
- `Coverage: bounded` means only that this representation has one exact intentional scope. It must not be used to claim the source Workspace is itself partial, that omitted entries do not exist, that all Workspace sources are present, or that the bounded payload is a substitute Workspace artifact.
|
|
330
|
+
- Detached Parent/recovery closure may make represented artifacts recoverable without becoming part of the bounded Workspace representation; transport recovery authority and representation membership must remain separate.
|
|
331
|
+
|
|
332
|
+
### File Naming
|
|
333
|
+
|
|
334
|
+
Allowed Shapes
|
|
335
|
+
|
|
336
|
+
- `<lineage>.trace.md`
|
|
337
|
+
- `<lineage>-workspace-representation.trace.md`
|
|
338
|
+
- `<lineage>-<workspace-representation-slug>.trace.md`
|
|
339
|
+
|
|
340
|
+
Rules
|
|
341
|
+
|
|
342
|
+
- Workspace Representation artifacts should keep the lineage label first.
|
|
343
|
+
- The optional slug should identify the bounded represented Workspace/payload binding rather than a low-signal transport detail.
|
|
344
|
+
- Workspace Representation artifacts should keep the `.trace.md` suffix stable.
|
|
345
|
+
|
|
346
|
+
### Interpretation Boundaries
|
|
347
|
+
|
|
348
|
+
Rules
|
|
349
|
+
|
|
350
|
+
- Use `tiinex.workspace.representation.v1` when the main artifact value is one explicit Workspace-to-representation binding with deterministic correlation and qualification semantics.
|
|
351
|
+
- Do not use this schema to replace `tiinex.workspace.v1`, `tiinex.external.payload.v1`, `tiinex.preservation.v1`, repository transport semantics, Handoff semantics, source/provenance semantics, or package-wide integrity ownership.
|
|
352
|
+
- Do not use this schema for generic relations that do not require the specialized Workspace representation contract; use `tiinex.relation.v1` or another owning schema instead.
|
|
353
|
+
- Do not infer maintained Archive or ZIP schema semantics from `Representation Kind`, payload media type, file extension, or decoder requirement.
|
|
354
|
+
- Do not use `tiinex.semantic.package.v1`, `tiinex.external.payload.v1`, or generic `tiinex.relation.v1` alone to imply bounded Workspace-provider activation: Semantic Package owns package discovery, External Payload owns payload reference/integrity, and generic Relation lacks this specialized Workspace scope/correlation contract.
|
|
355
|
+
|
|
356
|
+
## Artifact Creation Contract
|
|
357
|
+
|
|
358
|
+
### Creation Fields
|
|
359
|
+
|
|
360
|
+
Required Fields
|
|
361
|
+
|
|
362
|
+
- Workspace Artifact
|
|
363
|
+
- Representation Payload
|
|
364
|
+
- Representation Kind
|
|
365
|
+
- Coverage
|
|
366
|
+
- Binding State
|
|
367
|
+
- Workspace Tree Root
|
|
368
|
+
- Workspace Artifact Inner Path
|
|
369
|
+
- Archive Entry Root
|
|
370
|
+
- Path Mapping
|
|
371
|
+
- Collision Policy
|
|
372
|
+
- Decoder Requirement
|
|
373
|
+
- Activation Rule
|
|
374
|
+
- Payload Integrity Requirement
|
|
375
|
+
- Coverage Requirement
|
|
376
|
+
- Staleness Rule
|
|
377
|
+
- Selection Rule
|
|
378
|
+
- Multi-Workspace Isolation
|
|
379
|
+
- Parent Boundary
|
|
380
|
+
- Workspace Identity Boundary
|
|
381
|
+
- Payload Identity Boundary
|
|
382
|
+
- Transport Boundary
|
|
383
|
+
- Outer Integrity Boundary
|
|
384
|
+
- Does Not Prove
|
|
385
|
+
- Must Not Be Used As
|
|
386
|
+
|
|
387
|
+
Optional Fields
|
|
388
|
+
|
|
389
|
+
- Scope Basis
|
|
390
|
+
- Included Entry Authority
|
|
391
|
+
- Omitted Entry Meaning
|
|
392
|
+
- Source Membership Claim
|
|
393
|
+
- Recovery Closure Boundary
|
|
394
|
+
- Mapping Manifest
|
|
395
|
+
- Entry Integrity Manifest
|
|
396
|
+
- Preservation Boundary
|
|
397
|
+
- Repository Transport Boundary
|
|
398
|
+
- Source Boundary
|
|
399
|
+
- Open Questions
|
|
400
|
+
|
|
401
|
+
### Creation Rules
|
|
402
|
+
|
|
403
|
+
Rules
|
|
404
|
+
|
|
405
|
+
- Creation tools must require both semantic endpoints explicitly and must not derive them from archive filename, directory placement, package membership, route labels, or adjacency.
|
|
406
|
+
- Creation tools should preserve `declared`, `stale`, or `unresolved` when verification evidence is incomplete rather than fabricating `verified`.
|
|
407
|
+
- Creation tools must not copy volatile External Payload digest/location fields into the binding solely to make provider resolution easier.
|
|
408
|
+
- `Coverage: bounded` requires `Representation Kind: exact-bounded-workspace-byte-tree-archive`, all `## Representation Scope` fields, `Activation Rule: verified-bounded-only`, `Coverage Requirement: bounded`, and `Selection Rule: explicit-binding-per-bounded-scope`.
|
|
409
|
+
- `Coverage: complete` with provider activation requires `Representation Kind: exact-workspace-byte-tree-archive`, `Activation Rule: verified-complete-only`, `Coverage Requirement: complete`, and `Selection Rule: exactly-one-binding-per-workspace`; existing complete bindings do not need a `## Representation Scope` section.
|
|
410
|
+
- `partial` and `unknown` must remain non-ready and must not be emitted as shortcuts for intentional bounded export.
|
|
411
|
+
- `Mapping Manifest` is required when `Path Mapping` is `manifest`.
|
|
412
|
+
- `Entry Integrity Manifest` is required when the chosen decoder/mapping plus verified whole-payload integrity and exact Workspace comparison cannot establish required entry/tree identity, complete coverage for complete activation, or exact bounded-entry correlation for bounded activation.
|
|
413
|
+
- Direct creation of a `verified` binding should require the same endpoint, scope when bounded, decoder, mapping, integrity, entry, coverage, and collision checks that provider activation requires.
|
|
414
|
+
|
|
415
|
+
## Minimal Example
|
|
416
|
+
|
|
417
|
+
```md
|
|
418
|
+
# Tiinex Site Workspace Representation
|
|
419
|
+
|
|
420
|
+
## Representation Binding
|
|
421
|
+
|
|
422
|
+
- Workspace Artifact: [Tiinex Site Workspace](tiinex-site.workspace.md)
|
|
423
|
+
- Representation Payload: [Tiinex Site Workspace Archive Payload](tiinex-site-workspace-payload.trace.md)
|
|
424
|
+
- Representation Kind: exact-workspace-byte-tree-archive
|
|
425
|
+
- Coverage: complete
|
|
426
|
+
- Binding State: verified
|
|
427
|
+
|
|
428
|
+
## Representation Correlation
|
|
429
|
+
|
|
430
|
+
- Workspace Tree Root: .
|
|
431
|
+
- Workspace Artifact Inner Path: .topics/.workspaces/tiinex-site.workspace.md
|
|
432
|
+
- Archive Entry Root: .
|
|
433
|
+
- Path Mapping: identity-relative-paths
|
|
434
|
+
- Collision Policy: reject-ambiguous-or-unsafe-paths
|
|
435
|
+
- Decoder Requirement: ZIP decoder with safe-entry validation
|
|
436
|
+
|
|
437
|
+
## Provider Qualification
|
|
438
|
+
|
|
439
|
+
- Activation Rule: verified-complete-only
|
|
440
|
+
- Payload Integrity Requirement: verified-exact-payload-bytes
|
|
441
|
+
- Coverage Requirement: complete
|
|
442
|
+
- Staleness Rule: requalify-on-binding-relevant-change
|
|
443
|
+
- Selection Rule: exactly-one-binding-per-workspace
|
|
444
|
+
- Multi-Workspace Isolation: independent-binding-closure
|
|
445
|
+
|
|
446
|
+
## Relation Boundary
|
|
447
|
+
|
|
448
|
+
- Parent Boundary: neither endpoint becomes Parent through this representation relation
|
|
449
|
+
- Workspace Identity Boundary: the referenced Workspace artifact remains the semantic Workspace identity
|
|
450
|
+
- Payload Identity Boundary: the referenced External Payload owns archive identity and exact payload-byte integrity
|
|
451
|
+
- Transport Boundary: package location, archive adjacency, repository transport, and decoder success are not binding authority
|
|
452
|
+
- Outer Integrity Boundary: package-wide exact-file/tamper authority remains separately owned
|
|
453
|
+
|
|
454
|
+
## Interpretation Limits
|
|
455
|
+
|
|
456
|
+
- Does Not Prove: semantic correctness, provenance, authorship, acceptance, completion, source identity, permission, consent, or truth
|
|
457
|
+
- Must Not Be Used As: a replacement for Workspace identity, External Payload authority, Parent continuity, repository transport, preservation, Handoff state, or package-wide integrity authority
|
|
458
|
+
```
|
|
459
|
+
|
|
460
|
+
A bounded export uses the same semantic endpoints but must declare bounded scope and bounded-only activation:
|
|
461
|
+
|
|
462
|
+
```md
|
|
463
|
+
# Tiinex Site Workspace Bounded Representation
|
|
464
|
+
|
|
465
|
+
## Representation Binding
|
|
466
|
+
|
|
467
|
+
- Workspace Artifact: [Tiinex Site Workspace](tiinex-site.workspace.md)
|
|
468
|
+
- Representation Payload: [Selected Site Workspace Bytes](tiinex-site-bounded-workspace-payload.trace.md)
|
|
469
|
+
- Representation Kind: exact-bounded-workspace-byte-tree-archive
|
|
470
|
+
- Coverage: bounded
|
|
471
|
+
- Binding State: verified
|
|
472
|
+
|
|
473
|
+
## Representation Scope
|
|
474
|
+
|
|
475
|
+
- Scope Basis: exact-representation-entry-set
|
|
476
|
+
- Included Entry Authority: qualified-decoded-entry-set
|
|
477
|
+
- Omitted Entry Meaning: outside-representation-not-absent-from-workspace
|
|
478
|
+
- Source Membership Claim: represented-entries-are-workspace-relative-source-bytes
|
|
479
|
+
- Recovery Closure Boundary: separate-qualified-closure
|
|
480
|
+
|
|
481
|
+
## Representation Correlation
|
|
482
|
+
|
|
483
|
+
- Workspace Tree Root: .
|
|
484
|
+
- Workspace Artifact Inner Path: .topics/.workspaces/tiinex-site.workspace.md
|
|
485
|
+
- Archive Entry Root: .
|
|
486
|
+
- Path Mapping: identity-relative-paths
|
|
487
|
+
- Collision Policy: reject-ambiguous-or-unsafe-paths
|
|
488
|
+
- Decoder Requirement: ZIP decoder with safe-entry validation
|
|
489
|
+
|
|
490
|
+
## Provider Qualification
|
|
491
|
+
|
|
492
|
+
- Activation Rule: verified-bounded-only
|
|
493
|
+
- Payload Integrity Requirement: verified-exact-payload-bytes
|
|
494
|
+
- Coverage Requirement: bounded
|
|
495
|
+
- Staleness Rule: requalify-on-binding-relevant-change
|
|
496
|
+
- Selection Rule: explicit-binding-per-bounded-scope
|
|
497
|
+
- Multi-Workspace Isolation: independent-binding-closure
|
|
498
|
+
|
|
499
|
+
## Relation Boundary
|
|
500
|
+
|
|
501
|
+
- Parent Boundary: neither endpoint becomes Parent through this representation relation
|
|
502
|
+
- Workspace Identity Boundary: the referenced Workspace artifact remains the semantic Workspace identity
|
|
503
|
+
- Payload Identity Boundary: the referenced External Payload owns archive identity and exact payload-byte integrity
|
|
504
|
+
- Transport Boundary: package location, archive adjacency, repository transport, detached recovery closure, and decoder success are not binding authority
|
|
505
|
+
- Outer Integrity Boundary: package-wide exact-file/tamper authority remains separately owned
|
|
506
|
+
|
|
507
|
+
## Interpretation Limits
|
|
508
|
+
|
|
509
|
+
- Does Not Prove: whole-Workspace completeness, absence of omitted source paths, semantic correctness, provenance, authorship, acceptance, completion, source identity, permission, consent, or truth
|
|
510
|
+
- Must Not Be Used As: a complete Workspace snapshot, a replacement for Workspace identity, External Payload authority, Parent continuity, repository transport, preservation, Handoff state, or package-wide integrity authority
|
|
511
|
+
```
|
|
512
|
+
|
|
513
|
+
## Validation-Friendly Shape
|
|
514
|
+
|
|
515
|
+
Keep this schema note in the exact section order already used here:
|
|
516
|
+
`Summary`, `Schema Validation Contract`, `Artifact Creation Contract`,
|
|
517
|
+
`Minimal Example`, `Validation-Friendly Shape`, and `Interpretation Notes`.
|
|
518
|
+
|
|
519
|
+
Maintain those section headings exactly in this schema note. Free markdown inside
|
|
520
|
+
those sections is allowed, but adding undeclared new second-level section
|
|
521
|
+
headings should be treated as schema drift.
|
|
522
|
+
|
|
523
|
+
The required artifact body headings are `## Representation Binding`,
|
|
524
|
+
`## Representation Correlation`, `## Provider Qualification`,
|
|
525
|
+
`## Relation Boundary`, and `## Interpretation Limits`. `## Representation Scope`
|
|
526
|
+
is additionally required when `Coverage` is `bounded` and is ordinarily omitted
|
|
527
|
+
for `Coverage: complete`.
|
|
528
|
+
|
|
529
|
+
## Interpretation Notes
|
|
530
|
+
|
|
531
|
+
- final schema id: `tiinex.workspace.representation.v1`
|
|
532
|
+
- canonical family: relation-owned specialization of `tiinex.relation.v1`, not a Workspace-field extension
|
|
533
|
+
- canonical path: `.topics/.schemas/relation/workspace/representation/tiinex.workspace.representation.v1.schema.md`
|
|
534
|
+
- External Payload continues to own exact representation bytes, digest, location, media/format, access, and recovery context
|
|
535
|
+
- existing complete coverage semantics remain unchanged: complete activation still requires a verified, non-stale complete binding
|
|
536
|
+
- intentional scoped export uses distinct `Coverage: bounded` plus `verified-bounded-only`; `partial` and `unknown` remain non-ready
|
|
537
|
+
- bounded provider activation exposes only the exact qualified decoded representation-entry set and must never report whole-Workspace completeness
|
|
538
|
+
- detached Parent/recovery closure remains transport material unless the same bytes are also explicit representation-payload entries
|
|
539
|
+
- exact whole-payload integrity does not remove the need to qualify decoder, mapping, collisions, the bound Workspace inner entry, and coverage
|
|
540
|
+
- per-entry/tree integrity material is conditional, not duplicated by default
|
|
541
|
+
- package-local and repository-transport facts remain separate from semantic binding authority
|
|
542
|
+
- `tiinex.archive.v1` and `tiinex.zip.v1` remain unclaimed while reserved-only
|
|
543
|
+
|
|
544
|
+
---
|
|
545
|
+
|
|
546
|
+
# Continuity Integrity
|
|
547
|
+
|
|
548
|
+
- [sha256-base64url-c14n-v2](https://github.com/Tiinex/docs/blob/3988951208eb9a8926e84ab42625d4b42fa00c2d/.topics/.validators/sha256-base64url-c14n-v2.validator.md)
|
|
549
|
+
- Towards: self
|
|
550
|
+
- Value: ZnL0uFsniOfLKBLp7X3NUDDS8RobgJ1tx_Op9oiYs6c
|