@ottochain/sdk 1.6.0 → 1.7.0-beta.2
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/dist/cjs/apps/contracts/index.js +18 -13
- package/dist/cjs/apps/contracts/state-machines/index.js +139 -7
- package/dist/cjs/apps/corporate/index.js +18 -20
- package/dist/cjs/apps/corporate/state-machines/index.js +535 -6336
- package/dist/cjs/apps/governance/index.js +32 -31
- package/dist/cjs/apps/governance/state-machines/index.js +498 -2315
- package/dist/cjs/apps/identity/constants.js +28 -14
- package/dist/cjs/apps/identity/index.js +54 -23
- package/dist/cjs/apps/identity/state-machines/index.js +516 -4
- package/dist/cjs/apps/index.js +15 -13
- package/dist/cjs/apps/markets/index.js +23 -10
- package/dist/cjs/apps/markets/state-machines/index.js +1904 -230
- package/dist/cjs/generated/google/protobuf/struct.js +1 -1
- package/dist/cjs/generated/google/protobuf/timestamp.js +1 -1
- package/dist/cjs/generated/index.js +19 -22
- package/dist/cjs/generated/ottochain/apps/contracts/v1/contract.js +1 -1
- package/dist/cjs/generated/ottochain/apps/corporate/v1/corporate.js +1 -1
- package/dist/cjs/generated/ottochain/apps/governance/v1/governance.js +1 -1
- package/dist/cjs/generated/ottochain/apps/identity/v1/attestation.js +12 -12
- package/dist/cjs/generated/ottochain/apps/identity/v1/identity.js +1689 -0
- package/dist/cjs/generated/ottochain/apps/markets/v1/market.js +1 -1
- package/dist/cjs/generated/ottochain/v1/common.js +1 -1
- package/dist/cjs/generated/ottochain/v1/fiber.js +1 -1
- package/dist/cjs/generated/ottochain/v1/messages.js +1 -1
- package/dist/cjs/generated/ottochain/v1/records.js +1 -1
- package/dist/esm/apps/contracts/index.js +16 -13
- package/dist/esm/apps/contracts/state-machines/index.js +138 -6
- package/dist/esm/apps/corporate/index.js +14 -20
- package/dist/esm/apps/corporate/state-machines/index.js +534 -6335
- package/dist/esm/apps/governance/index.js +26 -30
- package/dist/esm/apps/governance/state-machines/index.js +497 -2314
- package/dist/esm/apps/identity/constants.js +27 -13
- package/dist/esm/apps/identity/index.js +32 -15
- package/dist/esm/apps/identity/state-machines/index.js +515 -3
- package/dist/esm/apps/index.js +14 -12
- package/dist/esm/apps/markets/index.js +19 -10
- package/dist/esm/apps/markets/state-machines/index.js +1903 -229
- package/dist/esm/generated/google/protobuf/struct.js +1 -1
- package/dist/esm/generated/google/protobuf/timestamp.js +1 -1
- package/dist/esm/generated/index.js +2 -3
- package/dist/esm/generated/ottochain/apps/contracts/v1/contract.js +1 -1
- package/dist/esm/generated/ottochain/apps/corporate/v1/corporate.js +1 -1
- package/dist/esm/generated/ottochain/apps/governance/v1/governance.js +1 -1
- package/dist/esm/generated/ottochain/apps/identity/v1/attestation.js +2 -2
- package/dist/esm/generated/ottochain/apps/identity/v1/identity.js +1677 -0
- package/dist/esm/generated/ottochain/apps/markets/v1/market.js +1 -1
- package/dist/esm/generated/ottochain/v1/common.js +1 -1
- package/dist/esm/generated/ottochain/v1/fiber.js +1 -1
- package/dist/esm/generated/ottochain/v1/messages.js +1 -1
- package/dist/esm/generated/ottochain/v1/records.js +1 -1
- package/dist/types/apps/contracts/index.d.ts +661 -9
- package/dist/types/apps/contracts/state-machines/index.d.ts +109 -6
- package/dist/types/apps/corporate/index.d.ts +4015 -7
- package/dist/types/apps/corporate/state-machines/index.d.ts +472 -5587
- package/dist/types/apps/governance/index.d.ts +2151 -12
- package/dist/types/apps/governance/state-machines/index.d.ts +462 -1875
- package/dist/types/apps/identity/constants.d.ts +10 -5
- package/dist/types/apps/identity/index.d.ts +620 -12
- package/dist/types/apps/identity/state-machines/index.d.ts +393 -3
- package/dist/types/apps/index.d.ts +14 -12
- package/dist/types/apps/markets/index.d.ts +1690 -7
- package/dist/types/apps/markets/state-machines/index.d.ts +1416 -184
- package/dist/types/generated/index.d.ts +1 -2
- package/dist/types/generated/ottochain/apps/identity/v1/attestation.d.ts +1 -1
- package/dist/types/generated/ottochain/apps/identity/v1/identity.d.ts +208 -0
- package/package.json +1 -1
- package/dist/cjs/apps/oracles/index.js +0 -59
- package/dist/cjs/apps/oracles/state-machines/index.js +0 -415
- package/dist/cjs/generated/ottochain/apps/identity/v1/agent.js +0 -619
- package/dist/cjs/generated/ottochain/apps/oracles/v1/oracle.js +0 -1223
- package/dist/esm/apps/oracles/index.js +0 -42
- package/dist/esm/apps/oracles/state-machines/index.js +0 -412
- package/dist/esm/generated/ottochain/apps/identity/v1/agent.js +0 -610
- package/dist/esm/generated/ottochain/apps/oracles/v1/oracle.js +0 -1217
- package/dist/types/apps/oracles/index.d.ts +0 -34
- package/dist/types/apps/oracles/state-machines/index.d.ts +0 -312
- package/dist/types/generated/ottochain/apps/identity/v1/agent.d.ts +0 -94
- package/dist/types/generated/ottochain/apps/oracles/v1/oracle.d.ts +0 -150
|
@@ -2,31 +2,35 @@
|
|
|
2
2
|
/**
|
|
3
3
|
* Identity Constants
|
|
4
4
|
*
|
|
5
|
-
* State machine transitions and configuration constants for
|
|
5
|
+
* State machine transitions and configuration constants for identities.
|
|
6
6
|
*
|
|
7
7
|
* @packageDocumentation
|
|
8
8
|
*/
|
|
9
9
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
10
|
-
exports.getReputationDelta = exports.canTransition = exports.ATTESTATION_DELTAS = exports.AGENT_TRANSITIONS = void 0;
|
|
11
|
-
const
|
|
10
|
+
exports.IDENTITY_TYPE_NAMES = exports.getReputationDelta = exports.canTransition = exports.ATTESTATION_DELTAS = exports.AGENT_TRANSITIONS = exports.IDENTITY_TRANSITIONS = void 0;
|
|
11
|
+
const identity_js_1 = require("../../generated/ottochain/apps/identity/v1/identity.js");
|
|
12
12
|
const attestation_js_1 = require("../../generated/ottochain/apps/identity/v1/attestation.js");
|
|
13
13
|
// ---------------------------------------------------------------------------
|
|
14
14
|
// State Machine Transitions
|
|
15
15
|
// ---------------------------------------------------------------------------
|
|
16
16
|
/**
|
|
17
|
-
* Valid transitions for each
|
|
17
|
+
* Valid transitions for each identity state.
|
|
18
18
|
* Maps current state to allowed event names.
|
|
19
19
|
*/
|
|
20
|
-
exports.
|
|
21
|
-
[
|
|
22
|
-
[
|
|
23
|
-
[
|
|
24
|
-
[
|
|
25
|
-
[
|
|
26
|
-
[
|
|
27
|
-
[
|
|
28
|
-
[
|
|
20
|
+
exports.IDENTITY_TRANSITIONS = {
|
|
21
|
+
[identity_js_1.IdentityState.IDENTITY_STATE_UNSPECIFIED]: [],
|
|
22
|
+
[identity_js_1.IdentityState.IDENTITY_STATE_UNREGISTERED]: ['register'],
|
|
23
|
+
[identity_js_1.IdentityState.IDENTITY_STATE_REGISTERED]: ['activate', 'withdraw'],
|
|
24
|
+
[identity_js_1.IdentityState.IDENTITY_STATE_ACTIVE]: ['challenge', 'deactivate', 'withdraw', 'penalize'],
|
|
25
|
+
[identity_js_1.IdentityState.IDENTITY_STATE_INACTIVE]: ['activate', 'withdraw'],
|
|
26
|
+
[identity_js_1.IdentityState.IDENTITY_STATE_CHALLENGED]: ['uphold_challenge', 'dismiss_challenge'],
|
|
27
|
+
[identity_js_1.IdentityState.IDENTITY_STATE_SUSPENDED]: ['begin_probation', 'withdraw'],
|
|
28
|
+
[identity_js_1.IdentityState.IDENTITY_STATE_PROBATION]: ['complete_probation'],
|
|
29
|
+
[identity_js_1.IdentityState.IDENTITY_STATE_WITHDRAWN]: [], // Terminal state
|
|
30
|
+
[identity_js_1.IdentityState.UNRECOGNIZED]: [],
|
|
29
31
|
};
|
|
32
|
+
// Legacy alias for backward compatibility
|
|
33
|
+
exports.AGENT_TRANSITIONS = exports.IDENTITY_TRANSITIONS;
|
|
30
34
|
// ---------------------------------------------------------------------------
|
|
31
35
|
// Reputation Configuration
|
|
32
36
|
// ---------------------------------------------------------------------------
|
|
@@ -46,7 +50,7 @@ exports.ATTESTATION_DELTAS = {
|
|
|
46
50
|
* Check if a transition is valid for the given state.
|
|
47
51
|
*/
|
|
48
52
|
function canTransition(state, event) {
|
|
49
|
-
return exports.
|
|
53
|
+
return exports.IDENTITY_TRANSITIONS[state]?.includes(event) ?? false;
|
|
50
54
|
}
|
|
51
55
|
exports.canTransition = canTransition;
|
|
52
56
|
/**
|
|
@@ -56,3 +60,13 @@ function getReputationDelta(type) {
|
|
|
56
60
|
return exports.ATTESTATION_DELTAS[type] ?? 0;
|
|
57
61
|
}
|
|
58
62
|
exports.getReputationDelta = getReputationDelta;
|
|
63
|
+
/**
|
|
64
|
+
* Identity type display names
|
|
65
|
+
*/
|
|
66
|
+
exports.IDENTITY_TYPE_NAMES = {
|
|
67
|
+
[identity_js_1.IdentityType.IDENTITY_TYPE_UNSPECIFIED]: 'Unknown',
|
|
68
|
+
[identity_js_1.IdentityType.IDENTITY_TYPE_AGENT]: 'Agent',
|
|
69
|
+
[identity_js_1.IdentityType.IDENTITY_TYPE_ORACLE]: 'Oracle',
|
|
70
|
+
[identity_js_1.IdentityType.IDENTITY_TYPE_SERVICE]: 'Service',
|
|
71
|
+
[identity_js_1.IdentityType.UNRECOGNIZED]: 'Unknown',
|
|
72
|
+
};
|
|
@@ -1,35 +1,47 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
/**
|
|
3
|
-
*
|
|
3
|
+
* Identity Application
|
|
4
4
|
*
|
|
5
|
-
* Types and utilities for the
|
|
5
|
+
* Types and utilities for the Identity system on OttoChain.
|
|
6
|
+
* Includes agents, oracles, and services.
|
|
6
7
|
*
|
|
7
8
|
* @example
|
|
8
9
|
* ```typescript
|
|
9
10
|
* import {
|
|
10
|
-
*
|
|
11
|
-
*
|
|
11
|
+
* IdentityState,
|
|
12
|
+
* IdentityType,
|
|
12
13
|
* getIdentityDefinition
|
|
13
14
|
* } from '@ottochain/sdk/apps/identity';
|
|
14
15
|
*
|
|
15
|
-
* const
|
|
16
|
+
* const oracleDef = getIdentityDefinition('oracle');
|
|
16
17
|
* ```
|
|
17
18
|
*
|
|
18
19
|
* @packageDocumentation
|
|
19
20
|
*/
|
|
20
21
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
21
|
-
exports.getIdentityDefinition = exports.DEFAULT_REPUTATION_CONFIG = exports.getReputationDelta = exports.canTransition = exports.ATTESTATION_DELTAS = exports.AGENT_TRANSITIONS = exports.attestationTypeToJSON = exports.attestationTypeFromJSON = exports.ReputationConfig = exports.ChallengeRequest = exports.VouchRequest = exports.Attestation = exports.ReputationDelta = exports.AttestationType = exports.platformToJSON = exports.platformFromJSON = exports.
|
|
22
|
+
exports.getIdentityDefinition = exports.IDENTITY_DEFINITIONS = exports.identityOracleDef = exports.identityAgentDef = exports.identityUniversalDef = exports.DEFAULT_ORACLE_CONFIG = exports.DEFAULT_REPUTATION_CONFIG = exports.getReputationDelta = exports.canTransition = exports.IDENTITY_TYPE_NAMES = exports.ATTESTATION_DELTAS = exports.AGENT_TRANSITIONS = exports.IDENTITY_TRANSITIONS = exports.attestationTypeToJSON = exports.attestationTypeFromJSON = exports.ReputationConfig = exports.ChallengeRequest = exports.VouchRequest = exports.Attestation = exports.ReputationDelta = exports.AttestationType = exports.platformToJSON = exports.platformFromJSON = exports.identityStateToJSON = exports.identityStateFromJSON = exports.identityTypeToJSON = exports.identityTypeFromJSON = exports.IdentityDefinition = exports.WithdrawIdentityRequest = exports.PenalizeIdentityRequest = exports.ChallengeIdentityRequest = exports.UpdateStakeRequest = exports.ActivateIdentityRequest = exports.RegisterIdentityRequest = exports.Identity = exports.PenaltyEvent = exports.Reputation = exports.PlatformLink = exports.Platform = exports.IdentityState = exports.IdentityType = void 0;
|
|
22
23
|
// Re-export generated protobuf types (source of truth)
|
|
23
|
-
var
|
|
24
|
-
Object.defineProperty(exports, "
|
|
25
|
-
Object.defineProperty(exports, "
|
|
26
|
-
Object.defineProperty(exports, "
|
|
27
|
-
Object.defineProperty(exports, "
|
|
28
|
-
Object.defineProperty(exports, "
|
|
29
|
-
Object.defineProperty(exports, "
|
|
30
|
-
Object.defineProperty(exports, "
|
|
31
|
-
Object.defineProperty(exports, "
|
|
32
|
-
Object.defineProperty(exports, "
|
|
24
|
+
var identity_js_1 = require("../../generated/ottochain/apps/identity/v1/identity.js");
|
|
25
|
+
Object.defineProperty(exports, "IdentityType", { enumerable: true, get: function () { return identity_js_1.IdentityType; } });
|
|
26
|
+
Object.defineProperty(exports, "IdentityState", { enumerable: true, get: function () { return identity_js_1.IdentityState; } });
|
|
27
|
+
Object.defineProperty(exports, "Platform", { enumerable: true, get: function () { return identity_js_1.Platform; } });
|
|
28
|
+
Object.defineProperty(exports, "PlatformLink", { enumerable: true, get: function () { return identity_js_1.PlatformLink; } });
|
|
29
|
+
Object.defineProperty(exports, "Reputation", { enumerable: true, get: function () { return identity_js_1.Reputation; } });
|
|
30
|
+
Object.defineProperty(exports, "PenaltyEvent", { enumerable: true, get: function () { return identity_js_1.PenaltyEvent; } });
|
|
31
|
+
Object.defineProperty(exports, "Identity", { enumerable: true, get: function () { return identity_js_1.Identity; } });
|
|
32
|
+
Object.defineProperty(exports, "RegisterIdentityRequest", { enumerable: true, get: function () { return identity_js_1.RegisterIdentityRequest; } });
|
|
33
|
+
Object.defineProperty(exports, "ActivateIdentityRequest", { enumerable: true, get: function () { return identity_js_1.ActivateIdentityRequest; } });
|
|
34
|
+
Object.defineProperty(exports, "UpdateStakeRequest", { enumerable: true, get: function () { return identity_js_1.UpdateStakeRequest; } });
|
|
35
|
+
Object.defineProperty(exports, "ChallengeIdentityRequest", { enumerable: true, get: function () { return identity_js_1.ChallengeIdentityRequest; } });
|
|
36
|
+
Object.defineProperty(exports, "PenalizeIdentityRequest", { enumerable: true, get: function () { return identity_js_1.PenalizeIdentityRequest; } });
|
|
37
|
+
Object.defineProperty(exports, "WithdrawIdentityRequest", { enumerable: true, get: function () { return identity_js_1.WithdrawIdentityRequest; } });
|
|
38
|
+
Object.defineProperty(exports, "IdentityDefinition", { enumerable: true, get: function () { return identity_js_1.IdentityDefinition; } });
|
|
39
|
+
Object.defineProperty(exports, "identityTypeFromJSON", { enumerable: true, get: function () { return identity_js_1.identityTypeFromJSON; } });
|
|
40
|
+
Object.defineProperty(exports, "identityTypeToJSON", { enumerable: true, get: function () { return identity_js_1.identityTypeToJSON; } });
|
|
41
|
+
Object.defineProperty(exports, "identityStateFromJSON", { enumerable: true, get: function () { return identity_js_1.identityStateFromJSON; } });
|
|
42
|
+
Object.defineProperty(exports, "identityStateToJSON", { enumerable: true, get: function () { return identity_js_1.identityStateToJSON; } });
|
|
43
|
+
Object.defineProperty(exports, "platformFromJSON", { enumerable: true, get: function () { return identity_js_1.platformFromJSON; } });
|
|
44
|
+
Object.defineProperty(exports, "platformToJSON", { enumerable: true, get: function () { return identity_js_1.platformToJSON; } });
|
|
33
45
|
var attestation_js_1 = require("../../generated/ottochain/apps/identity/v1/attestation.js");
|
|
34
46
|
Object.defineProperty(exports, "AttestationType", { enumerable: true, get: function () { return attestation_js_1.AttestationType; } });
|
|
35
47
|
Object.defineProperty(exports, "ReputationDelta", { enumerable: true, get: function () { return attestation_js_1.ReputationDelta; } });
|
|
@@ -41,15 +53,17 @@ Object.defineProperty(exports, "attestationTypeFromJSON", { enumerable: true, ge
|
|
|
41
53
|
Object.defineProperty(exports, "attestationTypeToJSON", { enumerable: true, get: function () { return attestation_js_1.attestationTypeToJSON; } });
|
|
42
54
|
// Re-export constants and utilities
|
|
43
55
|
var constants_js_1 = require("./constants.js");
|
|
56
|
+
Object.defineProperty(exports, "IDENTITY_TRANSITIONS", { enumerable: true, get: function () { return constants_js_1.IDENTITY_TRANSITIONS; } });
|
|
44
57
|
Object.defineProperty(exports, "AGENT_TRANSITIONS", { enumerable: true, get: function () { return constants_js_1.AGENT_TRANSITIONS; } });
|
|
45
58
|
Object.defineProperty(exports, "ATTESTATION_DELTAS", { enumerable: true, get: function () { return constants_js_1.ATTESTATION_DELTAS; } });
|
|
59
|
+
Object.defineProperty(exports, "IDENTITY_TYPE_NAMES", { enumerable: true, get: function () { return constants_js_1.IDENTITY_TYPE_NAMES; } });
|
|
46
60
|
Object.defineProperty(exports, "canTransition", { enumerable: true, get: function () { return constants_js_1.canTransition; } });
|
|
47
61
|
Object.defineProperty(exports, "getReputationDelta", { enumerable: true, get: function () { return constants_js_1.getReputationDelta; } });
|
|
48
62
|
// ---------------------------------------------------------------------------
|
|
49
63
|
// Configuration Defaults
|
|
50
64
|
// ---------------------------------------------------------------------------
|
|
51
65
|
/**
|
|
52
|
-
* Default reputation configuration for
|
|
66
|
+
* Default reputation configuration for identities
|
|
53
67
|
*/
|
|
54
68
|
exports.DEFAULT_REPUTATION_CONFIG = {
|
|
55
69
|
baseReputation: 10,
|
|
@@ -60,16 +74,33 @@ exports.DEFAULT_REPUTATION_CONFIG = {
|
|
|
60
74
|
minReputation: 0,
|
|
61
75
|
challengeThreshold: 5,
|
|
62
76
|
};
|
|
77
|
+
/**
|
|
78
|
+
* Default oracle configuration
|
|
79
|
+
*/
|
|
80
|
+
exports.DEFAULT_ORACLE_CONFIG = {
|
|
81
|
+
minStake: 100,
|
|
82
|
+
slashCooldownEpochs: 7,
|
|
83
|
+
accuracyThreshold: 70,
|
|
84
|
+
maxDisputeRate: 30,
|
|
85
|
+
};
|
|
63
86
|
// ---------------------------------------------------------------------------
|
|
64
|
-
// State Machine
|
|
87
|
+
// State Machine Definitions (generated from JSON at build time)
|
|
65
88
|
// ---------------------------------------------------------------------------
|
|
66
89
|
const index_js_1 = require("./state-machines/index.js");
|
|
90
|
+
Object.defineProperty(exports, "identityUniversalDef", { enumerable: true, get: function () { return index_js_1.identityUniversalDef; } });
|
|
91
|
+
Object.defineProperty(exports, "identityAgentDef", { enumerable: true, get: function () { return index_js_1.identityAgentDef; } });
|
|
92
|
+
Object.defineProperty(exports, "identityOracleDef", { enumerable: true, get: function () { return index_js_1.identityOracleDef; } });
|
|
93
|
+
/** All identity state machine definitions */
|
|
94
|
+
exports.IDENTITY_DEFINITIONS = {
|
|
95
|
+
universal: index_js_1.identityUniversalDef,
|
|
96
|
+
agent: index_js_1.identityAgentDef,
|
|
97
|
+
oracle: index_js_1.identityOracleDef,
|
|
98
|
+
};
|
|
67
99
|
/**
|
|
68
|
-
* Get
|
|
69
|
-
*
|
|
70
|
-
* @returns The state machine definition JSON for AgentIdentity
|
|
100
|
+
* Get an identity state machine definition by type.
|
|
101
|
+
* @param type - 'universal' | 'agent' | 'oracle' (default: 'agent')
|
|
71
102
|
*/
|
|
72
|
-
function getIdentityDefinition() {
|
|
73
|
-
return
|
|
103
|
+
function getIdentityDefinition(type = 'agent') {
|
|
104
|
+
return exports.IDENTITY_DEFINITIONS[type];
|
|
74
105
|
}
|
|
75
106
|
exports.getIdentityDefinition = getIdentityDefinition;
|