@tiinex/core 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 +45 -0
- package/package.json +176 -0
- package/src/actions/record.actions.js +312 -0
- package/src/adapters/adapter.contracts.js +143 -0
- package/src/adapters/archive/archive.adapter.js +502 -0
- package/src/adapters/archive/archive.portableChangeset.js +141 -0
- package/src/adapters/archive/archive.transport.js +124 -0
- package/src/artifacts/artifact.localDraft.js +27 -0
- package/src/artifacts/artifact.normalize.js +28 -0
- package/src/artifacts/artifact.parse.js +207 -0
- package/src/artifacts/artifact.record.js +83 -0
- package/src/audit/audit.run.js +103 -0
- package/src/audit/audit.summary.js +7 -0
- package/src/diagnostics/sourceBoundary.report.js +112 -0
- package/src/export/package.apply.js +349 -0
- package/src/export/package.builder.js +366 -0
- package/src/export/package.bytes.js +164 -0
- package/src/export/package.controlIntegrity.js +42 -0
- package/src/export/package.controlTopology.js +97 -0
- package/src/export/package.fileMap.js +174 -0
- package/src/export/package.manifest.js +401 -0
- package/src/export/package.preflight.js +204 -0
- package/src/export/package.sourceReference.js +81 -0
- package/src/export/package.workspaceContext.js +144 -0
- package/src/export/package.zip.js +128 -0
- package/src/export/tree.bundle.js +278 -0
- package/src/governance/governance.boundary.js +196 -0
- package/src/integrity/integrity.c14nV2.js +190 -0
- package/src/integrity/integrity.methodReference.js +73 -0
- package/src/integrity/integrity.validate.js +56 -0
- package/src/lineage/lineage.candidateResolution.js +46 -0
- package/src/lineage/lineage.githubIssueComment.js +106 -0
- package/src/lineage/lineage.githubIssueLocal.js +196 -0
- package/src/lineage/lineage.githubIssueTarget.js +89 -0
- package/src/lineage/lineage.integrity.js +133 -0
- package/src/lineage/lineage.materialPreference.js +26 -0
- package/src/lineage/lineage.model.js +63 -0
- package/src/lineage/lineage.parentAuthority.js +5 -0
- package/src/lineage/lineage.parentBinding.js +104 -0
- package/src/lineage/lineage.pathBasis.js +47 -0
- package/src/lineage/lineage.resolve.js +388 -0
- package/src/lineage/lineage.sourceScope.js +74 -0
- package/src/lineage/lineage.targetKeys.js +80 -0
- package/src/lineage/lineage.traverse.js +132 -0
- package/src/public/applicationProjection.js +236 -0
- package/src/public/companionResources.js +246 -0
- package/src/public/index.js +16 -0
- package/src/public/node.js +2 -0
- package/src/public/schemaAncestry.js +26 -0
- package/src/publication/publication.contract.js +196 -0
- package/src/publication/publication.preflight.js +159 -0
- package/src/publication/publication.targetContract.js +241 -0
- package/src/reingest/reingest.plan.js +162 -0
- package/src/release/plan.mjs +28 -0
- package/src/release/policy.mjs +100 -0
- package/src/release/run.mjs +74 -0
- package/src/schemas/capability.registry.js +226 -0
- package/src/schemas/companion.js +245 -0
- package/src/schemas/contracts.js +6 -0
- package/src/schemas/coordination/handoff/tiinex.handoff.v1.schema.js +14 -0
- package/src/schemas/coordination/handoff/tiinex.handoff.v1.schema.json +23 -0
- package/src/schemas/coordination/handoff/tiinex.handoff.v1.schema.runtime.json +4283 -0
- package/src/schemas/coordination/handoff/tiinex.handoff.v1.schema.source.js +9 -0
- package/src/schemas/coordination/project/tiinex.project.v1.schema.js +26 -0
- package/src/schemas/coordination/project/tiinex.project.v1.schema.json +23 -0
- package/src/schemas/coordination/project/tiinex.project.v1.schema.runtime.json +1985 -0
- package/src/schemas/coordination/project/tiinex.project.v1.schema.source.js +9 -0
- package/src/schemas/core/decision/tiinex.decision.v1.schema.js +14 -0
- package/src/schemas/core/decision/tiinex.decision.v1.schema.json +24 -0
- package/src/schemas/core/decision/tiinex.decision.v1.schema.runtime.json +1700 -0
- package/src/schemas/core/decision/tiinex.decision.v1.schema.source.js +9 -0
- package/src/schemas/core/evidence/tiinex.evidence.v1.capabilities.js +14 -0
- package/src/schemas/core/evidence/tiinex.evidence.v1.en.i18n.json +6 -0
- package/src/schemas/core/evidence/tiinex.evidence.v1.findings.js +9 -0
- package/src/schemas/core/evidence/tiinex.evidence.v1.presenter.js +1 -0
- package/src/schemas/core/evidence/tiinex.evidence.v1.schema.js +32 -0
- package/src/schemas/core/evidence/tiinex.evidence.v1.schema.json +24 -0
- package/src/schemas/core/evidence/tiinex.evidence.v1.schema.runtime.json +2184 -0
- package/src/schemas/core/evidence/tiinex.evidence.v1.schema.source.js +9 -0
- package/src/schemas/core/evidence/tiinex.evidence.v1.sv.i18n.json +6 -0
- package/src/schemas/core/evidence/tiinex.evidence.v1.transitions.js +1 -0
- package/src/schemas/core/evidence/tiinex.evidence.v1.validate.js +10 -0
- package/src/schemas/core/feedback/tiinex.feedback.v1.schema.js +14 -0
- package/src/schemas/core/feedback/tiinex.feedback.v1.schema.json +23 -0
- package/src/schemas/core/feedback/tiinex.feedback.v1.schema.runtime.json +1773 -0
- package/src/schemas/core/feedback/tiinex.feedback.v1.schema.source.js +9 -0
- package/src/schemas/core/interpretation/tiinex.interpretation.v1.capabilities.js +11 -0
- package/src/schemas/core/interpretation/tiinex.interpretation.v1.contract.js +40 -0
- package/src/schemas/core/interpretation/tiinex.interpretation.v1.en.i18n.json +9 -0
- package/src/schemas/core/interpretation/tiinex.interpretation.v1.findings.js +12 -0
- package/src/schemas/core/interpretation/tiinex.interpretation.v1.localMaterialization.js +89 -0
- package/src/schemas/core/interpretation/tiinex.interpretation.v1.presenter.js +8 -0
- package/src/schemas/core/interpretation/tiinex.interpretation.v1.schema.js +34 -0
- package/src/schemas/core/interpretation/tiinex.interpretation.v1.schema.json +23 -0
- package/src/schemas/core/interpretation/tiinex.interpretation.v1.schema.runtime.json +2029 -0
- package/src/schemas/core/interpretation/tiinex.interpretation.v1.schema.source.js +9 -0
- package/src/schemas/core/interpretation/tiinex.interpretation.v1.sv.i18n.json +9 -0
- package/src/schemas/core/interpretation/tiinex.interpretation.v1.transitions.js +1 -0
- package/src/schemas/core/interpretation/tiinex.interpretation.v1.validate.js +25 -0
- package/src/schemas/core/preservation/tiinex.preservation.v1.capabilities.js +14 -0
- package/src/schemas/core/preservation/tiinex.preservation.v1.en.i18n.json +6 -0
- package/src/schemas/core/preservation/tiinex.preservation.v1.findings.js +9 -0
- package/src/schemas/core/preservation/tiinex.preservation.v1.presenter.js +1 -0
- package/src/schemas/core/preservation/tiinex.preservation.v1.schema.js +31 -0
- package/src/schemas/core/preservation/tiinex.preservation.v1.schema.json +23 -0
- package/src/schemas/core/preservation/tiinex.preservation.v1.schema.runtime.json +2033 -0
- package/src/schemas/core/preservation/tiinex.preservation.v1.schema.source.js +9 -0
- package/src/schemas/core/preservation/tiinex.preservation.v1.sv.i18n.json +6 -0
- package/src/schemas/core/preservation/tiinex.preservation.v1.transitions.js +1 -0
- package/src/schemas/core/preservation/tiinex.preservation.v1.validate.js +10 -0
- package/src/schemas/core/relation/tiinex.relation.v1.capabilities.js +7 -0
- package/src/schemas/core/relation/tiinex.relation.v1.contract.js +3 -0
- package/src/schemas/core/relation/tiinex.relation.v1.en.i18n.json +4 -0
- package/src/schemas/core/relation/tiinex.relation.v1.findings.js +9 -0
- package/src/schemas/core/relation/tiinex.relation.v1.localMaterialization.js +153 -0
- package/src/schemas/core/relation/tiinex.relation.v1.presenter.js +3 -0
- package/src/schemas/core/relation/tiinex.relation.v1.schema.js +20 -0
- package/src/schemas/core/relation/tiinex.relation.v1.schema.json +23 -0
- package/src/schemas/core/relation/tiinex.relation.v1.schema.runtime.json +1668 -0
- package/src/schemas/core/relation/tiinex.relation.v1.schema.source.js +9 -0
- package/src/schemas/core/relation/tiinex.relation.v1.sv.i18n.json +4 -0
- package/src/schemas/core/relation/tiinex.relation.v1.transitions.js +1 -0
- package/src/schemas/core/relation/tiinex.relation.v1.validate.js +36 -0
- package/src/schemas/core/relation/workspace/representation/tiinex.workspace.representation.v1.capabilities.js +14 -0
- package/src/schemas/core/relation/workspace/representation/tiinex.workspace.representation.v1.contract.js +57 -0
- package/src/schemas/core/relation/workspace/representation/tiinex.workspace.representation.v1.en.i18n.json +4 -0
- package/src/schemas/core/relation/workspace/representation/tiinex.workspace.representation.v1.findings.js +13 -0
- package/src/schemas/core/relation/workspace/representation/tiinex.workspace.representation.v1.presenter.js +3 -0
- package/src/schemas/core/relation/workspace/representation/tiinex.workspace.representation.v1.schema.js +20 -0
- package/src/schemas/core/relation/workspace/representation/tiinex.workspace.representation.v1.schema.json +24 -0
- package/src/schemas/core/relation/workspace/representation/tiinex.workspace.representation.v1.schema.runtime.json +3315 -0
- package/src/schemas/core/relation/workspace/representation/tiinex.workspace.representation.v1.schema.source.js +9 -0
- package/src/schemas/core/relation/workspace/representation/tiinex.workspace.representation.v1.sv.i18n.json +4 -0
- package/src/schemas/core/relation/workspace/representation/tiinex.workspace.representation.v1.transitions.js +1 -0
- package/src/schemas/core/relation/workspace/representation/tiinex.workspace.representation.v1.validate.js +78 -0
- package/src/schemas/core/signal/tiinex.signal.v1.schema.js +14 -0
- package/src/schemas/core/signal/tiinex.signal.v1.schema.json +23 -0
- package/src/schemas/core/signal/tiinex.signal.v1.schema.runtime.json +1733 -0
- package/src/schemas/core/signal/tiinex.signal.v1.schema.source.js +9 -0
- package/src/schemas/core/task/tiinex.task.v1.capabilities.js +11 -0
- package/src/schemas/core/task/tiinex.task.v1.contract.js +3 -0
- package/src/schemas/core/task/tiinex.task.v1.en.i18n.json +15 -0
- package/src/schemas/core/task/tiinex.task.v1.findings.js +18 -0
- package/src/schemas/core/task/tiinex.task.v1.localMaterialization.js +148 -0
- package/src/schemas/core/task/tiinex.task.v1.presenter.js +8 -0
- package/src/schemas/core/task/tiinex.task.v1.schema.js +35 -0
- package/src/schemas/core/task/tiinex.task.v1.schema.json +23 -0
- package/src/schemas/core/task/tiinex.task.v1.schema.runtime.json +1708 -0
- package/src/schemas/core/task/tiinex.task.v1.schema.source.js +9 -0
- package/src/schemas/core/task/tiinex.task.v1.sv.i18n.json +15 -0
- package/src/schemas/core/task/tiinex.task.v1.transitions.js +3 -0
- package/src/schemas/core/task/tiinex.task.v1.validate.js +41 -0
- package/src/schemas/core/topic/tiinex.topic.v1.capabilities.js +14 -0
- package/src/schemas/core/topic/tiinex.topic.v1.creation.js +46 -0
- package/src/schemas/core/topic/tiinex.topic.v1.en.i18n.json +8 -0
- package/src/schemas/core/topic/tiinex.topic.v1.findings.js +11 -0
- package/src/schemas/core/topic/tiinex.topic.v1.localMaterialization.js +135 -0
- package/src/schemas/core/topic/tiinex.topic.v1.presenter.js +1 -0
- package/src/schemas/core/topic/tiinex.topic.v1.schema.js +34 -0
- package/src/schemas/core/topic/tiinex.topic.v1.schema.json +23 -0
- package/src/schemas/core/topic/tiinex.topic.v1.schema.runtime.json +1699 -0
- package/src/schemas/core/topic/tiinex.topic.v1.schema.source.js +9 -0
- package/src/schemas/core/topic/tiinex.topic.v1.sv.i18n.json +8 -0
- package/src/schemas/core/topic/tiinex.topic.v1.transitions.js +31 -0
- package/src/schemas/core/topic/tiinex.topic.v1.validate.js +11 -0
- package/src/schemas/creation.capability.js +289 -0
- package/src/schemas/creation.contracts.js +334 -0
- package/src/schemas/creation.executionSnapshot.js +79 -0
- package/src/schemas/creation.factoryQualification.js +73 -0
- package/src/schemas/creation.renderer.js +244 -0
- package/src/schemas/creation.representation.js +279 -0
- package/src/schemas/creation.rootMetadata.js +6 -0
- package/src/schemas/creation.schemaReferences.js +65 -0
- package/src/schemas/discovery/finding/tiinex.discovery.finding.v1.schema.js +14 -0
- package/src/schemas/discovery/finding/tiinex.discovery.finding.v1.schema.json +23 -0
- package/src/schemas/discovery/finding/tiinex.discovery.finding.v1.schema.runtime.json +1873 -0
- package/src/schemas/discovery/finding/tiinex.discovery.finding.v1.schema.source.js +9 -0
- package/src/schemas/discovery/tiinex.discovery.v1.schema.js +14 -0
- package/src/schemas/discovery/tiinex.discovery.v1.schema.json +23 -0
- package/src/schemas/discovery/tiinex.discovery.v1.schema.runtime.json +1839 -0
- package/src/schemas/discovery/tiinex.discovery.v1.schema.source.js +9 -0
- package/src/schemas/generic.artifact.module.js +25 -0
- package/src/schemas/party/organization/tiinex.party.organization.v1.schema.js +26 -0
- package/src/schemas/party/organization/tiinex.party.organization.v1.schema.json +23 -0
- package/src/schemas/party/organization/tiinex.party.organization.v1.schema.runtime.json +2249 -0
- package/src/schemas/party/organization/tiinex.party.organization.v1.schema.source.js +9 -0
- package/src/schemas/party/role/tiinex.party.role.v1.schema.js +26 -0
- package/src/schemas/party/role/tiinex.party.role.v1.schema.json +24 -0
- package/src/schemas/party/role/tiinex.party.role.v1.schema.runtime.json +2091 -0
- package/src/schemas/party/role/tiinex.party.role.v1.schema.source.js +9 -0
- package/src/schemas/presentation/surface/tiinex.presentation.surface.v1.capabilities.js +14 -0
- package/src/schemas/presentation/surface/tiinex.presentation.surface.v1.en.i18n.json +4 -0
- package/src/schemas/presentation/surface/tiinex.presentation.surface.v1.findings.js +1 -0
- package/src/schemas/presentation/surface/tiinex.presentation.surface.v1.presenter.js +1 -0
- package/src/schemas/presentation/surface/tiinex.presentation.surface.v1.schema.js +29 -0
- package/src/schemas/presentation/surface/tiinex.presentation.surface.v1.schema.json +21 -0
- package/src/schemas/presentation/surface/tiinex.presentation.surface.v1.schema.runtime.json +2180 -0
- package/src/schemas/presentation/surface/tiinex.presentation.surface.v1.schema.source.js +9 -0
- package/src/schemas/presentation/surface/tiinex.presentation.surface.v1.sv.i18n.json +4 -0
- package/src/schemas/presentation/surface/tiinex.presentation.surface.v1.transitions.js +1 -0
- package/src/schemas/presentation/surface/tiinex.presentation.surface.v1.validate.js +1 -0
- package/src/schemas/reduction/tiinex.reduction.v1.schema.js +26 -0
- package/src/schemas/reduction/tiinex.reduction.v1.schema.json +23 -0
- package/src/schemas/reduction/tiinex.reduction.v1.schema.runtime.json +1733 -0
- package/src/schemas/reduction/tiinex.reduction.v1.schema.source.js +9 -0
- package/src/schemas/reference.shapes.js +33 -0
- package/src/schemas/registry.js +36 -0
- package/src/schemas/resolver.js +13 -0
- package/src/schemas/schema/module/tiinex.schema.module.v1.capabilities.js +14 -0
- package/src/schemas/schema/module/tiinex.schema.module.v1.en.i18n.json +4 -0
- package/src/schemas/schema/module/tiinex.schema.module.v1.findings.js +1 -0
- package/src/schemas/schema/module/tiinex.schema.module.v1.presenter.js +1 -0
- package/src/schemas/schema/module/tiinex.schema.module.v1.schema.js +29 -0
- package/src/schemas/schema/module/tiinex.schema.module.v1.schema.json +21 -0
- package/src/schemas/schema/module/tiinex.schema.module.v1.schema.runtime.json +2093 -0
- package/src/schemas/schema/module/tiinex.schema.module.v1.schema.source.js +9 -0
- package/src/schemas/schema/module/tiinex.schema.module.v1.sv.i18n.json +4 -0
- package/src/schemas/schema/module/tiinex.schema.module.v1.transitions.js +1 -0
- package/src/schemas/schema/module/tiinex.schema.module.v1.validate.js +1 -0
- package/src/schemas/schema.factory.descriptor.js +104 -0
- package/src/schemas/schema.githubSourceTarget.js +131 -0
- package/src/schemas/schema.identity.js +10 -0
- package/src/schemas/schema.reference.js +133 -0
- package/src/schemas/schema.source.js +239 -0
- package/src/schemas/tiinex.root.v1.capabilities.js +14 -0
- package/src/schemas/tiinex.root.v1.classify.js +55 -0
- package/src/schemas/tiinex.root.v1.en.i18n.json +24 -0
- package/src/schemas/tiinex.root.v1.fallback.js +84 -0
- package/src/schemas/tiinex.root.v1.findings.js +19 -0
- package/src/schemas/tiinex.root.v1.presenter.js +5 -0
- package/src/schemas/tiinex.root.v1.schema.js +29 -0
- package/src/schemas/tiinex.root.v1.schema.json +24 -0
- package/src/schemas/tiinex.root.v1.schema.runtime.json +1574 -0
- package/src/schemas/tiinex.root.v1.schema.source.js +9 -0
- package/src/schemas/tiinex.root.v1.sv.i18n.json +24 -0
- package/src/schemas/tiinex.root.v1.transitions.js +1 -0
- package/src/schemas/tiinex.root.v1.validate.js +36 -0
- package/src/schemas/validation/finding/tiinex.validation.finding.v1.schema.js +14 -0
- package/src/schemas/validation/finding/tiinex.validation.finding.v1.schema.json +23 -0
- package/src/schemas/validation/finding/tiinex.validation.finding.v1.schema.runtime.json +2027 -0
- package/src/schemas/validation/finding/tiinex.validation.finding.v1.schema.source.js +9 -0
- package/src/schemas/validation/method/tiinex.validation.method.v1.schema.js +14 -0
- package/src/schemas/validation/method/tiinex.validation.method.v1.schema.json +23 -0
- package/src/schemas/validation/method/tiinex.validation.method.v1.schema.runtime.json +1848 -0
- package/src/schemas/validation/method/tiinex.validation.method.v1.schema.source.js +9 -0
- package/src/schemas/validation/report/tiinex.validation.report.v1.schema.js +14 -0
- package/src/schemas/validation/report/tiinex.validation.report.v1.schema.json +23 -0
- package/src/schemas/validation/report/tiinex.validation.report.v1.schema.runtime.json +2015 -0
- package/src/schemas/validation/report/tiinex.validation.report.v1.schema.source.js +9 -0
- package/src/schemas/workspace/tiinex.workspace.v1.capabilities.js +12 -0
- package/src/schemas/workspace/tiinex.workspace.v1.en.i18n.json +7 -0
- package/src/schemas/workspace/tiinex.workspace.v1.findings.js +5 -0
- package/src/schemas/workspace/tiinex.workspace.v1.presenter.js +27 -0
- package/src/schemas/workspace/tiinex.workspace.v1.schema.js +30 -0
- package/src/schemas/workspace/tiinex.workspace.v1.schema.json +23 -0
- package/src/schemas/workspace/tiinex.workspace.v1.schema.runtime.json +1596 -0
- package/src/schemas/workspace/tiinex.workspace.v1.schema.source.js +9 -0
- package/src/schemas/workspace/tiinex.workspace.v1.sv.i18n.json +7 -0
- package/src/schemas/workspace/tiinex.workspace.v1.transitions.js +10 -0
- package/src/schemas/workspace/tiinex.workspace.v1.validate.js +10 -0
- package/src/sources/github/github.issueTarget.js +127 -0
- package/src/sources/origin.references.js +249 -0
- package/src/sources/source.explicitTargets.js +49 -0
- package/src/sources/transport.levels.js +107 -0
- package/src/tooling/portable/adapters/cli/cli.cold-start-input.js +34 -0
- package/src/tooling/portable/adapters/cli/cli.command-input.js +455 -0
- package/src/tooling/portable/adapters/cli/cli.common-author.js +249 -0
- package/src/tooling/portable/adapters/cli/cli.common-output.js +330 -0
- package/src/tooling/portable/adapters/cli/cli.editor-assistance.js +13 -0
- package/src/tooling/portable/adapters/cli/cli.ground-materialize.js +96 -0
- package/src/tooling/portable/adapters/cli/cli.ground-recovery.js +99 -0
- package/src/tooling/portable/adapters/cli/cli.handoff-manufacture.js +345 -0
- package/src/tooling/portable/adapters/cli/cli.handoff-sibling-allocation.js +31 -0
- package/src/tooling/portable/adapters/cli/cli.help.js +80 -0
- package/src/tooling/portable/adapters/cli/cli.land.js +13 -0
- package/src/tooling/portable/adapters/cli/cli.local-output.js +72 -0
- package/src/tooling/portable/adapters/cli/cli.material-policy.js +6 -0
- package/src/tooling/portable/adapters/cli/cli.operator-bridge.js +18 -0
- package/src/tooling/portable/adapters/cli/cli.reduction-input.js +14 -0
- package/src/tooling/portable/adapters/cli/cli.run.js +434 -0
- package/src/tooling/portable/adapters/llm/llm.entrypoint.js +34 -0
- package/src/tooling/portable/adapters/node/checkpoint.verify.js +267 -0
- package/src/tooling/portable/adapters/node/handoff.manufacture.bootstrap.js +109 -0
- package/src/tooling/portable/adapters/node/handoff.manufacture.enumeration.js +94 -0
- package/src/tooling/portable/adapters/node/handoff.manufacture.js +193 -0
- package/src/tooling/portable/adapters/node/handoff.manufacture.multiRoot.js +49 -0
- package/src/tooling/portable/adapters/node/handoff.manufacture.packageParent.js +130 -0
- package/src/tooling/portable/adapters/node/handoff.manufacture.requirements.js +353 -0
- package/src/tooling/portable/adapters/node/handoff.manufacture.scope.js +147 -0
- package/src/tooling/portable/adapters/node/workspaceCarrier.manufacture.js +62 -0
- package/src/tooling/portable/assets/asset.operations.js +170 -0
- package/src/tooling/portable/audit/audit.capability.js +119 -0
- package/src/tooling/portable/bootstrap/artifact.result.selfverify.mjs +109 -0
- package/src/tooling/portable/bootstrap/bootstrap.case.mjs +43 -0
- package/src/tooling/portable/bootstrap/tiinex.llm.bootstrap.md +814 -0
- package/src/tooling/portable/bootstrap/tiinex.llm.bootstrap.pointer.json +25 -0
- package/src/tooling/portable/checkpoint/portable.checkpoint.js +89 -0
- package/src/tooling/portable/conformance/checkpoint.qualification.js +271 -0
- package/src/tooling/portable/draft/draft.create.js +389 -0
- package/src/tooling/portable/draft/draft.crud.js +175 -0
- package/src/tooling/portable/draft/draft.exact.js +173 -0
- package/src/tooling/portable/draft/draft.operations.js +265 -0
- package/src/tooling/portable/draft/draft.qualification.js +45 -0
- package/src/tooling/portable/draft/draft.set.js +193 -0
- package/src/tooling/portable/draft/draft.validation-context.js +7 -0
- package/src/tooling/portable/editor/authoring.parent.js +37 -0
- package/src/tooling/portable/editor/editor.assistance.js +221 -0
- package/src/tooling/portable/editor/staged.validation.js +96 -0
- package/src/tooling/portable/engine.facade.js +468 -0
- package/src/tooling/portable/findings.js +92 -0
- package/src/tooling/portable/grounding/grounding.capsule.js +128 -0
- package/src/tooling/portable/grounding/grounding.continuity.js +283 -0
- package/src/tooling/portable/grounding/grounding.participantAuthority.js +20 -0
- package/src/tooling/portable/grounding/grounding.planningContext.js +34 -0
- package/src/tooling/portable/grounding/grounding.readiness.authority.js +17 -0
- package/src/tooling/portable/grounding/grounding.readiness.js +316 -0
- package/src/tooling/portable/grounding/grounding.readiness.support.js +245 -0
- package/src/tooling/portable/grounding/grounding.sourceEvidence.js +71 -0
- package/src/tooling/portable/grounding/grounding.workContext.js +72 -0
- package/src/tooling/portable/grounding/grounding.workProvenance.js +153 -0
- package/src/tooling/portable/handoff/carrierLineage.js +214 -0
- package/src/tooling/portable/handoff/carrierProfile.js +54 -0
- package/src/tooling/portable/handoff/carrierProjection.js +193 -0
- package/src/tooling/portable/handoff/carrierProjection.routeQualification.js +228 -0
- package/src/tooling/portable/handoff/carrierProjection.shared.js +7 -0
- package/src/tooling/portable/handoff/carrierProjection.workspaces.js +54 -0
- package/src/tooling/portable/handoff/coldConsumerEntrypoint.js +185 -0
- package/src/tooling/portable/handoff/coldStartQualification.contract.js +184 -0
- package/src/tooling/portable/handoff/coldStartQualification.grounding.js +392 -0
- package/src/tooling/portable/handoff/coldStartQualification.js +22 -0
- package/src/tooling/portable/handoff/coldStartQualification.materials.js +364 -0
- package/src/tooling/portable/handoff/coldStartQualification.observation.js +220 -0
- package/src/tooling/portable/handoff/coldStartQualification.run.js +81 -0
- package/src/tooling/portable/handoff/coldStartQualification.shared.js +57 -0
- package/src/tooling/portable/handoff/coldStartRolePointers.js +39 -0
- package/src/tooling/portable/handoff/contextAudit.js +247 -0
- package/src/tooling/portable/handoff/contracts/tiinex.handoff.package.v1.schema.md +409 -0
- package/src/tooling/portable/handoff/handoffAuthoringPlan.js +35 -0
- package/src/tooling/portable/handoff/handoffEndpointProjection.js +61 -0
- package/src/tooling/portable/handoff/handoffLeafProjection.js +91 -0
- package/src/tooling/portable/handoff/humanOutputPresentation.js +21 -0
- package/src/tooling/portable/handoff/manufacture.js +84 -0
- package/src/tooling/portable/handoff/materialClosure.archiveV2.binding.js +72 -0
- package/src/tooling/portable/handoff/materialClosure.archiveV2.direct.js +160 -0
- package/src/tooling/portable/handoff/materialClosure.archiveV2.indexes.js +36 -0
- package/src/tooling/portable/handoff/materialClosure.archiveV2.js +247 -0
- package/src/tooling/portable/handoff/materialClosure.archiveV2.projectionProvider.js +44 -0
- package/src/tooling/portable/handoff/materialClosure.archiveV2.workspace.js +226 -0
- package/src/tooling/portable/handoff/materialClosure.descriptor.js +169 -0
- package/src/tooling/portable/handoff/materialClosure.inputBinding.js +372 -0
- package/src/tooling/portable/handoff/materialClosure.inputBinding.support.js +62 -0
- package/src/tooling/portable/handoff/materialClosure.materialized.js +143 -0
- package/src/tooling/portable/handoff/materialClosure.materials.js +116 -0
- package/src/tooling/portable/handoff/materialClosure.package.js +181 -0
- package/src/tooling/portable/handoff/materialClosure.plan.js +204 -0
- package/src/tooling/portable/handoff/materialClosure.readiness.js +36 -0
- package/src/tooling/portable/handoff/materialClosure.requirements.js +137 -0
- package/src/tooling/portable/handoff/operatorContextProjection.js +105 -0
- package/src/tooling/portable/handoff/pointerEntrypoint.js +138 -0
- package/src/tooling/portable/handoff/qualifiedHandoffFixture.js +34 -0
- package/src/tooling/portable/handoff/recipientV2.artifactFirst.build.js +321 -0
- package/src/tooling/portable/handoff/recipientV2.artifactFirst.closure.js +126 -0
- package/src/tooling/portable/handoff/recipientV2.artifactFirst.inspect.js +194 -0
- package/src/tooling/portable/handoff/recipientV2.artifactFirst.materials.js +207 -0
- package/src/tooling/portable/handoff/recipientV2.artifactFirst.projection.js +69 -0
- package/src/tooling/portable/handoff/recipientV2.artifactFirst.roles.js +166 -0
- package/src/tooling/portable/handoff/recipientV2.artifactFirst.routes.js +113 -0
- package/src/tooling/portable/handoff/recipientV2.artifactFirst.shared.js +87 -0
- package/src/tooling/portable/handoff/recipientV2.artifactFirst.workspaces.js +160 -0
- package/src/tooling/portable/handoff/recipientV2.artifactFirstPhase1.js +44 -0
- package/src/tooling/portable/handoff/recipientV2.artifactInspection.js +55 -0
- package/src/tooling/portable/handoff/recipientV2.artifacts.js +174 -0
- package/src/tooling/portable/handoff/recipientV2.coldProjection.js +24 -0
- package/src/tooling/portable/handoff/recipientV2.delivery.js +48 -0
- package/src/tooling/portable/handoff/recipientV2.endpointRolePointers.js +179 -0
- package/src/tooling/portable/handoff/recipientV2.entryContract.js +28 -0
- package/src/tooling/portable/handoff/recipientV2.humanOutput.js +78 -0
- package/src/tooling/portable/handoff/recipientV2.inspect.helpers.js +218 -0
- package/src/tooling/portable/handoff/recipientV2.inspect.js +194 -0
- package/src/tooling/portable/handoff/recipientV2.inspect.pathToken.js +9 -0
- package/src/tooling/portable/handoff/recipientV2.inspect.projection.js +58 -0
- package/src/tooling/portable/handoff/recipientV2.inspect.workspaces.js +177 -0
- package/src/tooling/portable/handoff/recipientV2.lineage.js +142 -0
- package/src/tooling/portable/handoff/recipientV2.packageV1.build.js +147 -0
- package/src/tooling/portable/handoff/recipientV2.packageV1.constants.js +4 -0
- package/src/tooling/portable/handoff/recipientV2.packageV1.contract.js +101 -0
- package/src/tooling/portable/handoff/recipientV2.packageV1.inspect.helpers.js +126 -0
- package/src/tooling/portable/handoff/recipientV2.packageV1.inspect.js +185 -0
- package/src/tooling/portable/handoff/recipientV2.packageV1.js +12 -0
- package/src/tooling/portable/handoff/recipientV2.packageV1.shared.js +24 -0
- package/src/tooling/portable/handoff/recipientV2.packageV1.workspaceProjection.js +22 -0
- package/src/tooling/portable/handoff/recipientV2.pointer.js +40 -0
- package/src/tooling/portable/handoff/recipientV2.routeSelection.js +16 -0
- package/src/tooling/portable/handoff/recipientV2.topology.helpers.js +20 -0
- package/src/tooling/portable/handoff/recipientV2.topology.js +320 -0
- package/src/tooling/portable/handoff/recipientV2.topology.materials.js +70 -0
- package/src/tooling/portable/handoff/recipientV2.topology.workspaces.js +193 -0
- package/src/tooling/portable/handoff/recipientV2.transportManifest.js +123 -0
- package/src/tooling/portable/handoff/recipientV2.workspaceRepresentation.js +163 -0
- package/src/tooling/portable/handoff/routeArtifactConformance.js +130 -0
- package/src/tooling/portable/handoff/toolingBootstrap.js +67 -0
- package/src/tooling/portable/handoff/transportCompanion.js +175 -0
- package/src/tooling/portable/handoff/workspaceByteProvider.archive.js +95 -0
- package/src/tooling/portable/handoff/workspaceByteProvider.js +271 -0
- package/src/tooling/portable/handoff/workspaceCarrier.manufacture.js +93 -0
- package/src/tooling/portable/handoff/workspaceLandingPlan.js +142 -0
- package/src/tooling/portable/handoff/workspacePackageSources.js +105 -0
- package/src/tooling/portable/handoff/workspaceQualifiedReference.js +10 -0
- package/src/tooling/portable/handoff/workspaceSourceIdentity.js +52 -0
- package/src/tooling/portable/handoff/workspaceTargetConformance.js +134 -0
- package/src/tooling/portable/host/host.capabilities.js +181 -0
- package/src/tooling/portable/host/tool.bindings.js +357 -0
- package/src/tooling/portable/host/tool.receiptNormalization.js +141 -0
- package/src/tooling/portable/index.js +52 -0
- package/src/tooling/portable/input/node.input.js +184 -0
- package/src/tooling/portable/input/portable.input.js +249 -0
- package/src/tooling/portable/lifecycle/lifecycle.action.js +11 -0
- package/src/tooling/portable/lifecycle/lifecycle.material.js +173 -0
- package/src/tooling/portable/lifecycle/lifecycle.operations.js +34 -0
- package/src/tooling/portable/lifecycle/lifecycle.readiness.js +247 -0
- package/src/tooling/portable/lineage/lineage.integrity.apply.audit.js +22 -0
- package/src/tooling/portable/lineage/lineage.integrity.apply.evidence.js +36 -0
- package/src/tooling/portable/lineage/lineage.integrity.apply.js +306 -0
- package/src/tooling/portable/lineage/lineage.integrity.apply.structure.js +178 -0
- package/src/tooling/portable/lineage/lineage.integrity.plan.js +377 -0
- package/src/tooling/portable/lineage/lineage.integrity.projection.human.js +82 -0
- package/src/tooling/portable/lineage/lineage.integrity.projection.js +349 -0
- package/src/tooling/portable/lineage/lineage.operations.js +32 -0
- package/src/tooling/portable/lineage/lineage.print.js +398 -0
- package/src/tooling/portable/lineage/lineage.print.render.js +88 -0
- package/src/tooling/portable/lineage/lineage.print.utils.js +58 -0
- package/src/tooling/portable/lineage/lineage.publicationProviderReceipts.js +141 -0
- package/src/tooling/portable/lineage/lineage.publicationQualification.js +183 -0
- package/src/tooling/portable/lineage/lineage.search.js +301 -0
- package/src/tooling/portable/live/live.artifact.js +192 -0
- package/src/tooling/portable/live/live.export.js +107 -0
- package/src/tooling/portable/live/live.lineage.closure.js +71 -0
- package/src/tooling/portable/live/live.lineage.js +338 -0
- package/src/tooling/portable/live/live.protocol.js +181 -0
- package/src/tooling/portable/materialization/durable.materialize.js +162 -0
- package/src/tooling/portable/materialization/epistemic.plan.js +239 -0
- package/src/tooling/portable/materialization/loaded.parent.js +54 -0
- package/src/tooling/portable/materialization/materialization.facade.js +30 -0
- package/src/tooling/portable/operation.catalog.js +393 -0
- package/src/tooling/portable/operation.catalog.package.js +183 -0
- package/src/tooling/portable/operation.result.js +25 -0
- package/src/tooling/portable/orchestration/task.prepare.js +191 -0
- package/src/tooling/portable/output/artifact.result.package.js +308 -0
- package/src/tooling/portable/output/deterministic.zip.js +88 -0
- package/src/tooling/portable/output/node.artifact-set.js +223 -0
- package/src/tooling/portable/output/node.draft.js +41 -0
- package/src/tooling/portable/output/node.zip.js +39 -0
- package/src/tooling/portable/output/recipientV2.zip.js +59 -0
- package/src/tooling/portable/overview/blockingCue.js +16 -0
- package/src/tooling/portable/overview/operatingOverview.js +413 -0
- package/src/tooling/portable/package/generation.binding.js +314 -0
- package/src/tooling/portable/package/generation.binding.projection.js +128 -0
- package/src/tooling/portable/package/material.graph.js +236 -0
- package/src/tooling/portable/package/runtime.package.js +321 -0
- package/src/tooling/portable/package/schema.transition.companion.js +196 -0
- package/src/tooling/portable/package/semantic.package.graph.js +272 -0
- package/src/tooling/portable/package/semantic.package.js +203 -0
- package/src/tooling/portable/package/semantic.package.schema-resolution.js +158 -0
- package/src/tooling/portable/package/semantic.package.transition-registry.js +189 -0
- package/src/tooling/portable/package/semantic.package.types.js +18 -0
- package/src/tooling/portable/providers/schema.bootstrap.provenance.js +10 -0
- package/src/tooling/portable/providers/schema.provider.qualification.js +52 -0
- package/src/tooling/portable/providers/schema.providers.js +458 -0
- package/src/tooling/portable/publication/runtime.publication.js +53 -0
- package/src/tooling/portable/qualification.js +150 -0
- package/src/tooling/portable/reduction/reduction.composition.js +229 -0
- package/src/tooling/portable/reduction/reduction.eligibility.helpers.js +258 -0
- package/src/tooling/portable/reduction/reduction.eligibility.js +191 -0
- package/src/tooling/portable/reduction/reduction.operations.js +30 -0
- package/src/tooling/portable/reduction/reduction.preflight.js +85 -0
- package/src/tooling/portable/reduction/reduction.shared.js +173 -0
- package/src/tooling/portable/schema/bootstrap/canonical.pack.js +24 -0
- package/src/tooling/portable/schema/bootstrap/docs-3988951208eb9a8926e84ab42625d4b42fa00c2d/party/role/tiinex.party.role.v1.schema.md +289 -0
- package/src/tooling/portable/schema/bootstrap/docs-3988951208eb9a8926e84ab42625d4b42fa00c2d/validation/report/tiinex.validation.report.v1.schema.md +300 -0
- package/src/tooling/portable/schema/bootstrap/qualified-local-root/tiinex.root.v1.runtime-projection.json +48 -0
- package/src/tooling/portable/schema/bootstrap/qualified-local-root/tiinex.root.v1.schema.md +865 -0
- package/src/tooling/portable/schema/contract.compile.js +406 -0
- package/src/tooling/portable/schema/contract.compile.utils.js +9 -0
- package/src/tooling/portable/schema/contract.constraints.js +117 -0
- package/src/tooling/portable/schema/contract.envelope.validate.js +177 -0
- package/src/tooling/portable/schema/contract.field-domain.compile.js +399 -0
- package/src/tooling/portable/schema/contract.field-domain.js +247 -0
- package/src/tooling/portable/schema/contract.field-shape.compile.js +34 -0
- package/src/tooling/portable/schema/contract.inheritance.inline.js +103 -0
- package/src/tooling/portable/schema/contract.inheritance.js +210 -0
- package/src/tooling/portable/schema/contract.inheritance.record.js +76 -0
- package/src/tooling/portable/schema/contract.machine-shape.js +309 -0
- package/src/tooling/portable/schema/contract.project.js +81 -0
- package/src/tooling/portable/schema/contract.semantic-resolution.js +82 -0
- package/src/tooling/portable/schema/contract.validate.js +0 -0
- package/src/tooling/portable/schema/lexical.shape.v1.js +338 -0
- package/src/tooling/portable/schema/llm.companion.js +108 -0
- package/src/tooling/portable/schema/named.declarations.js +162 -0
- package/src/tooling/portable/schema/ordinary.contract.js +193 -0
- package/src/tooling/portable/schema/ordinary.fields.js +205 -0
- package/src/tooling/portable/schema/qualifiedLocalRoot.projection.js +70 -0
- package/src/tooling/portable/schema/qualifiedLocalRoot.runtime.js +170 -0
- package/src/tooling/portable/schema/schema.contract.js +465 -0
- package/src/tooling/portable/schema/schema.guide.js +326 -0
- package/src/tooling/portable/schema/schema.snapshot.js +119 -0
- package/src/tooling/portable/session/portable.session.js +145 -0
- package/src/tooling/portable/transfer/transfer.plan.js +102 -0
- package/src/transitions/record.transitions.js +484 -0
- package/src/transitions/transition.validate.js +129 -0
- package/src/validation/findings.js +76 -0
- package/src/validation/validateArtifact.js +216 -0
- package/src/workspaces/workspace.entrypointCapability.js +44 -0
- package/src/workspaces/workspace.materialRole.js +242 -0
- package/src/workspaces/workspace.recordPaths.js +426 -0
- package/tools/tiinex-portable.mjs +6 -0
|
@@ -0,0 +1,393 @@
|
|
|
1
|
+
import {
|
|
2
|
+
auditPortableMaterial,
|
|
3
|
+
createPortableArtifactDraft,
|
|
4
|
+
deletePortableArtifactDraft,
|
|
5
|
+
discoverPortableTooling,
|
|
6
|
+
compilePortableSchemaGuide,
|
|
7
|
+
explainPortableArtifactFindings,
|
|
8
|
+
describePortableSchemaChain,
|
|
9
|
+
inspectPortableAssetIndex,
|
|
10
|
+
inspectPortableCreationContract,
|
|
11
|
+
inspectPortableMaterial,
|
|
12
|
+
planPortableArtifactCreation,
|
|
13
|
+
planPortableArtifactRepairs,
|
|
14
|
+
preparePortableTaskOperation,
|
|
15
|
+
preparePortableAssetAnalysisOperation,
|
|
16
|
+
readPortableSchemaSection,
|
|
17
|
+
listPortableProviders,
|
|
18
|
+
makePortableWriterBrief,
|
|
19
|
+
resolvePortableCapabilities,
|
|
20
|
+
resolvePortableSchemaChainMaterialOperation,
|
|
21
|
+
resolvePortableSchemaMaterialOperation,
|
|
22
|
+
stagePortableArtifactDraft,
|
|
23
|
+
updatePortableArtifactDraft,
|
|
24
|
+
resolvePortableLineage,
|
|
25
|
+
validatePortableArtifactDraft
|
|
26
|
+
} from './engine.facade.js';
|
|
27
|
+
import { portableLineageOperationDescriptors } from './lineage/lineage.operations.js';
|
|
28
|
+
import { portableReductionOperationDescriptors } from './reduction/reduction.operations.js';
|
|
29
|
+
import { portableLifecycleOperationDescriptors } from './lifecycle/lifecycle.operations.js';
|
|
30
|
+
import { createPortableArtifactSet, preparePortableMaterialization } from './materialization/materialization.facade.js';
|
|
31
|
+
import { processPortableLiveTurn, readPortableLiveLineage } from './live/live.lineage.js';
|
|
32
|
+
import { exportPortableLiveLineage } from './live/live.export.js';
|
|
33
|
+
import { summarizePortableFindings } from './findings.js';
|
|
34
|
+
import { materializePortableDurableFindings, planPortableDurableMaterialization } from './materialization/durable.materialize.js';
|
|
35
|
+
import { acceptPortableHostActionReceipt, planPortableHostAction } from './host/tool.bindings.js';
|
|
36
|
+
import { describePortableCheckpointGate, qualifyPortableCheckpoint } from './conformance/checkpoint.qualification.js';
|
|
37
|
+
import { describePortableColdStartIngress, groundPortableColdConsumer, projectPortableColdStartHostGuidance, qualifyPortableColdStart } from './handoff/coldStartQualification.js';
|
|
38
|
+
import { projectPortableOperatingOverview } from './overview/operatingOverview.js';
|
|
39
|
+
import { projectPortableGroundingReadiness } from './grounding/grounding.readiness.js';
|
|
40
|
+
import { createPortablePackageOperationEntries } from './operation.catalog.package.js';
|
|
41
|
+
|
|
42
|
+
export const PORTABLE_OPERATION_CATALOG_SCHEMA_ID = 'tiinex.portable.operation.catalog.v1';
|
|
43
|
+
|
|
44
|
+
export const portableOperationCatalog = Object.freeze({
|
|
45
|
+
'prepare-task': operation({
|
|
46
|
+
name: 'prepare-task',
|
|
47
|
+
description: 'Orchestrate host discovery, schema/provider resolution, schema guides, artifact planning, draft validation, lineage search, or asset analysis into one explicit next-action response.',
|
|
48
|
+
safety: 'planning-or-read-only',
|
|
49
|
+
inputSchema: 'tiinex.portable.task-preparation.request.v1',
|
|
50
|
+
remoteFetch: 'host-mediated-optional',
|
|
51
|
+
handler: preparePortableTaskOperation
|
|
52
|
+
}),
|
|
53
|
+
'discover-tooling': operation({
|
|
54
|
+
name: 'discover-tooling',
|
|
55
|
+
description: 'Normalize host tools into capability-level routes so an LLM can choose equivalent filesystem, archive, repository, execution, and multimodal tooling without depending on product-specific names.',
|
|
56
|
+
safety: 'read-only',
|
|
57
|
+
inputSchema: 'tiinex.portable.tooling-discovery.request.v1',
|
|
58
|
+
handler: discoverPortableTooling
|
|
59
|
+
}),
|
|
60
|
+
'describe-cold-start-ingress': operation({
|
|
61
|
+
name: 'describe-cold-start-ingress',
|
|
62
|
+
description: 'Describe the portable Tiinex-first cold-start ingress contract, measurable preferred-path evidence, minimal host bootstrap allowance, and explicit degraded fallback boundary.',
|
|
63
|
+
safety: 'read-only',
|
|
64
|
+
inputSchema: 'tiinex.portable.cold-start-ingress.request.v1',
|
|
65
|
+
handler: (input = {}) => wrapPortableResult('describe-cold-start-ingress', describePortableColdStartIngress(input))
|
|
66
|
+
}),
|
|
67
|
+
'project-cold-start-host': operation({
|
|
68
|
+
name: 'project-cold-start-host',
|
|
69
|
+
description: 'Project non-authoritative host/bootstrap guidance from the portable cold-start ingress contract and current provider-neutral host/session capability bindings.',
|
|
70
|
+
safety: 'read-only',
|
|
71
|
+
inputSchema: 'tiinex.portable.cold-start-host-projection.request.v1',
|
|
72
|
+
handler: (input = {}, options = {}) => wrapPortableResult('project-cold-start-host', projectPortableColdStartHostGuidance(input, options))
|
|
73
|
+
}),
|
|
74
|
+
'ground-cold-consumer': operation({
|
|
75
|
+
name: 'ground-cold-consumer',
|
|
76
|
+
description: 'Ground the selected Handoff recipient Role boundary, participants/contributions, interaction purpose/mode, and provider/host/session capabilities without inferring transport identity or provider authority.',
|
|
77
|
+
safety: 'read-only',
|
|
78
|
+
inputSchema: 'tiinex.portable.cold-consumer-grounding.request.v1',
|
|
79
|
+
handler: (input = {}, options = {}) => wrapPortableResult('ground-cold-consumer', groundPortableColdConsumer(input, options))
|
|
80
|
+
}),
|
|
81
|
+
'project-grounding-readiness': operation({
|
|
82
|
+
name: 'project-grounding-readiness',
|
|
83
|
+
description: 'Compose bounded Handoff authority, exact declared Parent-lineage leaf topology, current-work signals, blockers, and unresolved evidence into fail-visible readiness for the next action.',
|
|
84
|
+
safety: 'read-only',
|
|
85
|
+
inputSchema: 'tiinex.portable.grounding-readiness.request.v1',
|
|
86
|
+
handler: (input = {}, options = {}) => wrapPortableResult('project-grounding-readiness', projectPortableGroundingReadiness(input, options))
|
|
87
|
+
}),
|
|
88
|
+
'qualify-cold-start': operation({
|
|
89
|
+
name: 'qualify-cold-start',
|
|
90
|
+
description: 'Qualify cold-start behavior from either an explicit observation trace or a Handoff package + route one-shot run that generates Tooling orientation/grounding receipts while keeping pre-takeover host evidence explicitly attributed.',
|
|
91
|
+
safety: 'read-only-normalization',
|
|
92
|
+
inputSchema: 'tiinex.portable.cold-start-qualification.request.v1',
|
|
93
|
+
handler: (input = {}, options = {}) => wrapPortableResult('qualify-cold-start', qualifyPortableColdStart(input, options))
|
|
94
|
+
}),
|
|
95
|
+
'plan-host-action': operation({
|
|
96
|
+
name: 'plan-host-action',
|
|
97
|
+
description: 'Bind a capability-level request to concrete host tools, ranked alternatives, argument templates, and an explicit receipt contract without invoking the host.',
|
|
98
|
+
safety: 'planning-only',
|
|
99
|
+
inputSchema: 'tiinex.portable.host-action-plan.request.v1',
|
|
100
|
+
remoteFetch: 'host-mediated-optional',
|
|
101
|
+
handler: (input = {}, options = {}) => wrapPortableResult('plan-host-action', planPortableHostAction(input, options))
|
|
102
|
+
}),
|
|
103
|
+
'accept-host-receipt': operation({
|
|
104
|
+
name: 'accept-host-receipt',
|
|
105
|
+
description: 'Validate an explicit host-tool receipt and normalize repository material, local material, or generated multimodal interpretations without treating raw tool output as provenance.',
|
|
106
|
+
safety: 'read-only-normalization',
|
|
107
|
+
inputSchema: 'tiinex.portable.host-action-receipt.accept.request.v1',
|
|
108
|
+
handler: (input = {}, options = {}) => wrapPortableResult('accept-host-receipt', acceptPortableHostActionReceipt(input, options))
|
|
109
|
+
}),
|
|
110
|
+
'describe-checkpoint-gate': operation({
|
|
111
|
+
name: 'describe-checkpoint-gate',
|
|
112
|
+
description: 'Describe fixed portable, source-clean, or release checkpoint gates without executing commands or claiming browser parity.',
|
|
113
|
+
safety: 'planning-only',
|
|
114
|
+
inputSchema: 'tiinex.portable.checkpoint-gate.request.v1',
|
|
115
|
+
handler: (input = {}) => wrapPortableResult('describe-checkpoint-gate', describePortableCheckpointGate(input))
|
|
116
|
+
}),
|
|
117
|
+
'qualify-checkpoint': operation({
|
|
118
|
+
name: 'qualify-checkpoint',
|
|
119
|
+
description: 'Qualify explicit validation receipts, portable source identity, checkpoint continuity, reproducibility metadata, and private-evidence boundaries without executing commands.',
|
|
120
|
+
safety: 'read-only-normalization',
|
|
121
|
+
inputSchema: 'tiinex.portable.checkpoint-qualification.request.v1',
|
|
122
|
+
handler: (input = {}) => wrapPortableResult('qualify-checkpoint', qualifyPortableCheckpoint(input))
|
|
123
|
+
}),
|
|
124
|
+
'list-material-providers': operation({
|
|
125
|
+
name: 'list-material-providers',
|
|
126
|
+
description: 'List loaded, cache, local, archive, repository, HTTP, and executable host provider options with explicit boundaries.',
|
|
127
|
+
safety: 'read-only',
|
|
128
|
+
inputSchema: 'tiinex.portable.provider-catalog.request.v1',
|
|
129
|
+
handler: listPortableProviders
|
|
130
|
+
}),
|
|
131
|
+
'resolve-schema-material': operation({
|
|
132
|
+
name: 'resolve-schema-material',
|
|
133
|
+
description: 'Resolve exact readable schema material from loaded data, explicit cache, host responses, or executable providers; otherwise return a self-describing host provider request.',
|
|
134
|
+
safety: 'read-only-or-host-mediated-fetch',
|
|
135
|
+
inputSchema: 'tiinex.portable.schema-material.request.v1',
|
|
136
|
+
remoteFetch: 'host-mediated-optional',
|
|
137
|
+
handler: resolvePortableSchemaMaterialOperation
|
|
138
|
+
}),
|
|
139
|
+
'resolve-schema-chain-material': operation({
|
|
140
|
+
name: 'resolve-schema-chain-material',
|
|
141
|
+
description: 'Resolve readable child and parent schema material to Root through explicit providers without inventing missing schema meaning.',
|
|
142
|
+
safety: 'read-only-or-host-mediated-fetch',
|
|
143
|
+
inputSchema: 'tiinex.portable.schema-chain-material.request.v1',
|
|
144
|
+
remoteFetch: 'host-mediated-optional',
|
|
145
|
+
handler: resolvePortableSchemaChainMaterialOperation
|
|
146
|
+
}),
|
|
147
|
+
inspect: operation({
|
|
148
|
+
name: 'inspect',
|
|
149
|
+
description: 'Parse supplied material and return compact artifact, schema companion, source-boundary, and qualification views.',
|
|
150
|
+
safety: 'read-only',
|
|
151
|
+
inputSchema: 'tiinex.portable.input.v1',
|
|
152
|
+
handler: inspectPortableMaterial
|
|
153
|
+
}),
|
|
154
|
+
audit: operation({
|
|
155
|
+
name: 'audit',
|
|
156
|
+
description: 'Run the existing Tiinex/site audit engine against supplied loaded material.',
|
|
157
|
+
safety: 'read-only',
|
|
158
|
+
inputSchema: 'tiinex.portable.input.v1',
|
|
159
|
+
handler: auditPortableMaterial
|
|
160
|
+
}),
|
|
161
|
+
'project-operating-overview': operation({
|
|
162
|
+
name: 'project-operating-overview',
|
|
163
|
+
description: 'Project loaded Project inventory, exact-qualified Task frontier candidates, explicit blocker/resource signals, and deferred Monitoring/cross-repository capability boundaries without creating overview semantic authority.',
|
|
164
|
+
safety: 'read-only',
|
|
165
|
+
inputSchema: 'tiinex.portable.input.v1',
|
|
166
|
+
handler: (input = {}, options = {}) => wrapPortableResult('project-operating-overview', projectPortableOperatingOverview(input, options))
|
|
167
|
+
}),
|
|
168
|
+
'resolve-lineage': operation({
|
|
169
|
+
name: 'resolve-lineage',
|
|
170
|
+
description: 'Resolve and traverse declared lineage edges inside the loaded material only.',
|
|
171
|
+
safety: 'read-only',
|
|
172
|
+
inputSchema: 'tiinex.portable.input.v1',
|
|
173
|
+
handler: resolvePortableLineage
|
|
174
|
+
}),
|
|
175
|
+
'resolve-capabilities': operation({
|
|
176
|
+
name: 'resolve-capabilities',
|
|
177
|
+
description: 'Inspect the current site schema capability registry and explicit Root fallback qualification.',
|
|
178
|
+
safety: 'read-only',
|
|
179
|
+
inputSchema: 'tiinex.portable.capability.request.v1',
|
|
180
|
+
handler: resolvePortableCapabilities
|
|
181
|
+
}),
|
|
182
|
+
'describe-schema-chain': operation({
|
|
183
|
+
name: 'describe-schema-chain',
|
|
184
|
+
description: 'Describe registered and supplied schema ancestry without claiming capability fallback execution.',
|
|
185
|
+
safety: 'read-only',
|
|
186
|
+
inputSchema: 'tiinex.portable.schema-chain.request.v1',
|
|
187
|
+
handler: describePortableSchemaChain
|
|
188
|
+
}),
|
|
189
|
+
'inspect-creation-contract': operation({
|
|
190
|
+
name: 'inspect-creation-contract',
|
|
191
|
+
description: 'Inspect and validate the existing site creation contract for a target schema and transition.',
|
|
192
|
+
safety: 'read-only',
|
|
193
|
+
inputSchema: 'tiinex.portable.creation-contract.request.v1',
|
|
194
|
+
handler: inspectPortableCreationContract
|
|
195
|
+
}),
|
|
196
|
+
'make-writer-brief': operation({
|
|
197
|
+
name: 'make-writer-brief',
|
|
198
|
+
description: 'Produce a safe exact-tooling, LLM-writer, or preserve-only creation brief.',
|
|
199
|
+
safety: 'planning-only',
|
|
200
|
+
inputSchema: 'tiinex.portable.writer-brief.request.v1',
|
|
201
|
+
handler: makePortableWriterBrief
|
|
202
|
+
}),
|
|
203
|
+
'schema-guide': operation({
|
|
204
|
+
name: 'schema-guide',
|
|
205
|
+
description: 'Compile a compact task-specific LLM guide from readable schema contracts, runtime capabilities, and optional schema companion hints.',
|
|
206
|
+
safety: 'read-only',
|
|
207
|
+
inputSchema: 'tiinex.portable.schema-guide.request.v1',
|
|
208
|
+
handler: compilePortableSchemaGuide
|
|
209
|
+
}),
|
|
210
|
+
'read-schema-section': operation({
|
|
211
|
+
name: 'read-schema-section',
|
|
212
|
+
description: 'Retrieve bounded sections from supplied readable schema Markdown for progressive disclosure.',
|
|
213
|
+
safety: 'read-only',
|
|
214
|
+
inputSchema: 'tiinex.portable.schema-section.request.v1',
|
|
215
|
+
handler: readPortableSchemaSection
|
|
216
|
+
}),
|
|
217
|
+
'plan-artifact': operation({
|
|
218
|
+
name: 'plan-artifact',
|
|
219
|
+
description: 'Build an LLM-oriented artifact plan with missing inputs, required structure, validation steps, and retrieval hints.',
|
|
220
|
+
safety: 'planning-only',
|
|
221
|
+
inputSchema: 'tiinex.portable.artifact-plan.request.v1',
|
|
222
|
+
handler: planPortableArtifactCreation
|
|
223
|
+
}),
|
|
224
|
+
'process-live-turn': operation({
|
|
225
|
+
name: 'process-live-turn',
|
|
226
|
+
description: 'Atomically record one substantive dialogue turn, optionally create or revise supported live artifacts, and return bounded artifact-state for the reply. A no-artifact decision is still receipted.',
|
|
227
|
+
safety: 'local-draft-state-and-response-preflight',
|
|
228
|
+
inputSchema: 'tiinex.portable.live-turn.process.request.v1',
|
|
229
|
+
handler: (input = {}, options = {}) => wrapPortableResult('process-live-turn', processPortableLiveTurn(input, options))
|
|
230
|
+
}),
|
|
231
|
+
'read-live-lineage': operation({
|
|
232
|
+
name: 'read-live-lineage',
|
|
233
|
+
description: 'Return bounded current artifact-state without exposing raw Markdown, state JSON, or hidden reasoning.',
|
|
234
|
+
safety: 'read-only-local-state',
|
|
235
|
+
inputSchema: 'tiinex.portable.live-lineage.read.request.v1',
|
|
236
|
+
handler: (input = {}) => wrapPortableResult('read-live-lineage', readPortableLiveLineage(input))
|
|
237
|
+
}),
|
|
238
|
+
'export-live-lineage': operation({
|
|
239
|
+
name: 'export-live-lineage',
|
|
240
|
+
description: 'Validate and flush artifacts that already existed during dialogue into an artifact-first changeset; generic Markdown or JSON fallback is forbidden.',
|
|
241
|
+
safety: 'local-package-result',
|
|
242
|
+
inputSchema: 'tiinex.portable.live-lineage.export.request.v1',
|
|
243
|
+
handler: (input = {}, options = {}) => wrapPortableResult('export-live-lineage', exportPortableLiveLineage(input, options))
|
|
244
|
+
}),
|
|
245
|
+
'prepare-materialization': operation({
|
|
246
|
+
name: 'prepare-materialization',
|
|
247
|
+
description: 'Validate an evidence-grounded proposal for zero, one, or multiple local Tiinex artifacts against shared schema companions and explicit loaded or earlier-proposal Parents without forcing a fixed questionnaire.',
|
|
248
|
+
safety: 'read-only',
|
|
249
|
+
inputSchema: 'tiinex.portable.epistemic-materialization.request.v1',
|
|
250
|
+
handler: preparePortableMaterialization
|
|
251
|
+
}),
|
|
252
|
+
'create-local-artifact-set': operation({
|
|
253
|
+
name: 'create-local-artifact-set',
|
|
254
|
+
description: 'Create one or more clean local Tiinex artifacts from a ready epistemic plan, preserving explicit loaded Parents or ordered proposal-to-proposal lineage without source mutation.',
|
|
255
|
+
safety: 'local-draft-result',
|
|
256
|
+
inputSchema: 'tiinex.portable.artifact-set-creation.request.v1',
|
|
257
|
+
handler: createPortableArtifactSet
|
|
258
|
+
}),
|
|
259
|
+
'create-local-draft': operation({
|
|
260
|
+
name: 'create-local-draft',
|
|
261
|
+
description: 'Create an in-memory local Tiinex draft through exact site creation tooling or readable-schema writer fallback, then validate it without mutating source material.',
|
|
262
|
+
safety: 'local-draft-result',
|
|
263
|
+
inputSchema: 'tiinex.portable.draft-creation.request.v1',
|
|
264
|
+
handler: createPortableArtifactDraft
|
|
265
|
+
}),
|
|
266
|
+
'update-local-draft': operation({
|
|
267
|
+
name: 'update-local-draft',
|
|
268
|
+
description: 'Validate and return a complete replacement for explicitly local draft state while preserving identity and blocking silent schema or continuity changes.',
|
|
269
|
+
safety: 'local-draft-result',
|
|
270
|
+
inputSchema: 'tiinex.portable.draft-update.request.v1',
|
|
271
|
+
handler: updatePortableArtifactDraft
|
|
272
|
+
}),
|
|
273
|
+
'delete-local-draft': operation({
|
|
274
|
+
name: 'delete-local-draft',
|
|
275
|
+
description: 'Return an explicitly confirmed local-state deletion record without mutating source material, remote systems, or the caller filesystem.',
|
|
276
|
+
safety: 'local-state',
|
|
277
|
+
inputSchema: 'tiinex.portable.draft-delete.request.v1',
|
|
278
|
+
handler: deletePortableArtifactDraft
|
|
279
|
+
}),
|
|
280
|
+
'stage-draft': operation({
|
|
281
|
+
name: 'stage-draft',
|
|
282
|
+
description: 'Qualify and return a local staged-artifact record without writing files, publishing, or inheriting source identity.',
|
|
283
|
+
safety: 'local-state',
|
|
284
|
+
inputSchema: 'tiinex.portable.stage-draft.request.v1',
|
|
285
|
+
handler: stagePortableArtifactDraft
|
|
286
|
+
}),
|
|
287
|
+
'validate-draft': operation({
|
|
288
|
+
name: 'validate-draft',
|
|
289
|
+
description: 'Validate a local draft with the existing audit engine plus explicit contract-driven structural checks when readable schema material is supplied.',
|
|
290
|
+
safety: 'read-only',
|
|
291
|
+
inputSchema: 'tiinex.portable.draft-validation.request.v1',
|
|
292
|
+
handler: validatePortableArtifactDraft
|
|
293
|
+
}),
|
|
294
|
+
'explain-findings': operation({
|
|
295
|
+
name: 'explain-findings',
|
|
296
|
+
description: 'Translate findings into compact ownership, blocking, and repair guidance without rewriting the artifact.',
|
|
297
|
+
safety: 'planning-only',
|
|
298
|
+
inputSchema: 'tiinex.portable.finding-explanation.request.v1',
|
|
299
|
+
handler: explainPortableArtifactFindings
|
|
300
|
+
}),
|
|
301
|
+
'repair-plan': operation({
|
|
302
|
+
name: 'repair-plan',
|
|
303
|
+
description: 'Group findings into a minimal ordered repair plan that preserves unknown content and source/continuity boundaries.',
|
|
304
|
+
safety: 'planning-only',
|
|
305
|
+
inputSchema: 'tiinex.portable.repair-plan.request.v1',
|
|
306
|
+
handler: planPortableArtifactRepairs
|
|
307
|
+
}),
|
|
308
|
+
...Object.fromEntries(portableLineageOperationDescriptors.map((descriptor) => [descriptor.name, operation(descriptor)])),
|
|
309
|
+
...Object.fromEntries(portableReductionOperationDescriptors.map((descriptor) => [descriptor.name, operation(descriptor)])),
|
|
310
|
+
...Object.fromEntries(portableLifecycleOperationDescriptors.map((descriptor) => [descriptor.name, operation(descriptor)])),
|
|
311
|
+
'inspect-assets': operation({
|
|
312
|
+
name: 'inspect-assets',
|
|
313
|
+
description: 'Index binary assets, MIME/media kind, local references, locators, and required host analysis capabilities without interpreting asset content.',
|
|
314
|
+
safety: 'read-only',
|
|
315
|
+
inputSchema: 'tiinex.portable.asset-index.request.v1',
|
|
316
|
+
handler: inspectPortableAssetIndex
|
|
317
|
+
}),
|
|
318
|
+
'prepare-asset-analysis': operation({
|
|
319
|
+
name: 'prepare-asset-analysis',
|
|
320
|
+
description: 'Prepare a host-mediated image/PDF analysis request for a supplied asset while keeping source material and generated interpretation distinct.',
|
|
321
|
+
safety: 'planning-only',
|
|
322
|
+
inputSchema: 'tiinex.portable.asset-analysis.request.v1',
|
|
323
|
+
handler: preparePortableAssetAnalysisOperation
|
|
324
|
+
}),
|
|
325
|
+
'plan-durable-materialization': operation({
|
|
326
|
+
name: 'plan-durable-materialization',
|
|
327
|
+
description: 'Map explicit durable session findings to explicit target schemas without guessing artifact type or mutating source material.',
|
|
328
|
+
safety: 'planning-only',
|
|
329
|
+
inputSchema: 'tiinex.portable.durable-materialization.request.v1',
|
|
330
|
+
handler: (input = {}) => wrapPortableResult('plan-durable-materialization', planPortableDurableMaterialization(input))
|
|
331
|
+
}),
|
|
332
|
+
'materialize-durable-findings': operation({
|
|
333
|
+
name: 'materialize-durable-findings',
|
|
334
|
+
description: 'Create and optionally stage local schema-qualified drafts from explicitly mapped durable findings, leaving unmapped findings in session state.',
|
|
335
|
+
safety: 'local-draft-and-state',
|
|
336
|
+
inputSchema: 'tiinex.portable.durable-materialization.request.v1',
|
|
337
|
+
remoteFetch: 'host-mediated-optional',
|
|
338
|
+
handler: async (input = {}, options = {}) => wrapPortableResult('materialize-durable-findings', await materializePortableDurableFindings(input, options))
|
|
339
|
+
}),
|
|
340
|
+
...createPortablePackageOperationEntries({ operation, wrapPortableResult, sessionOperationResult })
|
|
341
|
+
});
|
|
342
|
+
|
|
343
|
+
export function listPortableOperations() {
|
|
344
|
+
return Object.freeze({
|
|
345
|
+
schema: PORTABLE_OPERATION_CATALOG_SCHEMA_ID,
|
|
346
|
+
operations: Object.freeze(Object.values(portableOperationCatalog).map(({ handler, ...descriptor }) => Object.freeze(descriptor)))
|
|
347
|
+
});
|
|
348
|
+
}
|
|
349
|
+
|
|
350
|
+
export async function runPortableOperation(name = '', input = {}, options = {}) {
|
|
351
|
+
const descriptor = portableOperationCatalog[String(name || '').trim()];
|
|
352
|
+
if (!descriptor) throw new Error(`portable.operation.unknown:${name}`);
|
|
353
|
+
return descriptor.handler(input, options);
|
|
354
|
+
}
|
|
355
|
+
|
|
356
|
+
function operation({ name, description, safety, inputSchema, handler, remoteFetch = false, remoteWrite = false, sourceMutation = false }) {
|
|
357
|
+
return Object.freeze({
|
|
358
|
+
name,
|
|
359
|
+
description,
|
|
360
|
+
safety,
|
|
361
|
+
inputSchema,
|
|
362
|
+
outputSchema: 'tiinex.portable.operation.result.v1',
|
|
363
|
+
remoteFetch,
|
|
364
|
+
remoteWrite,
|
|
365
|
+
sourceMutation,
|
|
366
|
+
serializableResult: true,
|
|
367
|
+
handler
|
|
368
|
+
});
|
|
369
|
+
}
|
|
370
|
+
|
|
371
|
+
function sessionOperationResult(operationName, session) {
|
|
372
|
+
const findings = Object.freeze([]);
|
|
373
|
+
return Object.freeze({
|
|
374
|
+
schema: 'tiinex.portable.operation.result.v1',
|
|
375
|
+
operation: operationName,
|
|
376
|
+
session,
|
|
377
|
+
findings,
|
|
378
|
+
findingSummary: summarizePortableFindings(findings)
|
|
379
|
+
});
|
|
380
|
+
}
|
|
381
|
+
|
|
382
|
+
function wrapPortableResult(operationName, result = {}) {
|
|
383
|
+
const { schema: resultSchema = '', ...payload } = result || {};
|
|
384
|
+
const findings = Object.freeze([...(result?.findings || [])]);
|
|
385
|
+
return Object.freeze({
|
|
386
|
+
schema: 'tiinex.portable.operation.result.v1',
|
|
387
|
+
operation: operationName,
|
|
388
|
+
resultSchema,
|
|
389
|
+
...payload,
|
|
390
|
+
findings,
|
|
391
|
+
findingSummary: result?.findingSummary || summarizePortableFindings(findings)
|
|
392
|
+
});
|
|
393
|
+
}
|
|
@@ -0,0 +1,183 @@
|
|
|
1
|
+
import { openPortableSession, restorePortableSession, serializePortableSession } from './session/portable.session.js';
|
|
2
|
+
import { createPortableCheckpoint, restorePortableCheckpoint } from './checkpoint/portable.checkpoint.js';
|
|
3
|
+
import { buildPortableRuntimePackage, inspectPortableRuntimePackage, rehydratePortableRuntimePackage, roundTripPortableRuntimePackage } from './package/runtime.package.js';
|
|
4
|
+
import { acceptPortablePublicationResult, planPortablePublication } from './publication/runtime.publication.js';
|
|
5
|
+
import { manufactureRecipientRelativeHandoffPackage } from './handoff/manufacture.js';
|
|
6
|
+
import { projectPortableHandoffCarrierOutputFromPackage } from './handoff/recipientV2.humanOutput.js';
|
|
7
|
+
import { orientColdConsumerFromHandoffPackage } from './handoff/coldConsumerEntrypoint.js';
|
|
8
|
+
import { auditHandoffPackageContextCarriage } from './handoff/contextAudit.js';
|
|
9
|
+
import { projectPortableWorkspaceLandingPlan } from './handoff/workspaceLandingPlan.js';
|
|
10
|
+
import { projectPortableEditorAssistance } from './editor/editor.assistance.js';
|
|
11
|
+
import { projectQualifiedHandoffLeaves } from './handoff/handoffLeafProjection.js';
|
|
12
|
+
import { projectPortableAuthoringParent } from './editor/authoring.parent.js';
|
|
13
|
+
import { projectQualifiedWorkspacePackageSources } from './handoff/workspacePackageSources.js';
|
|
14
|
+
import { projectPortableHandoffAuthoringPlan } from './handoff/handoffAuthoringPlan.js';
|
|
15
|
+
import { projectQualifiedHandoffEndpoints } from './handoff/handoffEndpointProjection.js';
|
|
16
|
+
import { projectPortableOperatorContext } from './handoff/operatorContextProjection.js';
|
|
17
|
+
import { projectPortableStagedValidation } from './editor/staged.validation.js';
|
|
18
|
+
|
|
19
|
+
export function createPortablePackageOperationEntries({ operation, wrapPortableResult, sessionOperationResult }) {
|
|
20
|
+
return Object.freeze({
|
|
21
|
+
'create-checkpoint': operation({
|
|
22
|
+
name: 'create-checkpoint',
|
|
23
|
+
description: 'Create a recoverable explicit portable session checkpoint. This is not a canonical Tiinex handoff artifact.',
|
|
24
|
+
safety: 'local-state',
|
|
25
|
+
inputSchema: 'tiinex.portable.checkpoint.create.request.v1',
|
|
26
|
+
handler: (input = {}, options = {}) => wrapPortableResult('create-checkpoint', createPortableCheckpoint(input, options))
|
|
27
|
+
}),
|
|
28
|
+
'restore-checkpoint': operation({
|
|
29
|
+
name: 'restore-checkpoint',
|
|
30
|
+
description: 'Verify and restore a portable checkpoint while preserving its explicit non-handoff boundary.',
|
|
31
|
+
safety: 'local-state',
|
|
32
|
+
inputSchema: 'tiinex.portable.checkpoint.v1',
|
|
33
|
+
handler: (input = {}) => wrapPortableResult('restore-checkpoint', restorePortableCheckpoint(input))
|
|
34
|
+
}),
|
|
35
|
+
'manufacture-handoff-package': operation({
|
|
36
|
+
name: 'manufacture-handoff-package',
|
|
37
|
+
description: 'Build/verify qualified Handoff packages.',
|
|
38
|
+
safety: 'local-package-result',
|
|
39
|
+
inputSchema: 'tiinex.portable.handoff-manufacturing.request.v2',
|
|
40
|
+
handler: (input = {}, options = {}) => wrapPortableResult('manufacture-handoff-package', manufactureRecipientRelativeHandoffPackage(input, options))
|
|
41
|
+
}),
|
|
42
|
+
'project-handoff-carrier-output': operation({
|
|
43
|
+
name: 'project-handoff-carrier-output',
|
|
44
|
+
description: 'Regenerate qualified human carrier output.',
|
|
45
|
+
safety: 'read-only',
|
|
46
|
+
inputSchema: 'tiinex.portable.handoff-carrier-output.request.v1',
|
|
47
|
+
handler: (input = {}) => wrapPortableResult('project-handoff-carrier-output', projectPortableHandoffCarrierOutputFromPackage(input))
|
|
48
|
+
}),
|
|
49
|
+
'orient-handoff-package': operation({
|
|
50
|
+
name: 'orient-handoff-package',
|
|
51
|
+
description: 'Verify START/Pointer orientation.',
|
|
52
|
+
safety: 'read-only',
|
|
53
|
+
inputSchema: 'tiinex.portable.handoff-cold-consumer-orientation.request.v1',
|
|
54
|
+
handler: (input = {}) => wrapPortableResult('orient-handoff-package', orientColdConsumerFromHandoffPackage(input))
|
|
55
|
+
}),
|
|
56
|
+
'audit-handoff-package-context': operation({
|
|
57
|
+
name: 'audit-handoff-package-context',
|
|
58
|
+
description: 'Audit recipient package carriage.',
|
|
59
|
+
safety: 'read-only',
|
|
60
|
+
inputSchema: 'tiinex.portable.handoff-context-carriage-audit.request.v1',
|
|
61
|
+
handler: (input = {}) => wrapPortableResult('audit-handoff-package-context', auditHandoffPackageContextCarriage(input))
|
|
62
|
+
}),
|
|
63
|
+
'project-workspace-landing': operation({
|
|
64
|
+
name: 'project-workspace-landing',
|
|
65
|
+
description: 'Project qualified carried Workspaces onto explicit local Git repository facts for one fail-closed human landing confirmation without extracting, writing, committing, pushing, or creating semantic authority.',
|
|
66
|
+
safety: 'planning-only-read-only',
|
|
67
|
+
inputSchema: 'tiinex.portable.workspace-landing-plan.request.v1',
|
|
68
|
+
handler: (input = {}) => wrapPortableResult('project-workspace-landing', projectPortableWorkspaceLandingPlan(input))
|
|
69
|
+
}),
|
|
70
|
+
'project-editor-assistance': operation({
|
|
71
|
+
name: 'project-editor-assistance',
|
|
72
|
+
description: 'Project exact shared validator findings, deterministic source locations where provable, and bounded deterministic hygiene repairs for editor hosts.',
|
|
73
|
+
safety: 'planning-only-read-only',
|
|
74
|
+
inputSchema: 'tiinex.portable.input.v1',
|
|
75
|
+
handler: (input = {}) => wrapPortableResult('project-editor-assistance', projectPortableEditorAssistance(input))
|
|
76
|
+
}),
|
|
77
|
+
'project-authoring-parent': operation({
|
|
78
|
+
name: 'project-authoring-parent',
|
|
79
|
+
description: 'Project one exactly audited local Tiinex artifact into shared continuation-authoring Parent input without inventing schema-reference qualification.',
|
|
80
|
+
safety: 'planning-only-read-only',
|
|
81
|
+
inputSchema: 'tiinex.portable.input.v1',
|
|
82
|
+
handler: (input = {}) => wrapPortableResult('project-authoring-parent', projectPortableAuthoringParent(input))
|
|
83
|
+
}),
|
|
84
|
+
'project-handoff-leaves': operation({
|
|
85
|
+
name: 'project-handoff-leaves',
|
|
86
|
+
description: 'Project currently qualified Handoff leaves from loaded source using exact shared Handoff validation and declared Parent continuity.',
|
|
87
|
+
safety: 'planning-only-read-only',
|
|
88
|
+
inputSchema: 'tiinex.portable.input.v1',
|
|
89
|
+
handler: (input = {}) => wrapPortableResult('project-handoff-leaves', projectQualifiedHandoffLeaves(input))
|
|
90
|
+
}),
|
|
91
|
+
'project-workspace-package-sources': operation({
|
|
92
|
+
name: 'project-workspace-package-sources',
|
|
93
|
+
description: 'Project exact qualified local Workspace artifacts into explicit package-builder source candidates without manufacturing or creating Workspace authority.',
|
|
94
|
+
safety: 'planning-only-read-only',
|
|
95
|
+
inputSchema: 'tiinex.portable.input.v1',
|
|
96
|
+
handler: (input = {}) => wrapPortableResult('project-workspace-package-sources', projectQualifiedWorkspacePackageSources(input))
|
|
97
|
+
}),
|
|
98
|
+
'project-handoff-authoring-plan': operation({
|
|
99
|
+
name: 'project-handoff-authoring-plan',
|
|
100
|
+
description: 'Project the shared root or continuation path allocation for native Handoff authoring from exact local material without creating an artifact.',
|
|
101
|
+
safety: 'planning-only-read-only',
|
|
102
|
+
inputSchema: 'tiinex.portable.input.v1',
|
|
103
|
+
handler: (input = {}) => wrapPortableResult('project-handoff-authoring-plan', projectPortableHandoffAuthoringPlan(input))
|
|
104
|
+
}),
|
|
105
|
+
'project-handoff-endpoints': operation({
|
|
106
|
+
name: 'project-handoff-endpoints',
|
|
107
|
+
description: 'Project exactly qualified Role/Party artifacts into explicit Handoff endpoint choices with stable Workspace-artifact references and no holder inference.',
|
|
108
|
+
safety: 'planning-only-read-only',
|
|
109
|
+
inputSchema: 'tiinex.portable.input.v1',
|
|
110
|
+
handler: (input = {}) => wrapPortableResult('project-handoff-endpoints', projectQualifiedHandoffEndpoints(input))
|
|
111
|
+
}),
|
|
112
|
+
'project-operator-context': operation({
|
|
113
|
+
name: 'project-operator-context',
|
|
114
|
+
description: 'Project one explicit multi-root operator context with qualified Workspace identities, Handoff leaves, Role/Party endpoints, and pointerless selection.',
|
|
115
|
+
safety: 'planning-only-read-only',
|
|
116
|
+
inputSchema: 'tiinex.portable.input.v1',
|
|
117
|
+
handler: (input = {}) => wrapPortableResult('project-operator-context', projectPortableOperatorContext(input))
|
|
118
|
+
}),
|
|
119
|
+
'project-staged-validation': operation({
|
|
120
|
+
name: 'project-staged-validation',
|
|
121
|
+
description: 'Validate explicit staged Tiinex paths plus only their required loaded local Parent closure without auditing unrelated non-staged artifacts.',
|
|
122
|
+
safety: 'planning-only-read-only',
|
|
123
|
+
inputSchema: 'tiinex.portable.input.v1',
|
|
124
|
+
handler: (input = {}) => wrapPortableResult('project-staged-validation', projectPortableStagedValidation(input))
|
|
125
|
+
}),
|
|
126
|
+
'build-runtime-package': operation({
|
|
127
|
+
name: 'build-runtime-package',
|
|
128
|
+
description: 'Build the current Tiinex/site runtime export-package bundle from loaded and staged material without claiming a locked canonical package schema.',
|
|
129
|
+
safety: 'local-package-result',
|
|
130
|
+
inputSchema: 'tiinex.portable.runtime-package.build.request.v1',
|
|
131
|
+
handler: (input = {}, options = {}) => wrapPortableResult('build-runtime-package', buildPortableRuntimePackage(input, options))
|
|
132
|
+
}),
|
|
133
|
+
'inspect-runtime-package': operation({
|
|
134
|
+
name: 'inspect-runtime-package',
|
|
135
|
+
description: 'Inspect a current runtime export-package bundle through the existing Tiinex/site package implementation.',
|
|
136
|
+
safety: 'read-only',
|
|
137
|
+
inputSchema: 'tiinex.export.package.bundle.v1',
|
|
138
|
+
handler: (input = {}) => wrapPortableResult('inspect-runtime-package', inspectPortableRuntimePackage(input))
|
|
139
|
+
}),
|
|
140
|
+
'rehydrate-runtime-package': operation({
|
|
141
|
+
name: 'rehydrate-runtime-package',
|
|
142
|
+
description: 'Reconstruct the current in-memory runtime package contract from explicitly supplied serialized package files without executing received content.',
|
|
143
|
+
safety: 'read-only',
|
|
144
|
+
inputSchema: 'tiinex.portable.input.v1',
|
|
145
|
+
handler: (input = {}) => wrapPortableResult('rehydrate-runtime-package', rehydratePortableRuntimePackage(input))
|
|
146
|
+
}),
|
|
147
|
+
'roundtrip-runtime-package': operation({
|
|
148
|
+
name: 'roundtrip-runtime-package',
|
|
149
|
+
description: 'Build or inspect, import-plan, apply-plan, and compare the current runtime package contract for a no-GitHub-inference round trip.',
|
|
150
|
+
safety: 'read-only-or-local-package-result',
|
|
151
|
+
inputSchema: 'tiinex.portable.runtime-package.roundtrip.request.v1',
|
|
152
|
+
handler: (input = {}, options = {}) => wrapPortableResult('roundtrip-runtime-package', roundTripPortableRuntimePackage(input, options))
|
|
153
|
+
}),
|
|
154
|
+
'plan-publication': operation({
|
|
155
|
+
name: 'plan-publication',
|
|
156
|
+
description: 'Build an exact shared publication plan for one qualified owned-local artifact without performing a host write.',
|
|
157
|
+
safety: 'planning-only',
|
|
158
|
+
inputSchema: 'tiinex.portable.publication.plan.request.v1',
|
|
159
|
+
handler: (input = {}) => wrapPortableResult('plan-publication', planPortablePublication(input))
|
|
160
|
+
}),
|
|
161
|
+
'accept-publication-result': operation({
|
|
162
|
+
name: 'accept-publication-result',
|
|
163
|
+
description: 'Qualify explicit host publication execution/verification evidence and derive an exact source binding only when target-surface-specific verification succeeds.',
|
|
164
|
+
safety: 'read-only-normalization',
|
|
165
|
+
inputSchema: 'tiinex.portable.publication.result.request.v1',
|
|
166
|
+
handler: (input = {}) => wrapPortableResult('accept-publication-result', acceptPortablePublicationResult(input))
|
|
167
|
+
}),
|
|
168
|
+
'serialize-session': operation({
|
|
169
|
+
name: 'serialize-session',
|
|
170
|
+
description: 'Serialize portable loaded material and explicit long-lived dialogue state without hidden chat provenance.',
|
|
171
|
+
safety: 'local-state',
|
|
172
|
+
inputSchema: 'tiinex.portable.session.open.v1',
|
|
173
|
+
handler: (input = {}) => sessionOperationResult('serialize-session', serializePortableSession(openPortableSession(input)))
|
|
174
|
+
}),
|
|
175
|
+
'restore-session': operation({
|
|
176
|
+
name: 'restore-session',
|
|
177
|
+
description: 'Validate and normalize a previously serialized portable session snapshot.',
|
|
178
|
+
safety: 'local-state',
|
|
179
|
+
inputSchema: 'tiinex.portable.session.v1',
|
|
180
|
+
handler: (input = {}) => sessionOperationResult('restore-session', restorePortableSession(input).snapshot())
|
|
181
|
+
})
|
|
182
|
+
});
|
|
183
|
+
}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { dedupePortableFindings, summarizePortableFindings } from './findings.js';
|
|
2
|
+
|
|
3
|
+
const PORTABLE_RESULT_SCHEMA_ID = 'tiinex.portable.operation.result.v1';
|
|
4
|
+
|
|
5
|
+
export function portableOperationResult(operation, payload = {}) {
|
|
6
|
+
const findings = dedupePortableFindings(payload.findings || []);
|
|
7
|
+
return Object.freeze({
|
|
8
|
+
schema: PORTABLE_RESULT_SCHEMA_ID,
|
|
9
|
+
operation,
|
|
10
|
+
...payload,
|
|
11
|
+
findings,
|
|
12
|
+
findingSummary: summarizePortableFindings(findings)
|
|
13
|
+
});
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
export function normalizePortableSchemaIds(value) {
|
|
17
|
+
const values = Array.isArray(value) ? value : [value];
|
|
18
|
+
return [...new Set(values.map((item) => String(item || '').trim()).filter(Boolean))];
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
export function normalizePortableDepth(value, fallback = 16) {
|
|
22
|
+
const parsed = Number.parseInt(value, 10);
|
|
23
|
+
if (!Number.isFinite(parsed)) return fallback;
|
|
24
|
+
return Math.max(1, Math.min(64, parsed));
|
|
25
|
+
}
|