@receiz/ai-skills 121.0.0 → 123.0.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.
Files changed (88) hide show
  1. package/README.md +19 -11
  2. package/SKILLS.md +23 -38
  3. package/package.json +5 -2
  4. package/receiz-app-builder-skill/manifest.json +158 -38
  5. package/receiz-architecture/SKILL.md +1 -1
  6. package/receiz-architecture/manifest.json +158 -38
  7. package/receiz-authority-security/SKILL.md +1 -1
  8. package/receiz-authority-security/manifest.json +158 -38
  9. package/receiz-autonomous-mandate/SKILL.md +7 -6
  10. package/receiz-autonomous-mandate/manifest.json +158 -38
  11. package/receiz-autonomous-mandate/references/examples.md +2 -0
  12. package/receiz-autonomous-mandate/references/mcp-map.md +4 -9
  13. package/receiz-autonomous-mandate/references/sdk-map.md +6 -9
  14. package/receiz-autonomous-mandate/tests/contracts.json +4 -2
  15. package/receiz-bearer-ownership/manifest.json +158 -38
  16. package/receiz-build-production-system/SKILL.md +1 -1
  17. package/receiz-build-production-system/manifest.json +158 -38
  18. package/receiz-causal-sync/SKILL.md +1 -1
  19. package/receiz-causal-sync/manifest.json +158 -38
  20. package/receiz-command-builder/SKILL.md +1 -1
  21. package/receiz-command-builder/manifest.json +158 -38
  22. package/receiz-constitutional-laws/SKILL.md +1 -1
  23. package/receiz-constitutional-laws/manifest.json +158 -38
  24. package/receiz-cross-app-state/manifest.json +158 -38
  25. package/receiz-deterministic-replay/SKILL.md +1 -1
  26. package/receiz-deterministic-replay/manifest.json +158 -38
  27. package/receiz-domain-builder/SKILL.md +1 -1
  28. package/receiz-domain-builder/manifest.json +158 -38
  29. package/receiz-event-derived-memory/manifest.json +158 -38
  30. package/receiz-global-reconciliation/manifest.json +190 -38
  31. package/receiz-identity-profile/manifest.json +158 -38
  32. package/receiz-live-proof-character/manifest.json +158 -38
  33. package/receiz-living-subject/SKILL.md +11 -8
  34. package/receiz-living-subject/manifest.json +172 -40
  35. package/receiz-living-subject/references/examples.md +4 -0
  36. package/receiz-living-subject/references/mcp-map.md +7 -8
  37. package/receiz-living-subject/references/sdk-map.md +10 -11
  38. package/receiz-living-subject/tests/contracts.json +5 -2
  39. package/receiz-migrations/SKILL.md +1 -1
  40. package/receiz-migrations/manifest.json +158 -38
  41. package/receiz-multi-subject-transaction/SKILL.md +7 -6
  42. package/receiz-multi-subject-transaction/manifest.json +158 -38
  43. package/receiz-multi-subject-transaction/references/examples.md +4 -0
  44. package/receiz-multi-subject-transaction/references/mcp-map.md +6 -4
  45. package/receiz-multi-subject-transaction/references/sdk-map.md +8 -7
  46. package/receiz-multi-subject-transaction/tests/contracts.json +5 -2
  47. package/receiz-observability/SKILL.md +1 -1
  48. package/receiz-observability/manifest.json +158 -38
  49. package/receiz-offline-command/manifest.json +158 -38
  50. package/receiz-offline-first/SKILL.md +1 -1
  51. package/receiz-offline-first/manifest.json +158 -38
  52. package/receiz-offline-verifier-skill/manifest.json +158 -38
  53. package/receiz-performance/SKILL.md +1 -1
  54. package/receiz-performance/manifest.json +158 -38
  55. package/receiz-portable-artifacts/SKILL.md +1 -1
  56. package/receiz-portable-artifacts/manifest.json +158 -38
  57. package/receiz-portable-continuity/manifest.json +158 -38
  58. package/receiz-proof-authority/SKILL.md +45 -0
  59. package/receiz-proof-authority/agents/openai.yaml +4 -0
  60. package/receiz-proof-authority/manifest.json +855 -0
  61. package/receiz-proof-authority/references/sdk-map.md +9 -0
  62. package/receiz-proof-media/manifest.json +158 -38
  63. package/receiz-proof-skill/manifest.json +158 -38
  64. package/receiz-receipt-admission/manifest.json +158 -38
  65. package/receiz-release/SKILL.md +1 -1
  66. package/receiz-release/manifest.json +158 -38
  67. package/receiz-subject-twin/manifest.json +158 -38
  68. package/receiz-testing/SKILL.md +1 -1
  69. package/receiz-testing/manifest.json +158 -38
  70. package/receiz-value-execution/SKILL.md +46 -0
  71. package/receiz-value-execution/agents/openai.yaml +4 -0
  72. package/receiz-value-execution/manifest.json +857 -0
  73. package/receiz-value-execution/references/sdk-map.md +8 -0
  74. package/receiz-value-rails/SKILL.md +51 -0
  75. package/receiz-value-rails/agents/openai.yaml +4 -0
  76. package/receiz-value-rails/manifest.json +858 -0
  77. package/receiz-value-rails/references/examples.md +13 -0
  78. package/receiz-value-rails/references/mcp-map.md +6 -0
  79. package/receiz-value-rails/references/sdk-map.md +9 -0
  80. package/receiz-value-rails/tests/contracts.json +5 -0
  81. package/receiz-world-event-runtime/SKILL.md +9 -6
  82. package/receiz-world-event-runtime/manifest.json +158 -38
  83. package/receiz-world-event-runtime/references/examples.md +4 -0
  84. package/receiz-world-event-runtime/references/mcp-map.md +7 -7
  85. package/receiz-world-event-runtime/references/sdk-map.md +9 -8
  86. package/receiz-world-event-runtime/tests/contracts.json +5 -2
  87. package/scripts/validate-skills.mjs +15 -8
  88. package/skills.json +175 -37
package/README.md CHANGED
@@ -1,8 +1,14 @@
1
1
  # Receiz AI Skills
2
2
 
3
- The `121.0.0` package is a registry-bound operating-contract distribution beneath Receiz proof authority. AI instructions, MCP confirmations, JSON objects, database rows, staging references, and receipts never become proof or runtime authority.
3
+ The `123.0.0` package is a registry-bound operating-contract distribution beneath Receiz proof authority. AI instructions, MCP confirmations, OAuth/OIDC grants, JSON objects, database rows, staging references, and receipts never become proof or runtime authority.
4
4
 
5
- ## V120 artifact authority chain
5
+ ## V123 Intent Becomes Lawful Action
6
+
7
+ The object is authority. V123 gives every application the canonical completion rails required to turn object-carried intent into deterministic remote action: live Phi execution through distinct Settlement and Reserve rails; canonical public world planning; authoritative rail scopes; exact-head subject namespaces; and short-lived proof-to-authority exchange after explicit in-application consent without redirecting the person to receiz.com.
8
+
9
+ The edge verifies and retains the proof object. The server independently gates the requested append or execution. Database state provides projection, sync and recovery beneath admitted proof heads. Phi is moved value; USD is display-only from the canonical deterministic price. Ambiguous execution resolves exactly as committed, zero-write, or unknown before retry.
10
+
11
+ ## Established artifact authority chain
6
12
 
7
13
  V120 carries two established proof-object laws unchanged:
8
14
  `receiz.native_capture.v1` binds exact bytes from Receiz's dedicated camera
@@ -18,7 +24,9 @@ Exact bytes cross a process only as bytes and require `reverify-exact-bytes`. Ve
18
24
 
19
25
  The single current MCP artifact inventory contains nine tools: `receiz_artifact_verify`, `receiz_artifact_admit`, `receiz_artifact_append_plan`, `receiz_artifact_transition_seal_and_stage`, `receiz_artifact_transition_commit`, `receiz_artifact_global_resolve`, `receiz_artifact_reconcile_plan`, `receiz_artifact_reconcile_stage`, and `receiz_artifact_reconcile_commit`. The first five are also the explicitly historical v112 compatibility inventory, not a second current surface. A sealed candidate is a proof object but not the accepted head. Stage writes no head and its reference is non-authoritative. Commit resolves and reverifies staged bytes before atomic named-domain acceptance. `COMMIT_DOMAIN_MISMATCH` is distinct from same-domain `IDEMPOTENCY_CONFLICT`; registry-derived effects stay outside the portable transition digest; unknown namespaces remain byte-preserved.
20
26
 
21
- The same v120 package carries 37 living-subject MCP tools: subject resolve/state/history/memory/relationships/inventory; subject Twin profile/message/mind export/import planning; mandate get/plan/activate/pause/revoke; world additions/command plan/validate/execute/transaction plan/execute/receipt/replay; subject runtime enqueue/status/cancel; living-subject conformance; proof-brain head/search/resolve/stream; and bearer preview/issue/inspect/claim/cancel/status. Each generated skill map binds those exact names to SDK primitives, strict input/output types, source primitive, registry/reducer digests, zero-write failure, and the non-authority boundary.
27
+ The same package carries 37 inherited living-subject MCP tools: subject resolve/state/history/memory/relationships/inventory; subject Twin profile/message/mind export/import planning; mandate get/plan/activate/pause/revoke; world additions/command plan/validate/execute/transaction plan/execute/receipt/replay; subject runtime enqueue/status/cancel; living-subject conformance; proof-brain head/search/resolve/stream; and bearer preview/issue/inspect/claim/cancel/status. Each generated skill map binds those exact names to SDK primitives, strict input/output types, source primitive, registry/reducer digests, zero-write failure, and the non-authority boundary.
28
+
29
+ The inherited v122 protocol adds 19 MCP operations for durable remote proof-object admission and authenticated subject state; edge-held proof bundles and append-only public access-key bindings; locally encrypted private/invited world commands; exact validation, execution, outcome recovery, and filtered additions; first-class mandate issue/state/revoke; atomic multi-world planning/execution; and explicit Phi Settlement/Reserve planning. Its stable v122 protocol identifiers remain intentionally unchanged in v123.
22
30
 
23
31
  `client.admission.browserStore` is durable admission coordination only: it stores no proof object or sealed artifact bytes and never blocks known-artifact first paint. V120 production reconciliation preserves the provider-neutral `client.coordination` rail and never exposes Supabase mechanics. Receiz-generated files retain declared ownership, while `receiz.extensions.ts` is developer-owned and must never be overwritten.
24
32
 
@@ -27,13 +35,13 @@ Receiz applications. Fifteen focused constitutional skills supply architecture,
27
35
  domain, law, command, authority, replay, offline, causal, artifact, migration,
28
36
  performance, observability, testing, and release contracts. The earlier nine
29
37
  domain skill names remain packaged for compatibility. Seven operation skill names first introduced in obsolete-versioned now
30
- describe current v121 outcomes for identity profiles, portable continuity, bearer ownership, offline transport,
38
+ describe current outcomes for identity profiles, portable continuity, bearer ownership, offline transport,
31
39
  proof media, cross-app state, and admission evidence. Their retired obsolete-versioned mechanisms are not active defaults.
32
- One dedicated `receiz-global-reconciliation` skill governs accepted-head resolution, verified offline reconciliation, structural divergence, first paint, indeterminate recovery, and effects. Every current manifest uses package version `121.0.0`, requires SDK/MCP `>=121.0.0 <122.0.0`, and binds ruleset `121.0.0` to registry digest `29a793a5bcc0195ab41d30614d37ac51df66023af354fa4335460764eb0af413` and operation-matrix digest `208553829ba78a5536524b864577ce59989e2d0a994fad9598d39ae3d557c4f5` from SDK source.
40
+ One dedicated `receiz-global-reconciliation` skill governs accepted-head resolution, verified offline reconciliation, structural divergence, first paint, indeterminate recovery, and effects. `receiz-value-execution` governs exact live Phi execution and retry recovery; `receiz-proof-authority` governs edge verification, explicit consent, and minimum-scope embedded authority. Every current manifest uses package version `123.0.0`, requires SDK/MCP `>=123.0.0 <124.0.0`, and binds ruleset `123.0.0` to registry digest `945a581d1fc49c2dc18fbe8c129771ef464b8a58b96188bce561e88ae8b6ceeb` and operation-matrix digest `e08cec3e3ad22c20ddd6c08169ece19f094c366214d6d6b4dc432cd97558e2c5` from SDK source.
33
41
 
34
42
  This package teaches AI agents how to understand, verify, build with, and operate Receiz from the existing repository surfaces.
35
43
 
36
- It is published as `@receiz/ai-skills` and is an exact-version dependency of both `@receiz/sdk` and `@receiz/mcp-server`. Installing either package places all 39 skills under `node_modules/@receiz/ai-skills`: 33 manifests and 30 OpenAI agent prompts are included for explicit loading by an agent host.
44
+ It is published as `@receiz/ai-skills` and is an exact-version dependency of both `@receiz/sdk` and `@receiz/mcp-server`. Installing either package places all 42 skills under `node_modules/@receiz/ai-skills`: 36 manifests and 33 OpenAI agent prompts are included for explicit loading by an agent host.
37
45
 
38
46
  Receiz is a proof-native artifact system. Sealed proof/object truth is strongest: a Receiz object is not a database row, but a proof-carrying artifact whose witnessed history is the truth boundary. The proof object carries continuity; SDK and MCP may verify, extract, append, or project beneath that carried truth. Receiz.com reference behavior comes before SDK, MCP, AI, and other developer rails. Server state, database state, UI state, marketplace state, and model memory are projections only. Old witnessed truth is not stale. If a projection is wrong, rebuild it from object history. If truth is missing, append new truth. Never mutate witnessed truth.
39
47
 
@@ -42,16 +50,16 @@ A verified proof object is not limited to the platform that created it. Any lawf
42
50
  ## SDK, MCP, And Skills
43
51
 
44
52
  - SDK: `@receiz/sdk` is the universal runtime; `@receiz/sdk/react` is React-only; `@receiz/sdk/compiler` is Node-only; `@receiz/sdk/testing` is browser-safe sandbox and conformance support.
45
- - MCP: `@receiz/mcp-server` is for agent tool access. Its current nine artifact tools and 37 living-subject tools expose transition, reconciliation, proof-brain, Twin, mandate, runtime, world, memory, social, inventory, and bearer contracts through the same SDK authority types. Diagnostics, public reads, app-state/public-store actions, previews, and delegated writes remain beneath proof truth.
53
+ - MCP: `@receiz/mcp-server` is for agent tool access. Its current nine artifact tools, 37 inherited living-subject tools, 19 stable v122 protocol tools, and eight v123 completion tools expose transition, reconciliation, proof-brain, Twin, mandate, runtime, world, memory, social, inventory, bearer, remote admission, canonical planning, embedded authority, exact-head namespaces, exact recovery, and live Phi execution through the same SDK authority types.
46
54
  - Skills: this package is operating doctrine. It tells an AI which Receiz primitive is active, which source of truth wins, which SDK or MCP rail to use, and what must never be assumed.
47
55
 
48
56
  Agents may acquire scoped delegated access through the official Receiz Connect/OIDC Authorization Code + PKCE flow or through the MCP delegated-agent setup path exposed by `receiz_mcp_login`. That acquired access is permission to call scoped SDK/MCP rails after user consent. It is not proof authority and must never outrank artifact truth.
49
57
 
50
58
  ## How Agents Should Use This Package
51
59
 
52
- Start with `receiz-build-production-system` when work spans multiple constitutional domains and `receiz-global-reconciliation` for named-domain coordination. Machine-readable manifests require the exact active canonical v120 registry and operation-matrix digests, command-only mutation, independent verification, MCP conformance, and a passing release lock. Use a focused operation skill for SDK/MCP implementation and a constitutional skill for broader system law. Stable obsolete-versioned wire schemas remain available only through the explicit historical `@receiz/sdk/obsolete-versioned` package entry; current skills never teach their key, head, receipt, reconcile, or signed-command mechanics as a current outcome.
60
+ Start with `receiz-build-production-system` when work spans multiple constitutional domains and `receiz-global-reconciliation` for named-domain coordination. Machine-readable manifests require the exact active canonical v123 registry and operation-matrix digests, command-only mutation, independent verification, MCP conformance, and a passing release lock. Use a focused operation skill for SDK/MCP implementation and a constitutional skill for broader system law. Stable obsolete-versioned wire schemas remain available only through the explicit historical `@receiz/sdk/obsolete-versioned` package entry; current skills never teach their key, head, receipt, reconcile, or signed-command mechanics as a current outcome.
53
61
 
54
- The v120 operation skills are executable contracts. Current profile work uses the neutral authenticated same-UID profile operation. Current bearer ownership accepts a complete verified artifact, derives prior ownership from carried proof, and returns a native Record -> Seal artifact. Proof media uses the same native artifact custody and projects only a verified URL beneath it. These outcomes have no active identity-key, caller-head, claim-key, or receipt prerequisite. MCP calls the same SDK outcomes and never creates a parallel authority.
62
+ The current operation skills are executable contracts. Current profile work uses the neutral authenticated same-UID profile operation. Current bearer ownership accepts a complete verified artifact, derives prior ownership from carried proof, and returns a native Record -> Seal artifact. Proof media uses the same native artifact custody and projects only a verified URL beneath it. These outcomes have no active identity-key, caller-head, claim-key, or receipt prerequisite. MCP calls the same SDK outcomes and never creates a parallel authority.
55
63
 
56
64
  Stable obsolete-versioned schema names and their head/receipt mechanics remain explicitly historical compatibility, not the active/default profile, bearer, or proof-media contract.
57
65
 
@@ -81,7 +89,7 @@ When SDK or MCP changes:
81
89
  - Generated apps must preserve Receiz proof semantics.
82
90
  - Generated apps should not require a traditional database unless the user explicitly asks for one.
83
91
 
84
- ## v121 living-subject skills
92
+ ## Established living-subject skills
85
93
 
86
94
  - `receiz-living-subject` governs immutable subject identity, byte-preserved namespaces, ownership continuity, state, history, additions, and portable proof artifacts.
87
95
  - `receiz-subject-twin` governs subject-scoped profile, exact-head messaging, complete proof-brain retrieval, portable mind export/import, memory summaries, and the separation between speech, intentions, facts, memories, and performance.
@@ -91,6 +99,6 @@ When SDK or MCP changes:
91
99
  - `receiz-event-derived-memory` governs factual memories with admitted event citations and rebuildable AI summaries/projections.
92
100
  - `receiz-live-proof-character` governs streamed reply, audio, viseme, gaze, blink, breath, emotion, gesture, proposed intention, and completion events as non-authoritative performance over exact proof context.
93
101
 
94
- Every living-subject skill carries its SDK map, MCP map, authority rules, examples, tests, manifest, OpenAI metadata, and the exact v121 registry and operation-matrix digests. The skills teach the same sequence as the implementation: canonical head → entire proof history → compact indexes → relevant references → exact primary proof objects → reasoning → cited answer. They never authorize a world event, transfer, mandate, or release claim by prose.
102
+ Every living-subject skill carries its SDK map, MCP map, authority rules, examples, tests, manifest, OpenAI metadata, and the exact current v123 registry and operation-matrix digests. The skills teach the same sequence as the implementation: canonical head → entire proof history → compact indexes → relevant references → exact primary proof objects → reasoning → cited answer. They never authorize a world event, transfer, mandate, or release claim by prose.
95
103
 
96
104
  The updated constitutional skills bind living-subject behavior into app building, command construction, deterministic replay, causal sync, global reconciliation, portable continuity, authority/security, MCP operation, testing, release, constitutional law, and offline-first operation. Their examples cover exact proof-memory speech, absent-owner exploration, mutual relationship formation, bounded trade, atomic battle, cross-device restoration, mandate revocation during a queued action, partition convergence, rejection of an AI-invented event, and cross-application subject continuity.
package/SKILLS.md CHANGED
@@ -1,52 +1,37 @@
1
- # Receiz AI Skills v120
1
+ # Receiz AI Skills v123
2
2
 
3
- V120 preserves sealed proof/object authority and adds
4
- `receiz.native_capture.v1` plus
5
- `receiz.pbi.proof-object-authorship.v1`. Native Capture binds dedicated camera
6
- ceremony bytes. PBI authorship requires canonical predecessor verification,
7
- appends ordered history, settles locally before optional publication, and does
8
- not transfer ownership.
3
+ ## Intent Becomes Lawful Action
9
4
 
10
- This package ships 39 skills, 33 machine-readable manifests, and 30 OpenAI agent prompts. Every current manifest binds registry digest `29a793a5bcc0195ab41d30614d37ac51df66023af354fa4335460764eb0af413` and application-operation-matrix digest `208553829ba78a5536524b864577ce59989e2d0a994fad9598d39ae3d557c4f5` from the v120 SDK source.
5
+ The object is authority. The v123 distribution teaches agents to verify and retain proof at the edge, obtain explicit in-application consent, request minimum scopes, plan canonical bytes through the SDK, execute one exact mutation, and resolve committed, zero-write, or unknown before retry. A server performs scoped execution; a database provides projection, sync and recovery beneath admitted proof truth.
11
6
 
12
- ## Current MCP artifact inventory: nine tools
7
+ This package ships 42 skills, 36 machine-readable manifests, and 33 OpenAI agent prompts. Every current manifest binds ruleset `123.0.0`, SDK/MCP range `>=123.0.0 <124.0.0`, registry digest `945a581d1fc49c2dc18fbe8c129771ef464b8a58b96188bce561e88ae8b6ceeb`, and operation-matrix digest `e08cec3e3ad22c20ddd6c08169ece19f094c366214d6d6b4dc432cd97558e2c5`.
13
8
 
14
- The single current inventory is:
9
+ ## V123 completion skills
15
10
 
16
- 1. `receiz_artifact_verify`
17
- 2. `receiz_artifact_admit`
18
- 3. `receiz_artifact_append_plan`
19
- 4. `receiz_artifact_transition_seal_and_stage`
20
- 5. `receiz_artifact_transition_commit`
21
- 6. `receiz_artifact_global_resolve`
22
- 7. `receiz_artifact_reconcile_plan`
23
- 8. `receiz_artifact_reconcile_stage`
24
- 9. `receiz_artifact_reconcile_commit`
11
+ - `receiz-value-execution`: live Phi execution on exactly one Settlement or Reserve rail; USD is display-only; exact heads, idempotency, receipts, and lookup-before-retry are mandatory.
12
+ - `receiz-proof-authority`: embedded proof-to-authority exchange after independent edge verification and explicit consent, without redirecting the person to receiz.com; grants are short-lived, non-refreshable, minimum-scope mechanics beneath the identity artifact.
13
+ - `receiz-world-event-runtime`: SDK-owned v122 public planners remain the stable protocol identifiers used by v123 to generate canonical command and transaction bytes.
14
+ - `receiz-living-subject`: resolves named namespaces at one exact authenticated head with pinned registry and reducer digests.
25
15
 
26
- The first five tools are also the historical v112 compatibility inventory. That historical label preserves the v112 contract; it does not define a second current surface.
16
+ ## Current MCP inventories
27
17
 
28
- ## Current MCP living-subject inventory: 37 tools
18
+ The package maps the nine artifact tools, 37 living-subject tools, 19 stable v122 protocol tools, and eight v123 completion tools to the canonical SDK. The v123 tools are:
29
19
 
30
- The exact v121 living-subject inventory covers `receiz_subject_resolve`, `receiz_subject_state`, `receiz_subject_history`, `receiz_subject_memory_query`, `receiz_subject_relationships`, `receiz_subject_inventory`, `receiz_subject_twin_profile`, `receiz_subject_twin_message`, `receiz_subject_twin_mind_export`, `receiz_subject_twin_mind_import_plan`, `receiz_subject_mandate_get`, `receiz_subject_mandate_plan`, `receiz_subject_mandate_activate`, `receiz_subject_mandate_pause`, `receiz_subject_mandate_revoke`, `receiz_world_additions`, `receiz_world_command_plan`, `receiz_world_command_validate`, `receiz_world_command_execute`, `receiz_world_transaction_plan`, `receiz_world_transaction_execute`, `receiz_world_receipt`, `receiz_world_replay`, `receiz_subject_runtime_enqueue`, `receiz_subject_runtime_status`, `receiz_subject_runtime_cancel`, `receiz_living_subject_conformance`, `receiz_subject_brain_head`, `receiz_subject_brain_search`, `receiz_subject_brain_resolve`, `receiz_subject_brain_stream`, `receiz_bearer_transfer_preview`, `receiz_bearer_instrument_issue`, `receiz_bearer_instrument_inspect`, `receiz_bearer_instrument_claim`, `receiz_bearer_transfer_cancel`, and `receiz_bearer_transfer_status`.
20
+ 1. `receiz_v123_world_plan_command_v122`
21
+ 2. `receiz_v123_world_plan_transaction_v122`
22
+ 3. `receiz_v123_value_execute_settlement`
23
+ 4. `receiz_v123_value_execute_reserve`
24
+ 5. `receiz_v123_value_execution_by_idempotency`
25
+ 6. `receiz_v123_subject_resolve_namespaces`
26
+ 7. `receiz_v123_identity_exchange_proof_authority`
27
+ 8. `receiz_v123_auth_granted_scopes`
31
28
 
32
- Every tool calls the SDK primitive named by its skill map, returns the source primitive and v120 registry/reducer digests, requires exact plan/permit/instrument confirmation for writes, resolves exact bytes before commit, and returns structured zero-write failure. MCP and skill prose never become authority.
29
+ MCP confirms mutations, redacts bearer material, and never becomes proof, identity, ownership, or settlement authority.
33
30
 
34
31
  ## Skill inventory
35
32
 
36
- The canonical machine-readable index is [skills.json](skills.json). Start with `receiz-build-production-system` for multi-domain work, `receiz-global-reconciliation` for named-domain head resolution and offline reconciliation, or a focused primitive skill for narrower work.
33
+ The canonical machine-readable index is [skills.json](skills.json). Start with `receiz-build-production-system` for multi-domain work, `receiz-global-reconciliation` for named-domain coordination, `receiz-value-execution` for live Phi movement, or `receiz-proof-authority` for embedded consent and scopes.
37
34
 
38
- ## Forbidden AI operations
35
+ All current skills forbid last-write-wins, timestamp-as-head authority, connect-token-as-proof authority, projection-as-current-owner, silent divergence resolution, remote reconciliation before first paint, unverified server artifacts, retry-before-lookup, rail collapse, and USD-as-moved-value.
39
36
 
40
- All current skills forbid: `last-write-wins`, `timestamp-as-head-authority`, `connect-token-as-proof-authority`, `local-receipt-as-global-authority`, `projection-as-current-owner`, `silent-divergence-resolution`, `remote-reconciliation-before-first-paint`, `unverified-server-artifact-render`, `environment-player-token-fallback`, `accepted-means-effects-delivered`, and `indeterminate-means-failed`.
41
-
42
- These instructions remain beneath exact sealed artifact bytes, independently verified history, verified identity evidence, plan-bound capability authority, and atomic named-domain acceptance.
43
-
44
- ## v121 living-subject skills
45
-
46
- - `receiz-living-subject`: immutable identity, byte-preserved namespaces, ownership continuity, state, history, additions, and portable artifacts.
47
- - `receiz-subject-twin`: complete exact-head proof retrieval, speech/intention/fact/memory separation, subject mind portability, and provenance.
48
- - `receiz-autonomous-mandate`: owner-confirmed digest scope, runtime re-verification, expiration, pause, and revocation.
49
- - `receiz-world-event-runtime`: typed command admission, deterministic receipts, durable ticks, retries, replay, and zero-write failure.
50
- - `receiz-multi-subject-transaction`: atomic meetings, relationships, battles, gifts, inventory, and trades.
51
- - `receiz-event-derived-memory`: admitted-event citations and rebuildable projections.
52
- - `receiz-live-proof-character`: streamed voice and performance cues that never become canonical fact.
37
+ Historical protocol and schema identifiers remain documented only where current compatibility requires them. They do not define a second current authority surface.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@receiz/ai-skills",
3
- "version": "121.0.0",
3
+ "version": "123.0.0",
4
4
  "description": "Registry-bound Receiz AI operating contracts beneath proof authority for SDK and MCP agents.",
5
5
  "type": "module",
6
6
  "files": [
@@ -46,7 +46,10 @@
46
46
  "receiz-world-event-runtime",
47
47
  "receiz-multi-subject-transaction",
48
48
  "receiz-event-derived-memory",
49
- "receiz-live-proof-character"
49
+ "receiz-live-proof-character",
50
+ "receiz-value-rails",
51
+ "receiz-value-execution",
52
+ "receiz-proof-authority"
50
53
  ],
51
54
  "keywords": [
52
55
  "receiz",
@@ -1,15 +1,15 @@
1
1
  {
2
- "schema": "receiz.ai-skill-contract.v121",
2
+ "schema": "receiz.ai-skill-contract.v123",
3
3
  "name": "receiz-app-builder-skill",
4
- "version": "121.0.0",
4
+ "version": "123.0.0",
5
5
  "requires": {
6
- "sdk": ">=121.0.0 <122.0.0",
7
- "mcp": ">=121.0.0 <122.0.0",
8
- "ruleset": "121.0.0",
9
- "registryDigest": "29a793a5bcc0195ab41d30614d37ac51df66023af354fa4335460764eb0af413",
10
- "operationMatrixDigest": "208553829ba78a5536524b864577ce59989e2d0a994fad9598d39ae3d557c4f5"
6
+ "sdk": ">=123.0.0 <124.0.0",
7
+ "mcp": ">=123.0.0 <124.0.0",
8
+ "ruleset": "123.0.0",
9
+ "registryDigest": "945a581d1fc49c2dc18fbe8c129771ef464b8a58b96188bce561e88ae8b6ceeb",
10
+ "operationMatrixDigest": "e08cec3e3ad22c20ddd6c08169ece19f094c366214d6d6b4dc432cd97558e2c5"
11
11
  },
12
- "artifactLawVersion": "121.0.0",
12
+ "artifactLawVersion": "123.0.0",
13
13
  "artifactLaws": [
14
14
  "ARTIFACT-001",
15
15
  "ARTIFACT-002",
@@ -211,7 +211,7 @@
211
211
  "outputAuthority": "verified-artifact-runtime",
212
212
  "processBoundary": "reverify-exact-bytes",
213
213
  "namespacePolicy": "not-applicable",
214
- "compatibleSdkRange": ">=121.0.0 <122.0.0"
214
+ "compatibleSdkRange": ">=123.0.0 <124.0.0"
215
215
  },
216
216
  {
217
217
  "operation": "artifact.admit",
@@ -225,7 +225,7 @@
225
225
  "outputAuthority": "verified-admission-runtime",
226
226
  "processBoundary": "same-runtime-custody",
227
227
  "namespacePolicy": "not-applicable",
228
- "compatibleSdkRange": ">=121.0.0 <122.0.0"
228
+ "compatibleSdkRange": ">=123.0.0 <124.0.0"
229
229
  },
230
230
  {
231
231
  "operation": "artifact.append.plan",
@@ -247,7 +247,7 @@
247
247
  "outputAuthority": "sdk-plan-runtime",
248
248
  "processBoundary": "same-runtime-custody",
249
249
  "namespacePolicy": "preserve-all-non-target",
250
- "compatibleSdkRange": ">=121.0.0 <122.0.0"
250
+ "compatibleSdkRange": ">=123.0.0 <124.0.0"
251
251
  },
252
252
  {
253
253
  "operation": "identity.capability.sign",
@@ -260,7 +260,7 @@
260
260
  "outputAuthority": "signed-capability-claim-not-yet-verified",
261
261
  "processBoundary": "local-identity-key-custody",
262
262
  "namespacePolicy": "not-applicable",
263
- "compatibleSdkRange": ">=121.0.0 <122.0.0"
263
+ "compatibleSdkRange": ">=123.0.0 <124.0.0"
264
264
  },
265
265
  {
266
266
  "operation": "artifact.transition.seal",
@@ -277,7 +277,7 @@
277
277
  "outputAuthority": "sealed-candidate-proof-object-not-accepted-head",
278
278
  "processBoundary": "same-runtime-custody",
279
279
  "namespacePolicy": "preserve-all-non-target",
280
- "compatibleSdkRange": ">=121.0.0 <122.0.0"
280
+ "compatibleSdkRange": ">=123.0.0 <124.0.0"
281
281
  },
282
282
  {
283
283
  "operation": "artifact.transition.stage",
@@ -294,7 +294,7 @@
294
294
  "outputAuthority": "staged-candidate-locator-non-authoritative",
295
295
  "processBoundary": "same-runtime-custody",
296
296
  "namespacePolicy": "preserve-all-non-target",
297
- "compatibleSdkRange": ">=121.0.0 <122.0.0"
297
+ "compatibleSdkRange": ">=123.0.0 <124.0.0"
298
298
  },
299
299
  {
300
300
  "operation": "artifact.transition.commit",
@@ -313,7 +313,7 @@
313
313
  "outputAuthority": "accepted-artifact-history-with-report-only-receipt",
314
314
  "processBoundary": "same-runtime-custody",
315
315
  "namespacePolicy": "preserve-all-non-target",
316
- "compatibleSdkRange": ">=121.0.0 <122.0.0"
316
+ "compatibleSdkRange": ">=123.0.0 <124.0.0"
317
317
  },
318
318
  {
319
319
  "operation": "admission.command.execute",
@@ -334,7 +334,7 @@
334
334
  "outputAuthority": "admission-receipt-non-authoritative",
335
335
  "processBoundary": "same-runtime-custody",
336
336
  "namespacePolicy": "not-applicable",
337
- "compatibleSdkRange": ">=121.0.0 <122.0.0"
337
+ "compatibleSdkRange": ">=123.0.0 <124.0.0"
338
338
  },
339
339
  {
340
340
  "operation": "public-proof.projection.locate",
@@ -348,7 +348,7 @@
348
348
  "outputAuthority": "exact-artifact-bytes-not-yet-verified",
349
349
  "processBoundary": "projection-only",
350
350
  "namespacePolicy": "not-applicable",
351
- "compatibleSdkRange": ">=121.0.0 <122.0.0"
351
+ "compatibleSdkRange": ">=123.0.0 <124.0.0"
352
352
  },
353
353
  {
354
354
  "operation": "artifact.global.resolve",
@@ -364,7 +364,7 @@
364
364
  "outputAuthority": "exact-artifact-bytes-not-yet-verified",
365
365
  "processBoundary": "reverify-exact-bytes",
366
366
  "namespacePolicy": "not-applicable",
367
- "compatibleSdkRange": ">=121.0.0 <122.0.0"
367
+ "compatibleSdkRange": ">=123.0.0 <124.0.0"
368
368
  },
369
369
  {
370
370
  "operation": "artifact.offline.reconcile",
@@ -387,7 +387,7 @@
387
387
  "outputAuthority": "accepted-artifact-history-with-report-only-receipt",
388
388
  "processBoundary": "reverify-exact-bytes",
389
389
  "namespacePolicy": "preserve-all-non-target",
390
- "compatibleSdkRange": ">=121.0.0 <122.0.0"
390
+ "compatibleSdkRange": ">=123.0.0 <124.0.0"
391
391
  },
392
392
  {
393
393
  "operation": "profile-showcase.genesis.plan",
@@ -411,7 +411,7 @@
411
411
  "outputAuthority": "sdk-plan-runtime",
412
412
  "processBoundary": "same-runtime-custody",
413
413
  "namespacePolicy": "preserve-all-non-target",
414
- "compatibleSdkRange": ">=121.0.0 <122.0.0"
414
+ "compatibleSdkRange": ">=123.0.0 <124.0.0"
415
415
  },
416
416
  {
417
417
  "operation": "profile-showcase.append.plan",
@@ -437,7 +437,7 @@
437
437
  "outputAuthority": "sdk-plan-runtime",
438
438
  "processBoundary": "same-runtime-custody",
439
439
  "namespacePolicy": "preserve-all-non-target",
440
- "compatibleSdkRange": ">=121.0.0 <122.0.0"
440
+ "compatibleSdkRange": ">=123.0.0 <124.0.0"
441
441
  },
442
442
  {
443
443
  "operation": "economy-showcase.genesis.plan",
@@ -461,7 +461,7 @@
461
461
  "outputAuthority": "sdk-plan-runtime",
462
462
  "processBoundary": "same-runtime-custody",
463
463
  "namespacePolicy": "preserve-all-non-target",
464
- "compatibleSdkRange": ">=121.0.0 <122.0.0"
464
+ "compatibleSdkRange": ">=123.0.0 <124.0.0"
465
465
  },
466
466
  {
467
467
  "operation": "economy-showcase.append.plan",
@@ -488,7 +488,7 @@
488
488
  "outputAuthority": "sdk-plan-runtime",
489
489
  "processBoundary": "same-runtime-custody",
490
490
  "namespacePolicy": "preserve-all-non-target",
491
- "compatibleSdkRange": ">=121.0.0 <122.0.0"
491
+ "compatibleSdkRange": ">=123.0.0 <124.0.0"
492
492
  },
493
493
  {
494
494
  "operation": "economy-showcase.merge.plan",
@@ -516,7 +516,7 @@
516
516
  "outputAuthority": "sdk-plan-runtime",
517
517
  "processBoundary": "same-runtime-custody",
518
518
  "namespacePolicy": "preserve-all-non-target",
519
- "compatibleSdkRange": ">=121.0.0 <122.0.0"
519
+ "compatibleSdkRange": ">=123.0.0 <124.0.0"
520
520
  },
521
521
  {
522
522
  "operation": "subject.resolve",
@@ -536,7 +536,7 @@
536
536
  "outputAuthority": "verified-subject-runtime",
537
537
  "processBoundary": "reverify-exact-bytes",
538
538
  "namespacePolicy": "preserve-all-non-target",
539
- "compatibleSdkRange": ">=121.0.0 <122.0.0"
539
+ "compatibleSdkRange": ">=123.0.0 <124.0.0"
540
540
  },
541
541
  {
542
542
  "operation": "subject.brain.retrieve",
@@ -556,7 +556,7 @@
556
556
  "outputAuthority": "proof-context-non-authoritative",
557
557
  "processBoundary": "reverify-exact-bytes",
558
558
  "namespacePolicy": "preserve-all-non-target",
559
- "compatibleSdkRange": ">=121.0.0 <122.0.0"
559
+ "compatibleSdkRange": ">=123.0.0 <124.0.0"
560
560
  },
561
561
  {
562
562
  "operation": "subject.twin.message",
@@ -574,7 +574,7 @@
574
574
  "outputAuthority": "model-intent-non-authoritative",
575
575
  "processBoundary": "same-runtime-custody",
576
576
  "namespacePolicy": "preserve-all-non-target",
577
- "compatibleSdkRange": ">=121.0.0 <122.0.0"
577
+ "compatibleSdkRange": ">=123.0.0 <124.0.0"
578
578
  },
579
579
  {
580
580
  "operation": "subject.mandate.activate",
@@ -593,7 +593,7 @@
593
593
  "outputAuthority": "active-mandate-runtime",
594
594
  "processBoundary": "same-runtime-custody",
595
595
  "namespacePolicy": "preserve-all-non-target",
596
- "compatibleSdkRange": ">=121.0.0 <122.0.0"
596
+ "compatibleSdkRange": ">=123.0.0 <124.0.0"
597
597
  },
598
598
  {
599
599
  "operation": "world.command.plan",
@@ -613,7 +613,7 @@
613
613
  "outputAuthority": "world-command-plan-runtime",
614
614
  "processBoundary": "same-runtime-custody",
615
615
  "namespacePolicy": "not-applicable",
616
- "compatibleSdkRange": ">=121.0.0 <122.0.0"
616
+ "compatibleSdkRange": ">=123.0.0 <124.0.0"
617
617
  },
618
618
  {
619
619
  "operation": "world.command.execute",
@@ -634,7 +634,7 @@
634
634
  "outputAuthority": "accepted-world-event-with-report-only-receipt",
635
635
  "processBoundary": "same-runtime-custody",
636
636
  "namespacePolicy": "preserve-all-non-target",
637
- "compatibleSdkRange": ">=121.0.0 <122.0.0"
637
+ "compatibleSdkRange": ">=123.0.0 <124.0.0"
638
638
  },
639
639
  {
640
640
  "operation": "world.transaction.plan",
@@ -653,7 +653,7 @@
653
653
  "outputAuthority": "world-transaction-plan-runtime",
654
654
  "processBoundary": "same-runtime-custody",
655
655
  "namespacePolicy": "not-applicable",
656
- "compatibleSdkRange": ">=121.0.0 <122.0.0"
656
+ "compatibleSdkRange": ">=123.0.0 <124.0.0"
657
657
  },
658
658
  {
659
659
  "operation": "world.transaction.execute",
@@ -674,7 +674,7 @@
674
674
  "outputAuthority": "accepted-world-event-with-report-only-receipt",
675
675
  "processBoundary": "same-runtime-custody",
676
676
  "namespacePolicy": "preserve-all-non-target",
677
- "compatibleSdkRange": ">=121.0.0 <122.0.0"
677
+ "compatibleSdkRange": ">=123.0.0 <124.0.0"
678
678
  },
679
679
  {
680
680
  "operation": "subject.runtime.enqueue",
@@ -693,7 +693,7 @@
693
693
  "outputAuthority": "runtime-job-non-authoritative",
694
694
  "processBoundary": "same-runtime-custody",
695
695
  "namespacePolicy": "not-applicable",
696
- "compatibleSdkRange": ">=121.0.0 <122.0.0"
696
+ "compatibleSdkRange": ">=123.0.0 <124.0.0"
697
697
  },
698
698
  {
699
699
  "operation": "subject.memory.project",
@@ -711,7 +711,7 @@
711
711
  "outputAuthority": "event-memory-projection-non-authoritative",
712
712
  "processBoundary": "same-runtime-custody",
713
713
  "namespacePolicy": "preserve-all-non-target",
714
- "compatibleSdkRange": ">=121.0.0 <122.0.0"
714
+ "compatibleSdkRange": ">=123.0.0 <124.0.0"
715
715
  },
716
716
  {
717
717
  "operation": "bearer.transfer.plan",
@@ -730,7 +730,7 @@
730
730
  "outputAuthority": "bearer-transfer-plan-runtime",
731
731
  "processBoundary": "same-runtime-custody",
732
732
  "namespacePolicy": "preserve-all-non-target",
733
- "compatibleSdkRange": ">=121.0.0 <122.0.0"
733
+ "compatibleSdkRange": ">=123.0.0 <124.0.0"
734
734
  },
735
735
  {
736
736
  "operation": "bearer.instrument.issue",
@@ -749,7 +749,7 @@
749
749
  "outputAuthority": "bearer-instrument-not-ownership",
750
750
  "processBoundary": "same-runtime-custody",
751
751
  "namespacePolicy": "preserve-all-non-target",
752
- "compatibleSdkRange": ">=121.0.0 <122.0.0"
752
+ "compatibleSdkRange": ">=123.0.0 <124.0.0"
753
753
  },
754
754
  {
755
755
  "operation": "bearer.instrument.claim",
@@ -769,7 +769,7 @@
769
769
  "outputAuthority": "ownership-transition-with-sealed-artifact",
770
770
  "processBoundary": "reverify-exact-bytes",
771
771
  "namespacePolicy": "preserve-all-non-target",
772
- "compatibleSdkRange": ">=121.0.0 <122.0.0"
772
+ "compatibleSdkRange": ">=123.0.0 <124.0.0"
773
773
  },
774
774
  {
775
775
  "operation": "bearer.transfer.cancel",
@@ -787,7 +787,117 @@
787
787
  "outputAuthority": "ownership-transition-with-sealed-artifact",
788
788
  "processBoundary": "same-runtime-custody",
789
789
  "namespacePolicy": "preserve-all-non-target",
790
- "compatibleSdkRange": ">=121.0.0 <122.0.0"
790
+ "compatibleSdkRange": ">=123.0.0 <124.0.0"
791
+ },
792
+ {
793
+ "operation": "identity.proof-authority.exchange",
794
+ "authorityProfiles": [
795
+ "artifact-local",
796
+ "global-shared"
797
+ ],
798
+ "inputAuthority": "proof-authority-challenge",
799
+ "requiredEvidence": [
800
+ "exact-artifact-bytes",
801
+ "pinned-verifier-roots",
802
+ "application-bound-challenge",
803
+ "explicit-consent",
804
+ "minimum-scope-set"
805
+ ],
806
+ "outputAuthority": "scoped-proof-capability-not-proof-authority",
807
+ "processBoundary": "reverify-exact-bytes",
808
+ "namespacePolicy": "not-applicable",
809
+ "compatibleSdkRange": ">=123.0.0 <124.0.0"
810
+ },
811
+ {
812
+ "operation": "authorization.scopes.introspect",
813
+ "authorityProfiles": [
814
+ "projection-only"
815
+ ],
816
+ "inputAuthority": "rail-scope-query",
817
+ "requiredEvidence": [
818
+ "minimum-scope-set"
819
+ ],
820
+ "outputAuthority": "granted-scope-projection-non-authoritative",
821
+ "processBoundary": "projection-only",
822
+ "namespacePolicy": "not-applicable",
823
+ "compatibleSdkRange": ">=123.0.0 <124.0.0"
824
+ },
825
+ {
826
+ "operation": "subject.namespaces.resolve",
827
+ "authorityProfiles": [
828
+ "artifact-local",
829
+ "global-shared",
830
+ "projection-only"
831
+ ],
832
+ "inputAuthority": "subject-proof-reference",
833
+ "requiredEvidence": [
834
+ "exact-subject-head",
835
+ "exact-subject-artifact-bytes",
836
+ "registry-digest",
837
+ "reducer-digest",
838
+ "byte-exact-namespaces"
839
+ ],
840
+ "outputAuthority": "exact-head-namespace-projection-non-authoritative",
841
+ "processBoundary": "reverify-exact-bytes",
842
+ "namespacePolicy": "preserve-all-non-target",
843
+ "compatibleSdkRange": ">=123.0.0 <124.0.0"
844
+ },
845
+ {
846
+ "operation": "value.settlement.execute",
847
+ "authorityProfiles": [
848
+ "artifact-local",
849
+ "global-shared"
850
+ ],
851
+ "inputAuthority": "value-intent-runtime",
852
+ "requiredEvidence": [
853
+ "exact-subject-head",
854
+ "owner-capability",
855
+ "rail-identity",
856
+ "amount-phi-micro",
857
+ "persisted-canonical-intent",
858
+ "idempotency-identity"
859
+ ],
860
+ "outputAuthority": "accepted-phi-movement-with-report-only-receipt",
861
+ "processBoundary": "same-runtime-custody",
862
+ "namespacePolicy": "preserve-all-non-target",
863
+ "compatibleSdkRange": ">=123.0.0 <124.0.0"
864
+ },
865
+ {
866
+ "operation": "value.reserve.execute",
867
+ "authorityProfiles": [
868
+ "artifact-local",
869
+ "global-shared"
870
+ ],
871
+ "inputAuthority": "value-intent-runtime",
872
+ "requiredEvidence": [
873
+ "exact-subject-head",
874
+ "owner-capability",
875
+ "rail-identity",
876
+ "amount-phi-micro",
877
+ "persisted-canonical-intent",
878
+ "idempotency-identity"
879
+ ],
880
+ "outputAuthority": "accepted-phi-movement-with-report-only-receipt",
881
+ "processBoundary": "same-runtime-custody",
882
+ "namespacePolicy": "preserve-all-non-target",
883
+ "compatibleSdkRange": ">=123.0.0 <124.0.0"
884
+ },
885
+ {
886
+ "operation": "value.execution.resolve",
887
+ "authorityProfiles": [
888
+ "artifact-local",
889
+ "global-shared",
890
+ "projection-only"
891
+ ],
892
+ "inputAuthority": "value-intent-runtime",
893
+ "requiredEvidence": [
894
+ "idempotency-identity",
895
+ "exact-execution-outcome"
896
+ ],
897
+ "outputAuthority": "execution-outcome-projection-non-authoritative",
898
+ "processBoundary": "projection-only",
899
+ "namespacePolicy": "not-applicable",
900
+ "compatibleSdkRange": ">=123.0.0 <124.0.0"
791
901
  }
792
902
  ],
793
903
  "currentMcpArtifactTools": [
@@ -846,5 +956,15 @@
846
956
  "receiz_bearer_instrument_claim",
847
957
  "receiz_bearer_transfer_cancel",
848
958
  "receiz_bearer_transfer_status"
959
+ ],
960
+ "currentMcpV123Tools": [
961
+ "receiz_v123_world_plan_command_v122",
962
+ "receiz_v123_world_plan_transaction_v122",
963
+ "receiz_v123_value_execute_settlement",
964
+ "receiz_v123_value_execute_reserve",
965
+ "receiz_v123_value_execution_by_idempotency",
966
+ "receiz_v123_subject_resolve_namespaces",
967
+ "receiz_v123_identity_exchange_proof_authority",
968
+ "receiz_v123_auth_granted_scopes"
849
969
  ]
850
970
  }
@@ -10,7 +10,7 @@ Map domains, sources of truth, state machines, dependency direction, and cross-d
10
10
  ## Constitutional workflow
11
11
 
12
12
  1. Inspect the repository and installed SDK version.
13
- 2. Load the active canonical v121 registry and applicable constitutional laws.
13
+ 2. Load the active canonical v123 registry and applicable constitutional laws.
14
14
  3. Identify every authority boundary affected by the change.
15
15
  4. Write the implementation contract before implementation.
16
16
  5. Implement canonical changes only through SDK commands.