@tiinex/core 0.13.0 → 0.15.0
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/package.json +5 -5
- package/src/integrity/integrity.c14nV1.js +28 -0
- package/src/lineage/lineage.integrity.js +108 -22
- package/src/lineage/lineage.resolve.js +21 -14
- package/src/lineage/lineage.sourceScope.js +41 -12
- package/src/lineage/lineage.targetKeys.js +26 -7
- package/src/tooling/portable/adapters/cli/cli.handoff-manufacture.js +47 -10
- package/src/tooling/portable/adapters/node/bootstrapCarrier.manufacture.js +18 -0
- package/src/tooling/portable/adapters/node/workspaceCarrier.manufacture.js +13 -3
- package/src/tooling/portable/bootstrap/tiinex.llm.bootstrap.md +2 -2
- package/src/tooling/portable/handoff/bootstrapCarrier.manufacture.js +56 -0
- package/src/tooling/portable/handoff/contracts/tiinex.handoff.package.v1.schema.md +340 -77
- package/src/tooling/portable/handoff/manufacture.js +3 -1
- package/src/tooling/portable/handoff/recipientV2.artifactFirst.build.js +73 -32
- package/src/tooling/portable/handoff/recipientV2.artifactFirst.closure.js +1 -1
- package/src/tooling/portable/handoff/recipientV2.artifactFirst.inspect.js +9 -1
- package/src/tooling/portable/handoff/recipientV2.artifactFirst.materials.js +28 -6
- package/src/tooling/portable/handoff/recipientV2.artifactFirst.shared.js +8 -0
- package/src/tooling/portable/handoff/recipientV2.coldProjection.js +11 -6
- package/src/tooling/portable/handoff/recipientV2.entryContract.js +12 -0
- package/src/tooling/portable/handoff/recipientV2.humanOutput.js +48 -6
- package/src/tooling/portable/handoff/recipientV2.packageV1.build.js +55 -43
- package/src/tooling/portable/handoff/recipientV2.packageV1.contract.js +57 -31
- package/src/tooling/portable/handoff/recipientV2.packageV1.inspect.helpers.js +63 -10
- package/src/tooling/portable/handoff/recipientV2.packageV1.inspect.js +55 -16
- package/src/tooling/portable/handoff/recipientV2.packageV1.workspaceProjection.js +14 -1
- package/src/tooling/portable/handoff/recipientV2.topology.js +3 -4
- package/src/tooling/portable/handoff/recipientV2.topology.materials.js +14 -0
- package/src/tooling/portable/handoff/workspaceCarrier.manufacture.js +42 -13
|
@@ -10,8 +10,17 @@
|
|
|
10
10
|
- Current
|
|
11
11
|
- Current Schema: [tiinex.handoff.package.v1](tiinex.handoff.package.v1.schema.md)
|
|
12
12
|
- Created At: 2026-09-01 14:19:00
|
|
13
|
-
- Authors: Axiom
|
|
14
|
-
-
|
|
13
|
+
- Authors: Axiom, Anchor
|
|
14
|
+
- Repairs:
|
|
15
|
+
- Password-sealed Workspace carriage
|
|
16
|
+
- Target: Core Semantics / Workspace Snapshot Bindings / Route Discovery / Qualification Boundary
|
|
17
|
+
- Note: Adds one sealed binding mode that composes External Payload and Transport Envelope authority, keeps protected Workspace internals opaque to the carrier, and requires the authoritative selected Handoff route Workspace to remain clear in V1.
|
|
18
|
+
- Reason: Accepted secure-transport V1 semantics require independently protected Workspaces without moving cryptographic profile or recipient-slot meaning into Handoff Package.
|
|
19
|
+
- Minimal carrier, qualified material carriage, and recipient projection
|
|
20
|
+
- Target: Core Semantics / Package Identity / Workspace Snapshot Bindings / Material Representation Bindings / Route Discovery / Transport Projection / Qualification Boundary
|
|
21
|
+
- Note: Adds an explicit bootstrap-only carrier role, permits zero source-material bindings only in that role, composes complete or bounded Workspace Representation authority for qualified contextual material, keeps Role presence separate from recipient/holder semantics, and makes generic versus route-specific transport text a projection rule rather than a new semantic sidecar.
|
|
22
|
+
- Reason: A recipient may need only Start plus qualified portable Tooling, or a bounded material carrier, without fake Workspaces, fake Handoffs, inferred recipients, or host-private package meaning.
|
|
23
|
+
- Summary: Receiver-facing carrier schema for package identity, Start/bootstrap exposure, optional qualified source-material carriage through complete package-local Workspace snapshots or generic complete/bounded Workspace Representations, explicit Handoff-route, pointerless material, or bootstrap-only roles, and carrier/transport projection boundaries without owning Handoff transfer, Role holder state, cryptographic profile, or generic Workspace representation semantics.
|
|
15
24
|
|
|
16
25
|
---
|
|
17
26
|
|
|
@@ -21,26 +30,37 @@
|
|
|
21
30
|
|
|
22
31
|
## Summary
|
|
23
32
|
|
|
24
|
-
Defines one receiver-facing Handoff carrier
|
|
33
|
+
Defines one receiver-facing carrier identity/discovery contract with three explicit Package Roles: an exact Handoff-route carrier, a pointerless Workspace-material carrier, and a bootstrap-only carrier with no project/source material. Complete Workspace carriage may continue to use the package-local clear verified or password-sealed complete-snapshot shortcut. Complete or intentionally bounded material whose representation semantics matter independently must use a qualified `tiinex.workspace.representation.v1` binding instead of being squeezed into that shortcut.
|
|
25
34
|
|
|
26
|
-
`tiinex.handoff.package.v1` owns only
|
|
35
|
+
`tiinex.handoff.package.v1` owns only carrier facts: how a recipient enters the carrier, which package role is declared, which qualified source-material bindings are selected for carriage, how an explicit Handoff route is discovered when present, how generic and route-specific transport text is projected, and how carrier convenience lineage is represented. It does not own the carried Workspace, Role, Handoff, Representation Payload, cryptographic profile, recipient-slot, holder, delegation, acceptance, project-membership, or post-open provider semantics that belong to their own artifacts.
|
|
27
36
|
|
|
28
37
|
Despite its namespace, this schema is not a specialization of `tiinex.handoff.v1`. It does not transfer work or responsibility. It is also not a specialization of `tiinex.semantic.package.v1`, whose maintained job is portable schema and Transition discovery.
|
|
29
38
|
|
|
30
39
|
## Core Semantics
|
|
31
40
|
|
|
32
|
-
- Handoff Package = one recipient-facing carrier identity/discovery boundary.
|
|
33
|
-
-
|
|
34
|
-
-
|
|
41
|
+
- Handoff Package = one recipient-facing carrier identity/discovery boundary with one explicit Package Role: exact Handoff-route transport, pointerless qualified Workspace-material transport, or bootstrap-only transport.
|
|
42
|
+
- In `recipient-facing-handoff-carrier` mode, the authoritative Handoff remains a `tiinex.handoff.v1` artifact in its owning Workspace; carrying or pointing to it does not duplicate or replace Handoff semantics.
|
|
43
|
+
- In `recipient-facing-workspace-carrier` mode, the package selects no Handoff route and creates no Handoff transfer, endpoint, recipient-capacity, current-work, acceptance, completion, or continuation semantics. The carried material may be one or more complete package-local Workspace Snapshot Bindings and/or one or more independently qualified complete/bounded Workspace Representation bindings.
|
|
44
|
+
- In `recipient-facing-bootstrap-carrier` mode, the package intentionally carries no Workspace/source-material binding and no Handoff route. It exposes only the carrier identity, Start/bootstrap convention, carrier continuity, qualification boundary, and generic package transport projection required to enter Tiinex Tooling.
|
|
45
|
+
- Bootstrap-only carrier qualification proves only the qualified carrier/bootstrap facts it declares. It never proves Role identity, recipient identity, session-holder binding, work authority, project or organization context, Handoff acceptance, current work, or `grounded-to-act` readiness.
|
|
46
|
+
- The authoritative Workspace remains a `tiinex.workspace.v1` artifact. A package-local complete snapshot is a representation of that Workspace's source bytes, not the Workspace artifact itself.
|
|
35
47
|
- A Handoff Package may directly bind a carried Workspace artifact to one exact package-local complete Workspace snapshot when the relation exists only for this carrier and the package schema owns all qualification rules needed to re-establish that binding from the package bytes.
|
|
36
|
-
- That package-specific binding is not a `tiinex.workspace.representation.v1` artifact and does not activate generic Workspace Representation authority outside this carrier.
|
|
37
|
-
- A standalone `tiinex.external.payload.v1` artifact is not required for the same package-local Workspace snapshot when no independent payload identity, location, access, retention, or recovery semantics need to survive apart from the package binding.
|
|
48
|
+
- That package-specific complete binding is not a `tiinex.workspace.representation.v1` artifact and does not activate generic Workspace Representation authority outside this carrier.
|
|
49
|
+
- A standalone `tiinex.external.payload.v1` artifact is not required for the same package-local complete Workspace snapshot when no independent payload identity, location, access, retention, or recovery semantics need to survive apart from the package binding.
|
|
38
50
|
- A standalone `tiinex.workspace.representation.v1` artifact is not required for the same package-local complete snapshot when no independently selectable representation relation, bounded scope, multiple-representation choice, external provider contract, or separate representation lifecycle needs to survive apart from the package binding.
|
|
39
|
-
-
|
|
51
|
+
- When complete or bounded material needs independent representation semantics, the package selects a qualified `tiinex.workspace.representation.v1` artifact through `Material Representation Bindings`; the referenced representation, Workspace, Representation Payload authority, exact carried payload bytes, scope, correlation, and provider qualification remain owned by those artifacts.
|
|
52
|
+
- A Role, Handoff, Task, Evidence, or other artifact that appears only inside carried source material remains owned/interpreted through its own qualified artifact and representation closure. Package placement or byte presence does not create Role holder, recipient, participant, consent, delegation, organization membership, responsibility, or work ownership.
|
|
53
|
+
- A password-sealed Workspace binding always has independent payload access/recovery and cryptographic open semantics. Its ciphertext bytes therefore remain under `tiinex.external.payload.v1`, while deterministic non-secret profile, password-recipient-slot, open/recovery, and authentication semantics remain under `tiinex.transport.envelope.v1`.
|
|
54
|
+
- A sealed carrier binding may qualify as a carrier-level statement that one protected complete Workspace representation is present, but it never qualifies or activates the protected Workspace source provider while locked.
|
|
55
|
+
- Multiple protected Workspaces in one carrier remain independently protected: each has its own Transport Envelope, content key, protected payload, and recipient-slot set.
|
|
56
|
+
- In V1 Handoff-carrier mode, the authoritative selected Handoff route must remain visible through clear qualified source carriage. It may be satisfied by a clear verified complete Workspace Snapshot Binding or by a clear verified generic Workspace Representation binding whose qualified scope contains the exact authoritative Handoff artifact.
|
|
40
57
|
- Package-local `Parent` lineage among carrier artifacts may be intentionally manufactured as recipient continuity/navigation. Its semantic subject is the carrier artifact sequence only; it does not rewrite source-artifact Parent, Origin, ownership, authority, Role hierarchy, Handoff endpoints, or participation.
|
|
41
|
-
- Package-local Role Pointers are discovery/grounding aids only. Handoff endpoint and participation meaning remains owned by the authoritative Handoff and any separately authoritative typed Relation.
|
|
42
|
-
- Workspace placement of a Handoff Pointer is route-resolution navigation: it identifies the Workspace from which the authoritative Handoff is
|
|
43
|
-
-
|
|
58
|
+
- Package-local Role Pointers, when Handoff-carrier mode exposes them on the selected route closure, are discovery/grounding aids only. Handoff endpoint and participation meaning remains owned by the authoritative Handoff and any separately authoritative typed Relation.
|
|
59
|
+
- In Handoff-carrier mode, Workspace placement of a Handoff Pointer is route-resolution navigation: it identifies the owning Workspace/material scope from which the authoritative Handoff is resolved, not ownership or authority beyond that resolution fact.
|
|
60
|
+
- In pointerless Workspace-carrier mode, authoritative Handoff artifacts may exist incidentally inside carried qualified material, but package membership does not select, activate, or imply any such Handoff.
|
|
61
|
+
- Generic package transport text is a human projection from the Start/bootstrap contract and exists for every Package Role. Route-specific transport text exists only when one qualified Handoff route is explicitly selected; concrete delivery/recipient projection comes only from that Handoff's declared endpoint semantics.
|
|
62
|
+
- Transport text is not a new durable semantic artifact. Hosts may render or copy it, but hidden JSON sidecars, private manifests, application-local state, filename inference, or UI grouping must not become recipient authority.
|
|
63
|
+
- Package membership, path, filename, adjacency, archive entry order, digest equality, successful transport, or Role-artifact presence do not by themselves create semantic authority.
|
|
44
64
|
|
|
45
65
|
## Schema Validation Contract
|
|
46
66
|
|
|
@@ -52,9 +72,10 @@ Applies To
|
|
|
52
72
|
|
|
53
73
|
Rules
|
|
54
74
|
|
|
55
|
-
- `tiinex.handoff.package.v1` identifies artifacts whose main job is to declare one recipient-facing Handoff
|
|
75
|
+
- `tiinex.handoff.package.v1` identifies artifacts whose main job is to declare one recipient-facing carrier plus an explicit Handoff-route, pointerless qualified material, or bootstrap-only discovery contract.
|
|
56
76
|
- The package artifact must remain human-readable without a hidden compatibility manifest, application-local state, repository search, or manual archive archaeology.
|
|
57
77
|
- The package artifact must not become an exhaustive file inventory, verification receipt, Handoff duplicate, Workspace duplicate, generic workflow engine, or general transport ontology.
|
|
78
|
+
- A bootstrap-only package is valid only when its explicit Package Role and binding/route fields declare absence rather than manufacturing placeholder Workspace, Role, Handoff, or recipient artifacts.
|
|
58
79
|
- Prose outside `Schema Validation Contract` may explain the package but does not add machine requirements.
|
|
59
80
|
|
|
60
81
|
### Handoff Package Body
|
|
@@ -65,7 +86,9 @@ Required Shape
|
|
|
65
86
|
- `## Package Identity` section
|
|
66
87
|
- `## Bootstrap Exposure` section
|
|
67
88
|
- `## Workspace Snapshot Bindings` section
|
|
89
|
+
- `## Material Representation Bindings` section
|
|
68
90
|
- `## Route Discovery` section
|
|
91
|
+
- `## Transport Projection` section
|
|
69
92
|
- `## Carrier Continuity` section
|
|
70
93
|
- `## Qualification Boundary` section
|
|
71
94
|
- `## Interpretation Limits` section
|
|
@@ -79,8 +102,10 @@ Optional Sections
|
|
|
79
102
|
Rules
|
|
80
103
|
|
|
81
104
|
- Required sections must be readable and machine-extractable.
|
|
82
|
-
- `Workspace Snapshot Bindings` uses repeated named declarations
|
|
83
|
-
-
|
|
105
|
+
- `Workspace Snapshot Bindings` uses repeated named declarations or the sole literal entry `none`.
|
|
106
|
+
- `Material Representation Bindings` uses repeated named declarations or the sole literal entry `none`.
|
|
107
|
+
- The body must not reproduce the authoritative Handoff body, Workspace body, Role body, Workspace Representation body, or an exhaustive archive/file map.
|
|
108
|
+
- Binding-section absence must be explicit with `none`; an omitted section must not be interpreted as zero material.
|
|
84
109
|
|
|
85
110
|
### Package Identity
|
|
86
111
|
|
|
@@ -93,6 +118,8 @@ Field Value Constraints
|
|
|
93
118
|
|
|
94
119
|
- Package Role
|
|
95
120
|
- Allowed Value: recipient-facing-handoff-carrier
|
|
121
|
+
- Allowed Value: recipient-facing-workspace-carrier
|
|
122
|
+
- Allowed Value: recipient-facing-bootstrap-carrier
|
|
96
123
|
- Domain Policy: closed
|
|
97
124
|
- Carrier Kind
|
|
98
125
|
- Allowed Value: self-contained
|
|
@@ -100,9 +127,12 @@ Field Value Constraints
|
|
|
100
127
|
|
|
101
128
|
Rules
|
|
102
129
|
|
|
103
|
-
- `Package Role`
|
|
104
|
-
- `
|
|
105
|
-
- Package
|
|
130
|
+
- `Package Role: recipient-facing-handoff-carrier` means the package exposes one explicit selected Handoff route and retains exact Handoff-route semantics. The selected Handoff must be carried through one clear qualified source-material binding.
|
|
131
|
+
- `Package Role: recipient-facing-workspace-carrier` means the package carries one or more qualified Workspace-scoped source-material representations for recipient inspection, grounding, or landing without selecting any Handoff route. Material may be complete or intentionally bounded according to its owning binding semantics.
|
|
132
|
+
- `Package Role: recipient-facing-bootstrap-carrier` means the package intentionally carries zero Workspace Snapshot Bindings, zero Material Representation Bindings, and zero Handoff routes while still exposing Start plus qualified portable Tooling bootstrap.
|
|
133
|
+
- `Carrier Kind: self-contained` means every material source byte required by the declared Package Role is carried by the package according to its explicit bindings and, in Handoff-carrier mode, selected-route closure rules. For bootstrap-only mode this applies to the package/bootstrap material only and does not imply project/source Workspace material.
|
|
134
|
+
- Package Role is carrier semantics only. No Package Role creates Handoff transfer, endpoint, acceptance, completion, Workspace identity, current-work, project membership, organization membership, or Role-holder authority.
|
|
135
|
+
- Package identity does not create identity for contained Workspace, Handoff, Role, Pointer, Workspace Representation, External Payload, or other source artifacts.
|
|
106
136
|
|
|
107
137
|
### Bootstrap Exposure
|
|
108
138
|
|
|
@@ -135,20 +165,31 @@ Rules
|
|
|
135
165
|
|
|
136
166
|
Declaration Shape
|
|
137
167
|
|
|
138
|
-
- First-Level Hyphen List Item
|
|
168
|
+
- repeated First-Level Hyphen List Item declarations
|
|
169
|
+
- or the sole literal entry `none`
|
|
139
170
|
|
|
140
|
-
Required Fields
|
|
171
|
+
Common Required Fields
|
|
141
172
|
|
|
142
173
|
- Workspace Id
|
|
143
174
|
- Workspace Artifact
|
|
144
|
-
- Snapshot Path
|
|
145
|
-
- Workspace Artifact Inner Path
|
|
146
175
|
- Snapshot Kind
|
|
147
176
|
- Coverage
|
|
148
177
|
- Binding State
|
|
178
|
+
|
|
179
|
+
Clear-Snapshot Required Fields
|
|
180
|
+
|
|
181
|
+
- Snapshot Path
|
|
182
|
+
- Workspace Artifact Inner Path
|
|
149
183
|
- Integrity Method
|
|
150
184
|
- Integrity Value
|
|
151
185
|
|
|
186
|
+
Sealed-Snapshot Required Fields
|
|
187
|
+
|
|
188
|
+
- Protected Payload Descriptor
|
|
189
|
+
- Transport Envelope
|
|
190
|
+
- Protection State
|
|
191
|
+
- Post-Open Correlation Rule
|
|
192
|
+
|
|
152
193
|
Optional Fields
|
|
153
194
|
|
|
154
195
|
- Byte Size
|
|
@@ -162,39 +203,105 @@ Field Value Constraints
|
|
|
162
203
|
- Snapshot Path
|
|
163
204
|
- Allowed Shape: Markdown Link
|
|
164
205
|
- Domain Policy: closed
|
|
206
|
+
- Protected Payload Descriptor
|
|
207
|
+
- Allowed Shape: Markdown Link
|
|
208
|
+
- Domain Policy: closed
|
|
209
|
+
- Transport Envelope
|
|
210
|
+
- Allowed Shape: Markdown Link
|
|
211
|
+
- Domain Policy: closed
|
|
165
212
|
- Snapshot Kind
|
|
166
213
|
- Allowed Value: exact-workspace-byte-tree-archive
|
|
214
|
+
- Allowed Value: password-sealed-workspace-byte-tree
|
|
167
215
|
- Domain Policy: closed
|
|
168
216
|
- Coverage
|
|
169
217
|
- Allowed Value: complete
|
|
170
218
|
- Domain Policy: closed
|
|
171
219
|
- Binding State
|
|
172
220
|
- Allowed Value: verified
|
|
221
|
+
- Allowed Value: sealed
|
|
173
222
|
- Allowed Value: declared
|
|
174
223
|
- Allowed Value: unresolved
|
|
175
224
|
- Domain Policy: closed
|
|
176
225
|
- Integrity Method
|
|
177
226
|
- Allowed Value: sha256
|
|
178
227
|
- Domain Policy: closed
|
|
228
|
+
- Protection State
|
|
229
|
+
- Allowed Value: password-sealed
|
|
230
|
+
- Domain Policy: closed
|
|
231
|
+
- Post-Open Correlation Rule
|
|
232
|
+
- Allowed Value: unique-exact-workspace-artifact-byte-match
|
|
233
|
+
- Domain Policy: closed
|
|
179
234
|
|
|
180
235
|
Rules
|
|
181
236
|
|
|
237
|
+
- The literal `none` is allowed only as the sole `## Workspace Snapshot Bindings` entry. It declares that this package uses no package-local direct complete-Workspace shortcut and must not be replaced by a fake Workspace declaration.
|
|
182
238
|
- `Workspace Id` is a package-local readability/routing handle. It does not replace the Workspace artifact as semantic Workspace identity.
|
|
183
239
|
- `Workspace Artifact` must resolve to exactly one carried artifact whose Current Schema is `tiinex.workspace.v1`.
|
|
184
|
-
- `
|
|
185
|
-
- `
|
|
186
|
-
- `Snapshot
|
|
187
|
-
-
|
|
188
|
-
- `Integrity Method: sha256` and `Integrity Value` identify the exact package-member bytes at `Snapshot Path`. `Integrity Value` must be a lowercase 64-character hexadecimal SHA-256 digest.
|
|
189
|
-
- `Binding State: verified` is valid only when exact snapshot bytes, safe decoding, normalized path mapping, complete coverage, and exact Workspace-artifact inner-byte correlation have qualified. A receiver must requalify these facts from the carried bytes; the state is not a transport receipt or acceptance proof.
|
|
190
|
-
-
|
|
191
|
-
-
|
|
192
|
-
-
|
|
193
|
-
-
|
|
194
|
-
-
|
|
195
|
-
-
|
|
196
|
-
-
|
|
197
|
-
-
|
|
240
|
+
- `Coverage: complete` is required in both direct binding modes. `bounded`, `partial`, and `unknown` are not allowed in this package-local carrier shortcut; bounded source material belongs under `Material Representation Bindings` through `tiinex.workspace.representation.v1`.
|
|
241
|
+
- `Snapshot Kind: exact-workspace-byte-tree-archive` preserves the existing clear direct-binding shortcut. It requires `Snapshot Path`, `Workspace Artifact Inner Path`, `Integrity Method`, and `Integrity Value`; it forbids the sealed-only fields.
|
|
242
|
+
- In clear mode, `Snapshot Path` must resolve to one package-local payload entry containing the exact complete Workspace byte-tree snapshot for this binding. External URLs and inferred filenames are not allowed.
|
|
243
|
+
- In clear mode, `Workspace Artifact Inner Path` is the exact normalized Workspace-relative path at which the bound Workspace artifact must occur inside the snapshot.
|
|
244
|
+
- In clear mode, `Integrity Method: sha256` and `Integrity Value` identify the exact package-member bytes at `Snapshot Path`. `Integrity Value` must be a lowercase 64-character hexadecimal SHA-256 digest.
|
|
245
|
+
- In clear mode, `Binding State: verified` is valid only when exact snapshot bytes, safe decoding, normalized path mapping, complete coverage, and exact Workspace-artifact inner-byte correlation have qualified. A receiver must requalify these facts from the carried bytes; the state is not a transport receipt or acceptance proof.
|
|
246
|
+
- In clear mode, the archive root is fixed at `.`, Workspace-relative paths map by normalized identity-relative paths, and unsafe, absolute, traversal, duplicate-normalized, or ambiguous entries must fail qualification. Exact equality between the carried `Workspace Artifact` bytes and the entry at `Workspace Artifact Inner Path` is required.
|
|
247
|
+
- A verified clear package-local complete binding may activate only the package recipient's complete Workspace source provider for this exact carrier snapshot.
|
|
248
|
+
- `Snapshot Kind: password-sealed-workspace-byte-tree` declares a protected complete Workspace representation. It requires `Protected Payload Descriptor`, `Transport Envelope`, `Protection State`, and `Post-Open Correlation Rule`; it forbids `Snapshot Path`, `Workspace Artifact Inner Path`, `Integrity Method`, and `Integrity Value` so the package neither leaks protected internal paths nor duplicates ciphertext location/integrity authority.
|
|
249
|
+
- In sealed mode, `Protected Payload Descriptor` must resolve to exactly one carried artifact whose Current Schema is `tiinex.external.payload.v1`. That artifact remains the owner of protected payload identity, location, exact stored bytes, integrity, access, and recovery facts.
|
|
250
|
+
- In sealed mode, `Transport Envelope` must resolve to exactly one carried artifact whose Current Schema is `tiinex.transport.envelope.v1`. The envelope must reference the same `Workspace Artifact` and the same protected External Payload and its Workspace Binding Value must requalify against the exact visible Workspace Artifact bytes.
|
|
251
|
+
- `Protection State: password-sealed` and `Binding State: sealed` qualify only the carrier-level fact that one protected complete-intent representation and its opening contract are present. They do not qualify decrypted Workspace bytes and must leave the Workspace source provider inactive while locked.
|
|
252
|
+
- `Coverage: complete` on a sealed binding is the declared scope of the protected plaintext representation. It is not receiver verification of the hidden tree before authorized open.
|
|
253
|
+
- A sealed binding must expose no protected Workspace filename, directory, inner artifact path, path mapping, tree inventory, or plaintext byte facts in the outer carrier.
|
|
254
|
+
- `Post-Open Correlation Rule: unique-exact-workspace-artifact-byte-match` requires an authorized receiver, after successful authenticated open, to locate exactly one decrypted archive entry whose bytes exactly equal the visible `Workspace Artifact` bytes. Zero matches and multiple matches fail closed. Only after that unique match may its internal path be derived.
|
|
255
|
+
- After the unique post-open correlation succeeds, safe decoding, normalized path rules, complete coverage, ordinary Workspace representation/source qualification, schema validation, and integrity checks still apply before the Workspace provider becomes ready. Successful decryption alone is insufficient.
|
|
256
|
+
- `Binding State: verified` is invalid for sealed mode and `Binding State: sealed` is invalid for clear mode. `declared` and `unresolved` preserve prequalification states but do not satisfy a qualified Handoff carrier.
|
|
257
|
+
- `Byte Size`, when present, is a mechanical consistency aid only and does not replace exact byte integrity. For sealed mode, exact protected-payload size belongs to the External Payload unless the package repeats size only as a non-authoritative consistency aid.
|
|
258
|
+
- Each sealed Workspace binding is independent. One Transport Envelope, content key, password slot, or successful open must not grant or imply access to another protected Workspace binding.
|
|
259
|
+
- The clear direct-binding shortcut must not be exported, cached, or re-described as a generic `tiinex.workspace.representation.v1` relation unless that generic relation is separately materialized and qualified.
|
|
260
|
+
- Generic External Payload and Workspace Representation authority remains unchanged outside this carrier. If the Workspace-to-representation relation needs independent lifecycle, selection, bounded scope, multiple-representation choice, or generic provider authority beyond this package, materialize and qualify `tiinex.workspace.representation.v1` and carry it through `Material Representation Bindings` instead of widening this shortcut.
|
|
261
|
+
|
|
262
|
+
### Material Representation Bindings
|
|
263
|
+
|
|
264
|
+
Declaration Shape
|
|
265
|
+
|
|
266
|
+
- repeated First-Level Hyphen List Item declarations
|
|
267
|
+
- or the sole literal entry `none`
|
|
268
|
+
|
|
269
|
+
Required Fields
|
|
270
|
+
|
|
271
|
+
- Material Id
|
|
272
|
+
- Workspace Representation
|
|
273
|
+
- Carriage State
|
|
274
|
+
|
|
275
|
+
Optional Fields
|
|
276
|
+
|
|
277
|
+
- Notes
|
|
278
|
+
|
|
279
|
+
Field Value Constraints
|
|
280
|
+
|
|
281
|
+
- Workspace Representation
|
|
282
|
+
- Allowed Shape: Markdown Link
|
|
283
|
+
- Domain Policy: closed
|
|
284
|
+
- Carriage State
|
|
285
|
+
- Allowed Value: verified
|
|
286
|
+
- Allowed Value: unresolved
|
|
287
|
+
- Domain Policy: closed
|
|
288
|
+
|
|
289
|
+
Rules
|
|
290
|
+
|
|
291
|
+
- The literal `none` is allowed only as the sole `## Material Representation Bindings` entry. It declares that no generic Workspace Representation is selected for source-material carriage.
|
|
292
|
+
- `Material Id` is a package-local readability handle only. It is not artifact identity, Workspace identity, Role identity, Handoff identity, recipient identity, or provider identity.
|
|
293
|
+
- `Workspace Representation` must resolve to exactly one carried artifact whose Current Schema is `tiinex.workspace.representation.v1`.
|
|
294
|
+
- A `Carriage State: verified` binding requires the referenced Workspace Representation to qualify in a provider-ready `Binding State: verified` form with `Coverage: complete` or `Coverage: bounded`; `partial`, `unknown`, stale, declared, or unresolved representation states do not qualify a ready material binding.
|
|
295
|
+
- The referenced Workspace Representation remains the owner of the Workspace-to-representation relation, coverage/scope, path correlation, provider activation boundary, and selection semantics. Its referenced Workspace Artifact remains the semantic Workspace identity, and its referenced External Payload remains the owner of payload identity, location, exact payload-byte integrity, access, and recovery semantics.
|
|
296
|
+
- The package must carry the exact visible Workspace Representation artifact, its explicit Workspace Artifact endpoint, its explicit Representation Payload artifact, and the exact payload bytes required to requalify the selected binding. Missing or externally guessed closure fails closed.
|
|
297
|
+
- The package must not duplicate the referenced representation's coverage, scope, payload digest, mapping, provider, or path-set authority merely for convenience.
|
|
298
|
+
- For `Coverage: bounded`, the qualified decoded representation-entry set is the exact carried source-material scope. Omitted Workspace paths remain outside the representation and must not be inferred absent from the source Workspace.
|
|
299
|
+
- Material carriage through this section is clear/readable in V1. A locked or protected generic material representation does not satisfy `Carriage State: verified` unless a later explicit contract defines its protected generic-material opening semantics.
|
|
300
|
+
- A carried Role, Handoff, Task, Evidence, Decision, Relation, or other artifact inside the selected representation remains semantically governed by its own artifact and explicit relations. Presence in the representation/package does not create recipient, participant, holder, consent, delegation, organization membership, responsibility, work ownership, or acceptance.
|
|
301
|
+
- Package-local Pointers may aid discovery of represented artifacts only when their targets resolve through a qualified carried representation; the Pointer and package placement do not become ownership or endpoint authority.
|
|
302
|
+
- A Handoff-carrier selected route may resolve its authoritative Handoff target through a verified complete Workspace Snapshot Binding or through a verified clear Material Representation Binding whose qualified scope contains the exact Handoff artifact.
|
|
303
|
+
- A pointerless Workspace-carrier may use only Material Representation Bindings, only Workspace Snapshot Bindings, or both.
|
|
304
|
+
- A bootstrap-only carrier must declare `none` in both binding sections.
|
|
198
305
|
|
|
199
306
|
### Route Discovery
|
|
200
307
|
|
|
@@ -208,22 +315,68 @@ Field Value Constraints
|
|
|
208
315
|
|
|
209
316
|
- Route Placement Rule
|
|
210
317
|
- Allowed Value: authoritative-workspace-descended
|
|
318
|
+
- Allowed Value: none
|
|
211
319
|
- Domain Policy: closed
|
|
212
320
|
- Continue-From Rule
|
|
213
321
|
- Allowed Value: exact-package-local-handoff-pointer
|
|
322
|
+
- Allowed Value: none
|
|
214
323
|
- Domain Policy: closed
|
|
215
324
|
- Pre-Handoff Closure Rule
|
|
216
325
|
- Allowed Value: selected-pointer-carrier-ancestors
|
|
326
|
+
- Allowed Value: none
|
|
217
327
|
- Domain Policy: closed
|
|
218
328
|
|
|
219
329
|
Rules
|
|
220
330
|
|
|
221
|
-
- `Route Placement Rule: authoritative-workspace-descended`
|
|
222
|
-
- `
|
|
223
|
-
-
|
|
331
|
+
- `Package Role: recipient-facing-handoff-carrier` requires the exact triplet `Route Placement Rule: authoritative-workspace-descended`, `Continue-From Rule: exact-package-local-handoff-pointer`, and `Pre-Handoff Closure Rule: selected-pointer-carrier-ancestors`.
|
|
332
|
+
- `Package Role: recipient-facing-workspace-carrier` and `Package Role: recipient-facing-bootstrap-carrier` each require the exact triplet `Route Placement Rule: none`, `Continue-From Rule: none`, and `Pre-Handoff Closure Rule: none`.
|
|
333
|
+
- Mixed Route Discovery triplets are invalid and fail closed.
|
|
334
|
+
- In Handoff-carrier mode, `Route Placement Rule: authoritative-workspace-descended` means a package-local Handoff Pointer route is placed below the explicit owning Workspace/material branch from which the authoritative Handoff target is qualified. This placement is a route-resolution fact only.
|
|
335
|
+
- In Handoff-carrier mode, the authoritative selected Handoff target must be present through clear qualified source carriage: either a clear verified complete Workspace Snapshot Binding or a verified clear Material Representation Binding whose exact qualified scope includes the Handoff target. Password-sealed or unresolved material must not satisfy selected-route visibility in V1.
|
|
336
|
+
- In Handoff-carrier mode, `Continue-From Rule: exact-package-local-handoff-pointer` means the recipient is given one exact package-local Handoff Pointer path or an explicit qualified selection among such pointers. The route must not name, expose, guess, or defer an internal path inside locked/protected payload bytes.
|
|
337
|
+
- In Handoff-carrier mode, `Pre-Handoff Closure Rule: selected-pointer-carrier-ancestors` means route-specific material required before following the authoritative Handoff must be discoverable on the selected pointer's carrier-local ancestor closure and/or through the exact qualified carried representation explicitly selected by those ancestors.
|
|
224
338
|
- Carrier-local ancestor closure is a recipient discovery plan. It does not make ancestor placement semantic participation, delegation, authority precedence, source Parent truth, Required Context meaning, or Handoff endpoint identity.
|
|
225
|
-
- Package-local Role Pointers included on that closure remain `tiinex.pointer.v1` artifacts. Their placement permits pre-Handoff grounding only and must not be used to infer participation.
|
|
226
|
-
-
|
|
339
|
+
- Package-local Role Pointers included on that closure remain `tiinex.pointer.v1` artifacts. Their placement permits pre-Handoff grounding only and must not be used to infer participation, recipient identity, or session holder state.
|
|
340
|
+
- Required Context may reference another carried Workspace Snapshot Binding or Material Representation Binding. A locked or unresolved dependency remains unresolved until its owning contract qualifies; the clear authoritative selected Handoff route itself must remain resolvable.
|
|
341
|
+
- Carrier-sealed routing, encrypted selected Handoff-route discovery, hidden route manifests, and route inference after decryption are outside V1.
|
|
342
|
+
- In Handoff-carrier mode, all other selected-route qualification and Handoff Pointer rules remain unchanged, and the authoritative Handoff target remains the sole owner of Handoff transfer/endpoints.
|
|
343
|
+
- In pointerless Workspace-carrier mode, no package-local selected Handoff Pointer route may be exposed. Authoritative Handoff artifacts may exist incidentally inside carried qualified material, but package membership does not select or activate them.
|
|
344
|
+
- In bootstrap-only mode, no source-material or Handoff route may be inferred from Start, Tooling bootstrap, package filename, transport sender, UI account, or carrier history.
|
|
345
|
+
- `none` means absence of package-level Handoff route semantics. It must not be interpreted as an unknown Handoff, empty Handoff, implicit current Handoff, deferred route selection, or permission to infer a route later.
|
|
346
|
+
|
|
347
|
+
### Transport Projection
|
|
348
|
+
|
|
349
|
+
Required Fields
|
|
350
|
+
|
|
351
|
+
- Generic Transport Rule
|
|
352
|
+
- Route Transport Rule
|
|
353
|
+
- Recipient Projection Rule
|
|
354
|
+
|
|
355
|
+
Field Value Constraints
|
|
356
|
+
|
|
357
|
+
- Generic Transport Rule
|
|
358
|
+
- Allowed Value: start-artifact-instruction
|
|
359
|
+
- Domain Policy: closed
|
|
360
|
+
- Route Transport Rule
|
|
361
|
+
- Allowed Value: selected-handoff-route-instruction
|
|
362
|
+
- Allowed Value: none
|
|
363
|
+
- Domain Policy: closed
|
|
364
|
+
- Recipient Projection Rule
|
|
365
|
+
- Allowed Value: qualified-handoff-to-endpoint-only
|
|
366
|
+
- Allowed Value: none
|
|
367
|
+
- Domain Policy: closed
|
|
368
|
+
|
|
369
|
+
Rules
|
|
370
|
+
|
|
371
|
+
- `Generic Transport Rule: start-artifact-instruction` applies to every Package Role. It permits a human-readable instruction that identifies the exact package-local Start Artifact and tells the receiver to begin there and follow the qualified bootstrap path.
|
|
372
|
+
- Generic package transport text does not require or imply a Handoff route, recipient name, Role, session holder, project context, work authority, acceptance, or grounded-to-act readiness.
|
|
373
|
+
- `Package Role: recipient-facing-handoff-carrier` requires `Route Transport Rule: selected-handoff-route-instruction` and `Recipient Projection Rule: qualified-handoff-to-endpoint-only`.
|
|
374
|
+
- `Package Role: recipient-facing-workspace-carrier` and `Package Role: recipient-facing-bootstrap-carrier` require `Route Transport Rule: none` and `Recipient Projection Rule: none`.
|
|
375
|
+
- `Route Transport Rule: selected-handoff-route-instruction` permits route-specific human text to add the exact Continue-From Handoff Pointer after the generic Start instruction.
|
|
376
|
+
- `Recipient Projection Rule: qualified-handoff-to-endpoint-only` means a concrete delivery recipient label may be projected only from the exact qualified selected Handoff's declared `To` endpoint/capacity semantics. Carried Role artifacts, Workspace identity, package sender/receiver, UI account, repository, filename, route branch name, or transport destination must not manufacture that label.
|
|
377
|
+
- Generic and route-specific transport text are projections of already-authoritative carrier/Handoff artifacts. They are not new Tiinex artifacts, receipts, sidecars, manifests, or application-local semantic state.
|
|
378
|
+
- Hosts may render, copy, queue, or localize transport text mechanically, but must preserve the Start path, selected route when present, and recipient authority boundary. A host-private JSON structure may support UI mechanics only when it is not treated as semantic authority and is not required as a package source of truth.
|
|
379
|
+
- A package without a Handoff route may still support actions such as Copy Package, Copy Transport Text, or Close. It must not invent recipient rows or fake child Handoffs to make those actions available.
|
|
227
380
|
|
|
228
381
|
### Carrier Continuity
|
|
229
382
|
|
|
@@ -274,10 +427,17 @@ Field Value Constraints
|
|
|
274
427
|
|
|
275
428
|
Rules
|
|
276
429
|
|
|
277
|
-
- `Receiver Qualification: reverify-carried-authority-and-bytes` requires the recipient to validate the visible package artifacts,
|
|
278
|
-
-
|
|
279
|
-
-
|
|
280
|
-
-
|
|
430
|
+
- `Receiver Qualification: reverify-carried-authority-and-bytes` requires the recipient to validate the visible package artifacts, Start/bootstrap authority and exact bootstrap bytes, every declared source-material binding and its owning byte authority, required source correlation appropriate to that binding mode, and, in Handoff-carrier mode, the selected clear route rather than trusting placement or a sender-side receipt.
|
|
431
|
+
- A bootstrap-only carrier qualifies without a Workspace/material provider only when Package Role, both binding sections, Route Discovery, and Transport Projection all consistently declare bootstrap-only absence and the Start/bootstrap carrier closure itself qualifies.
|
|
432
|
+
- For a clear direct Workspace Snapshot Binding, receiver qualification includes exact snapshot bytes, digest, safe decode, complete coverage, and exact `Workspace Artifact Inner Path` byte correlation.
|
|
433
|
+
- For a sealed direct Workspace Snapshot Binding, receiver qualification while locked includes the visible Workspace Artifact, External Payload descriptor, exact protected payload bytes and integrity under that descriptor, Transport Envelope metadata, envelope-to-payload/workspace consistency, and Workspace Binding Value. Carrier qualification while locked must not be reported as qualification of the hidden Workspace bytes or source provider.
|
|
434
|
+
- For a Material Representation Binding, receiver qualification includes the visible Workspace Representation artifact, its explicit Workspace and External Payload endpoints, the exact payload bytes used, the representation's declared complete/bounded scope, correlation, and provider-ready qualification. Package placement or duplicate bytes do not substitute for that closure.
|
|
435
|
+
- After authorized authenticated open of a sealed direct Workspace binding, the receiver must apply the declared unique exact Workspace-artifact byte correlation rule and then ordinary complete Workspace representation, safe-path, schema, and integrity qualification before provider activation.
|
|
436
|
+
- Wrong password, unavailable/unsupported declared profile, malformed slot or profile metadata, missing protected bytes, payload-integrity mismatch, authentication failure, truncation, zero/multiple post-open Workspace-artifact matches, unsafe path recovery, incomplete recovered coverage, missing generic representation closure, bounded-scope mismatch, or unqualified selected-route material fails closed.
|
|
437
|
+
- A Required Context dependency that has not completed the qualification required by its owning material contract remains unresolved for work that depends on it.
|
|
438
|
+
- `Failure Policy: fail-closed` means missing, ambiguous, stale, unsafe, mismatched, locked-required, unqualified required material, inconsistent Package Role/binding/route fields, or recipient projection without a qualified Handoff endpoint blocks dependent qualification instead of being repaired by filename guessing, repository-global search, hidden network access, compatibility metadata, UI state, or secret fallback.
|
|
439
|
+
- `Derived Inventory Authority: none` means generated manifests, indexes, checksums, compatibility JSON, file maps, archive listings, UI queue state, and host-private transport models may support mechanical verification/presentation but do not override the visible semantic artifacts and exact bytes unless another explicit schema grants them authority.
|
|
440
|
+
- A checksum match, successful cryptographic authentication, successful archive open, Role-artifact presence, or successful transport does not prove semantic correctness, provenance, authorship, acceptance, participation, holder identity, recipient identity, source ownership, or work authority beyond the exact qualified binding facts.
|
|
281
441
|
|
|
282
442
|
### Interpretation Limits
|
|
283
443
|
|
|
@@ -292,9 +452,18 @@ Rules
|
|
|
292
452
|
|
|
293
453
|
- `Does Not Mean` must name important interpretations the package does not support.
|
|
294
454
|
- `Must Not Be Used To Claim` must name claims requiring separate authority.
|
|
295
|
-
- `Generic Payload Boundary` must preserve `tiinex.external.payload.v1` for payload identity/location/integrity/access/recovery semantics that have independent value outside
|
|
455
|
+
- `Generic Payload Boundary` must preserve `tiinex.external.payload.v1` for payload identity/location/integrity/access/recovery semantics that have independent value outside a package-local direct complete binding.
|
|
296
456
|
- `Generic Representation Boundary` must preserve `tiinex.workspace.representation.v1` for independently meaningful Workspace representation relations, including bounded scope, multiple selectable representations, generic provider activation, or separate relation lifecycle.
|
|
297
|
-
-
|
|
457
|
+
- Bootstrap-only qualification must not be used to claim source-material carriage, Workspace identity, Role presence, project/organization context, work authority, current Task, recipient identity, session-holder binding, Handoff acceptance, or grounded-to-act readiness.
|
|
458
|
+
- Workspace/material-carrier mode is not a Handoff and does not transfer work or responsibility.
|
|
459
|
+
- Workspace/material-carrier mode does not establish `From`, `To`, recipient capacity, Role holder, acceptance, completion, current Task, current Workspace, or continuation target.
|
|
460
|
+
- Handoff-carrier mode creates no endpoint meaning beyond the exact selected Handoff. Carried Role/context material may support grounding, but its presence never identifies `To`, `From`, a holder, participant, member, owner, delegate, or consenting party.
|
|
461
|
+
- Package creator, transport sender or receiver, repository actor, selected Workspace, UI account, package membership, Workspace identity, Role presence, file placement, carrier dimension, and surrounding context must not be promoted into Handoff endpoint, Role, current-work, transfer, acceptance, participation, project membership, or organization membership semantics.
|
|
462
|
+
- If bounded work or responsibility transfer, Handoff Required Context, recipient Role grounding, or a completion-facing continuation is needed, the operator must create or select a qualified `tiinex.handoff.v1` artifact and use Handoff-carrier mode.
|
|
463
|
+
- Generic transport text may exist without a Handoff route, but concrete recipient/delivery projection must not.
|
|
464
|
+
- Password-sealed direct binding semantics must preserve `tiinex.transport.envelope.v1` as the owner of deterministic non-secret cryptographic profile, recipient-slot, open/recovery, and authentication metadata. Handoff Package must not absorb those semantics merely because it carries the envelope and ciphertext.
|
|
465
|
+
- Protected ciphertext identity, location, exact stored-byte integrity, access, and recovery facts remain under the referenced `tiinex.external.payload.v1`.
|
|
466
|
+
- A Handoff Package must not be used as a Handoff, Workspace, Role, Relation, External Payload, Workspace Representation, preservation record, delivery receipt, acceptance record, provenance record, project-membership record, or generic semantic package.
|
|
298
467
|
- Package membership and discovery do not prove authority over contained source artifacts.
|
|
299
468
|
|
|
300
469
|
### File Naming
|
|
@@ -312,7 +481,11 @@ Rules
|
|
|
312
481
|
|
|
313
482
|
### Creation Scope
|
|
314
483
|
|
|
315
|
-
Create `tiinex.handoff.package.v1` only when one self-contained recipient-facing
|
|
484
|
+
Create `tiinex.handoff.package.v1` only when one self-contained recipient-facing carrier needs a durable identity/discovery contract for one of these jobs:
|
|
485
|
+
|
|
486
|
+
- exact selected Handoff-route carriage with clear qualified route material;
|
|
487
|
+
- pointerless qualified Workspace-scoped source-material carriage through complete package-local snapshot bindings and/or generic complete/bounded Workspace Representation bindings;
|
|
488
|
+
- bootstrap-only Start + portable Tooling carriage with no project/source material and no Handoff route.
|
|
316
489
|
|
|
317
490
|
Do not create this schema merely because a ZIP exists.
|
|
318
491
|
|
|
@@ -323,10 +496,14 @@ Do not create this schema merely because a ZIP exists.
|
|
|
323
496
|
- Start Artifact
|
|
324
497
|
- Tooling Bootstrap Descriptor
|
|
325
498
|
- Bootstrap Rule
|
|
326
|
-
- one or more qualified
|
|
499
|
+
- Workspace Snapshot Bindings section, using one or more qualified direct complete bindings or `none`
|
|
500
|
+
- Material Representation Bindings section, using one or more qualified generic representation bindings or `none`
|
|
327
501
|
- Route Placement Rule
|
|
328
502
|
- Continue-From Rule
|
|
329
503
|
- Pre-Handoff Closure Rule
|
|
504
|
+
- Generic Transport Rule
|
|
505
|
+
- Route Transport Rule
|
|
506
|
+
- Recipient Projection Rule
|
|
330
507
|
- Carrier Dimension
|
|
331
508
|
- Carrier Checkpoint
|
|
332
509
|
- Receiver Qualification
|
|
@@ -337,22 +514,34 @@ Do not create this schema merely because a ZIP exists.
|
|
|
337
514
|
### Generation Rules
|
|
338
515
|
|
|
339
516
|
- Keep the package artifact narrow and human-readable.
|
|
340
|
-
-
|
|
341
|
-
-
|
|
342
|
-
-
|
|
517
|
+
- Do not create placeholder Workspace, Role, Handoff, Pointer, or material declarations merely to avoid an empty binding section.
|
|
518
|
+
- `recipient-facing-bootstrap-carrier` requires `none` in both binding sections and no Handoff route.
|
|
519
|
+
- `recipient-facing-workspace-carrier` requires at least one qualified source-material binding across the two binding sections and no Handoff route.
|
|
520
|
+
- `recipient-facing-handoff-carrier` requires one explicit selected Handoff route plus clear qualified source carriage containing its authoritative Handoff target.
|
|
521
|
+
- Bind only complete Workspace carriage in the package-local direct snapshot shortcut: either a clear exact complete snapshot or a password-sealed complete-intent representation.
|
|
522
|
+
- Use `Material Representation Bindings` when complete/bounded Workspace Representation semantics must survive independently, including intentionally bounded Role/context material or generic provider selection.
|
|
523
|
+
- Preserve the Workspace artifact as semantic Workspace identity and the Workspace Representation/External Payload artifacts as owners of generic representation/payload meaning.
|
|
524
|
+
- For clear direct bindings, preserve the package-local snapshot path, inner Workspace-artifact path, and exact snapshot digest shortcut.
|
|
525
|
+
- For sealed direct bindings, require one explicit External Payload descriptor and one `tiinex.transport.envelope.v1` artifact; do not duplicate ciphertext path/integrity or cryptographic profile/recipient-slot fields into Handoff Package.
|
|
526
|
+
- Do not expose a protected Workspace's internal path/tree inventory in the outer package. Post-open correlation derives the Workspace artifact's internal path only after a unique exact-byte match succeeds.
|
|
343
527
|
- Keep bootstrap/cache payload descriptors under their own owning schemas.
|
|
344
|
-
- Do not duplicate Handoff parties, transfers, Required Context, Role participation,
|
|
345
|
-
- Do not materialize receipt/checksum/index artifacts merely because Tooling can compute them.
|
|
346
|
-
-
|
|
528
|
+
- Do not duplicate Handoff parties, transfers, Required Context, Role participation, Workspace body content, Workspace Representation scope, or External Payload digest authority.
|
|
529
|
+
- Do not materialize receipt/checksum/index/JSON sidecar artifacts merely because Tooling can compute them.
|
|
530
|
+
- Generic transport text is projected from `Start Artifact`. Route-specific text and any recipient label are projected only from a qualified selected Handoff route and its endpoint semantics.
|
|
531
|
+
- In Handoff-carrier mode, fail closed when the selected authoritative Handoff target cannot be qualified through clear carried source material.
|
|
532
|
+
- In pointerless Workspace-carrier or bootstrap-only mode, fail closed if a selected Handoff route or package-local Handoff Pointer route is supplied.
|
|
533
|
+
- Do not silently switch Package Role because route/material qualification fails; the declared Package Role controls intended carrier semantics and inconsistent fields are an error.
|
|
347
534
|
|
|
348
535
|
## Minimal Example
|
|
349
536
|
|
|
537
|
+
Bootstrap-only carriage may use this shape:
|
|
538
|
+
|
|
350
539
|
```md
|
|
351
540
|
# Handoff Package
|
|
352
541
|
|
|
353
542
|
## Package Identity
|
|
354
543
|
|
|
355
|
-
- Package Role: recipient-facing-
|
|
544
|
+
- Package Role: recipient-facing-bootstrap-carrier
|
|
356
545
|
- Carrier Kind: self-contained
|
|
357
546
|
|
|
358
547
|
## Bootstrap Exposure
|
|
@@ -363,10 +552,88 @@ Do not create this schema merely because a ZIP exists.
|
|
|
363
552
|
|
|
364
553
|
## Workspace Snapshot Bindings
|
|
365
554
|
|
|
555
|
+
- none
|
|
556
|
+
|
|
557
|
+
## Material Representation Bindings
|
|
558
|
+
|
|
559
|
+
- none
|
|
560
|
+
|
|
561
|
+
## Route Discovery
|
|
562
|
+
|
|
563
|
+
- Route Placement Rule: none
|
|
564
|
+
- Continue-From Rule: none
|
|
565
|
+
- Pre-Handoff Closure Rule: none
|
|
566
|
+
|
|
567
|
+
## Transport Projection
|
|
568
|
+
|
|
569
|
+
- Generic Transport Rule: start-artifact-instruction
|
|
570
|
+
- Route Transport Rule: none
|
|
571
|
+
- Recipient Projection Rule: none
|
|
572
|
+
|
|
573
|
+
## Carrier Continuity
|
|
574
|
+
|
|
575
|
+
- Carrier Dimension: 001
|
|
576
|
+
- Carrier Checkpoint: major
|
|
577
|
+
- Major Reason: establish qualified portable Tiinex bootstrap without project/source material
|
|
578
|
+
|
|
579
|
+
## Qualification Boundary
|
|
580
|
+
|
|
581
|
+
- Receiver Qualification: reverify-carried-authority-and-bytes
|
|
582
|
+
- Failure Policy: fail-closed
|
|
583
|
+
- Derived Inventory Authority: none
|
|
584
|
+
|
|
585
|
+
## Interpretation Limits
|
|
586
|
+
|
|
587
|
+
- Does Not Mean: a Role, recipient, project, Workspace, Task, Handoff or source-material context was carried
|
|
588
|
+
- Must Not Be Used To Claim: session holder binding, work authority, project membership, Handoff acceptance or grounded-to-act readiness
|
|
589
|
+
- Generic Payload Boundary: bootstrap payload identity/integrity remains under its External Payload descriptor
|
|
590
|
+
- Generic Representation Boundary: no Workspace Representation is asserted by this bootstrap-only package
|
|
591
|
+
```
|
|
592
|
+
|
|
593
|
+
Generic human transport text for this carrier may identify only the Start artifact, for example “Cold start: read Start directly … Start: `001-1-READ-BEFORE-PROCEEDING.trace.md`”. It does not require a fake recipient or Continue-From line.
|
|
594
|
+
|
|
595
|
+
Bounded contextual material without a selected Handoff may use pointerless Workspace-carrier mode:
|
|
596
|
+
|
|
597
|
+
```md
|
|
598
|
+
- Package Role: recipient-facing-workspace-carrier
|
|
599
|
+
|
|
600
|
+
## Workspace Snapshot Bindings
|
|
601
|
+
|
|
602
|
+
- none
|
|
603
|
+
|
|
604
|
+
## Material Representation Bindings
|
|
605
|
+
|
|
606
|
+
- role-context
|
|
607
|
+
- Material Id: role-context
|
|
608
|
+
- Workspace Representation: [Bounded Business Role Context](001-3-business-role-context-representation.trace.md)
|
|
609
|
+
- Carriage State: verified
|
|
610
|
+
|
|
611
|
+
## Route Discovery
|
|
612
|
+
|
|
613
|
+
- Route Placement Rule: none
|
|
614
|
+
- Continue-From Rule: none
|
|
615
|
+
- Pre-Handoff Closure Rule: none
|
|
616
|
+
|
|
617
|
+
## Transport Projection
|
|
618
|
+
|
|
619
|
+
- Generic Transport Rule: start-artifact-instruction
|
|
620
|
+
- Route Transport Rule: none
|
|
621
|
+
- Recipient Projection Rule: none
|
|
622
|
+
```
|
|
623
|
+
|
|
624
|
+
The referenced Workspace Representation owns the exact complete/bounded source scope and its External Payload closure. If that bounded source happens to contain an Anchor, Axiom, Loom, Sigma, Kodax, or other Role artifact, that presence is context only; it is not a package recipient/holder/participant declaration.
|
|
625
|
+
|
|
626
|
+
Mixed clear-route plus sealed or bounded Required Context carriage may use Handoff-carrier mode. The selected route itself must resolve through clear qualified source material:
|
|
627
|
+
|
|
628
|
+
```md
|
|
629
|
+
- Package Role: recipient-facing-handoff-carrier
|
|
630
|
+
|
|
631
|
+
## Workspace Snapshot Bindings
|
|
632
|
+
|
|
366
633
|
- docs
|
|
367
634
|
- Workspace Id: docs
|
|
368
|
-
- Workspace Artifact: [Docs Workspace](001-
|
|
369
|
-
- Snapshot Path: [Docs Snapshot](001-
|
|
635
|
+
- Workspace Artifact: [Docs Workspace](001-3-docs.workspace.md)
|
|
636
|
+
- Snapshot Path: [Docs Snapshot](001-3-docs-workspace.zip)
|
|
370
637
|
- Workspace Artifact Inner Path: .topics/.workspaces/tiinex-docs.workspace.md
|
|
371
638
|
- Snapshot Kind: exact-workspace-byte-tree-archive
|
|
372
639
|
- Coverage: complete
|
|
@@ -374,36 +641,32 @@ Do not create this schema merely because a ZIP exists.
|
|
|
374
641
|
- Integrity Method: sha256
|
|
375
642
|
- Integrity Value: <64 lowercase hexadecimal characters>
|
|
376
643
|
|
|
644
|
+
## Material Representation Bindings
|
|
645
|
+
|
|
646
|
+
- business-role-context
|
|
647
|
+
- Material Id: business-role-context
|
|
648
|
+
- Workspace Representation: [Bounded Business Role Context](001-4-business-role-context-representation.trace.md)
|
|
649
|
+
- Carriage State: verified
|
|
650
|
+
|
|
377
651
|
## Route Discovery
|
|
378
652
|
|
|
379
653
|
- Route Placement Rule: authoritative-workspace-descended
|
|
380
654
|
- Continue-From Rule: exact-package-local-handoff-pointer
|
|
381
655
|
- Pre-Handoff Closure Rule: selected-pointer-carrier-ancestors
|
|
382
656
|
|
|
383
|
-
##
|
|
384
|
-
|
|
385
|
-
- Carrier Dimension: 001-1
|
|
386
|
-
- Parent Carrier Dimension: 001
|
|
387
|
-
- Carrier Checkpoint: progression
|
|
388
|
-
|
|
389
|
-
## Qualification Boundary
|
|
390
|
-
|
|
391
|
-
- Receiver Qualification: reverify-carried-authority-and-bytes
|
|
392
|
-
- Failure Policy: fail-closed
|
|
393
|
-
- Derived Inventory Authority: none
|
|
657
|
+
## Transport Projection
|
|
394
658
|
|
|
395
|
-
|
|
396
|
-
|
|
397
|
-
-
|
|
398
|
-
- Must Not Be Used To Claim: recipient acceptance, Handoff completion, source provenance, or Role authority
|
|
399
|
-
- Generic Payload Boundary: use External Payload when package-local snapshot bytes need independent payload semantics
|
|
400
|
-
- Generic Representation Boundary: use Workspace Representation when the Workspace representation relation needs independent, bounded, selectable, or generic provider semantics
|
|
659
|
+
- Generic Transport Rule: start-artifact-instruction
|
|
660
|
+
- Route Transport Rule: selected-handoff-route-instruction
|
|
661
|
+
- Recipient Projection Rule: qualified-handoff-to-endpoint-only
|
|
401
662
|
```
|
|
402
663
|
|
|
664
|
+
The route-specific human transport projection may add the exact Continue-From pointer and may label a delivery recipient only from the selected Handoff's qualified `To` endpoint. The bounded Role context still does not create that recipient.
|
|
665
|
+
|
|
403
666
|
---
|
|
404
667
|
|
|
405
668
|
# Continuity Integrity
|
|
406
669
|
|
|
407
670
|
- [sha256-base64url-c14n-v2](https://github.com/Tiinex/docs/blob/3988951208eb9a8926e84ab42625d4b42fa00c2d/.topics/.validators/sha256-base64url-c14n-v2.validator.md)
|
|
408
671
|
- Towards: self
|
|
409
|
-
- Value:
|
|
672
|
+
- Value: Tsl2YQ8lJo9TsPnRmbdwpSLtf7hnmLSiUBXvrAxDFCk
|