@sentropic/h2a 0.1.6 → 0.1.7
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/README.md +1 -0
- package/dist/abc.d.ts +3 -18
- package/dist/abc.d.ts.map +1 -1
- package/dist/abc.js +13 -18
- package/dist/abc.js.map +1 -1
- package/dist/index.d.ts +2 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/policy-precedence.d.ts +50 -0
- package/dist/policy-precedence.d.ts.map +1 -0
- package/dist/policy-precedence.js +98 -0
- package/dist/policy-precedence.js.map +1 -0
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -10,6 +10,7 @@ Current bootstrap surface:
|
|
|
10
10
|
- contractual artifact profiles + strict audit helpers for CONTRACT / POLICY / ENGAGEMENT
|
|
11
11
|
- escalation target resolution against ENFORCEMENT_PLAN routes
|
|
12
12
|
- ABC model compatibility profiles + audit helper for enterprise / ecosystem / government-citizen mappings
|
|
13
|
+
- policy precedence profiles for ABC contexts, with explicit escalation rather than a hidden V1 resolver
|
|
13
14
|
- multi-human mode taxonomy + selector for peer, delegated, shared-engagement, federated, consortium, and public-authority flows
|
|
14
15
|
- governance boundary classification for protocol / policy / implementation items
|
|
15
16
|
- canonical JSON + SHA-256 hashing
|
package/dist/abc.d.ts
CHANGED
|
@@ -88,12 +88,7 @@ export declare const H2A_ABC_MODEL_PROFILES: Readonly<{
|
|
|
88
88
|
readonly status: "partial";
|
|
89
89
|
readonly evidence: "RECOURSE is an escalation authority kind";
|
|
90
90
|
readonly gap: "recourse has routing vocabulary but no adjudication lifecycle";
|
|
91
|
-
},
|
|
92
|
-
readonly capability: "policy-precedence";
|
|
93
|
-
readonly status: "deferred";
|
|
94
|
-
readonly evidence: "policy conflicts can be escalated";
|
|
95
|
-
readonly gap: "policy precedence is not yet resolved by a V1 engine";
|
|
96
|
-
}];
|
|
91
|
+
}, H2AAbcModelCapabilityDescriptor];
|
|
97
92
|
}>;
|
|
98
93
|
readonly B_ECOSYSTEM: Readonly<{
|
|
99
94
|
id: "B_ECOSYSTEM";
|
|
@@ -142,12 +137,7 @@ export declare const H2A_ABC_MODEL_PROFILES: Readonly<{
|
|
|
142
137
|
readonly status: "partial";
|
|
143
138
|
readonly evidence: "RECOURSE and QUORUM targets can be declared in ENFORCEMENT_PLAN";
|
|
144
139
|
readonly gap: "recourse/deadlock handling is routable but not procedurally specified";
|
|
145
|
-
},
|
|
146
|
-
readonly capability: "policy-precedence";
|
|
147
|
-
readonly status: "deferred";
|
|
148
|
-
readonly evidence: "conflicts can block signatures or escalate";
|
|
149
|
-
readonly gap: "policy precedence across peer organizations is not yet resolved by a V1 engine";
|
|
150
|
-
}];
|
|
140
|
+
}, H2AAbcModelCapabilityDescriptor];
|
|
151
141
|
}>;
|
|
152
142
|
readonly C_GOVERNMENT_CITIZEN: Readonly<{
|
|
153
143
|
id: "C_GOVERNMENT_CITIZEN";
|
|
@@ -201,12 +191,7 @@ export declare const H2A_ABC_MODEL_PROFILES: Readonly<{
|
|
|
201
191
|
readonly status: "partial";
|
|
202
192
|
readonly evidence: "hashes and references can support minimized proofs";
|
|
203
193
|
readonly gap: "controlled disclosure for public authority evidence is not yet standardized";
|
|
204
|
-
},
|
|
205
|
-
readonly capability: "policy-precedence";
|
|
206
|
-
readonly status: "deferred";
|
|
207
|
-
readonly evidence: "imposed policies and external authorities are representable";
|
|
208
|
-
readonly gap: "policy precedence between public law, contracts, and local policies is unresolved";
|
|
209
|
-
}];
|
|
194
|
+
}, H2AAbcModelCapabilityDescriptor];
|
|
210
195
|
}>;
|
|
211
196
|
}>;
|
|
212
197
|
export declare function getAbcModelProfile(modelId: string): H2AAbcModelProfileDescriptor | undefined;
|
package/dist/abc.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"abc.d.ts","sourceRoot":"","sources":["../src/abc.ts"],"names":[],"mappings":"AAAA,OAAO,EAIL,KAAK,eAAe,EACpB,KAAK,qBAAqB,EAC1B,KAAK,OAAO,EACb,MAAM,YAAY,CAAC;AACpB,OAAO,EAEL,KAAK,0BAA0B,EAChC,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"abc.d.ts","sourceRoot":"","sources":["../src/abc.ts"],"names":[],"mappings":"AAAA,OAAO,EAIL,KAAK,eAAe,EACpB,KAAK,qBAAqB,EAC1B,KAAK,OAAO,EACb,MAAM,YAAY,CAAC;AACpB,OAAO,EAEL,KAAK,0BAA0B,EAChC,MAAM,iBAAiB,CAAC;AAGzB,eAAO,MAAM,iBAAiB,kEAIpB,CAAC;AAEX,eAAO,MAAM,0BAA0B,kSAa7B,CAAC;AAEX,MAAM,MAAM,aAAa,GAAG,CAAC,OAAO,iBAAiB,CAAC,CAAC,MAAM,CAAC,CAAC;AAC/D,MAAM,MAAM,WAAW,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC;AAC1C,MAAM,MAAM,cAAc,GACtB,sBAAsB,GACtB,iBAAiB,GACjB,kBAAkB,CAAC;AACvB,MAAM,MAAM,qBAAqB,GAC/B,CAAC,OAAO,0BAA0B,CAAC,CAAC,MAAM,CAAC,CAAC;AAC9C,MAAM,MAAM,2BAA2B,GACnC,SAAS,GACT,SAAS,GACT,UAAU,CAAC;AAEf,MAAM,WAAW,+BAA+B;IAC9C,QAAQ,CAAC,UAAU,EAAE,qBAAqB,CAAC;IAC3C,QAAQ,CAAC,MAAM,EAAE,2BAA2B,CAAC;IAC7C,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,4BAA4B;IAC3C,QAAQ,CAAC,EAAE,EAAE,aAAa,CAAC;IAC3B,QAAQ,CAAC,KAAK,EAAE,WAAW,CAAC;IAC5B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,QAAQ,EAAE,cAAc,CAAC;IAClC,QAAQ,CAAC,aAAa,EAAE,SAAS,OAAO,EAAE,CAAC;IAC3C,QAAQ,CAAC,qBAAqB,EAAE,SAAS,eAAe,EAAE,CAAC;IAC3D,QAAQ,CAAC,2BAA2B,EAAE,SAAS,qBAAqB,EAAE,CAAC;IACvE,QAAQ,CAAC,wBAAwB,EAAE,SAAS,0BAA0B,EAAE,CAAC;IACzE,QAAQ,CAAC,YAAY,EAAE,SAAS,+BAA+B,EAAE,CAAC;CACnE;AAED,MAAM,WAAW,8BAA8B;IAC7C,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IACrB,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC;IACxB,QAAQ,CAAC,OAAO,CAAC,EAAE,aAAa,CAAC;IACjC,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC;IACnC,QAAQ,CAAC,IAAI,EAAE,SAAS,MAAM,EAAE,CAAC;IACjC,QAAQ,CAAC,OAAO,EAAE,SAAS,qBAAqB,EAAE,CAAC;IACnD,QAAQ,CAAC,OAAO,EAAE,SAAS,qBAAqB,EAAE,CAAC;IACnD,QAAQ,CAAC,QAAQ,EAAE,SAAS,qBAAqB,EAAE,CAAC;CACrD;AAmGD,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA2FsC,CAAC;AAkB1E,wBAAgB,kBAAkB,CAChC,OAAO,EAAE,MAAM,GACd,4BAA4B,GAAG,SAAS,CAK1C;AAED,wBAAgB,0BAA0B,CACxC,OAAO,EAAE,MAAM,GACd,8BAA8B,CAmEhC"}
|
package/dist/abc.js
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { H2A_ARTIFACT_KINDS, H2A_POLICY_ADOPTION_MODES, H2A_ROLES } from "./types.js";
|
|
2
2
|
import { H2A_ESCALATION_AUTHORITY_KINDS } from "./escalation.js";
|
|
3
|
+
import { H2A_POLICY_PRECEDENCE_PROFILES } from "./policy-precedence.js";
|
|
3
4
|
export const H2A_ABC_MODEL_IDS = [
|
|
4
5
|
"A_ENTERPRISE",
|
|
5
6
|
"B_ECOSYSTEM",
|
|
@@ -97,6 +98,15 @@ const BASE_SHIPPED_CAPABILITIES = [
|
|
|
97
98
|
evidence: "DEC-040 exposes EXTERNAL_AUTHORITY as an escalation authority kind"
|
|
98
99
|
}
|
|
99
100
|
];
|
|
101
|
+
function policyPrecedenceCapability(modelId) {
|
|
102
|
+
const profile = H2A_POLICY_PRECEDENCE_PROFILES[modelId];
|
|
103
|
+
return {
|
|
104
|
+
capability: "policy-precedence",
|
|
105
|
+
status: "partial",
|
|
106
|
+
evidence: `policy precedence profiles are declared (${profile.orderedTiers.join(" > ")})`,
|
|
107
|
+
gap: "policy precedence profiles are declared, but there is no V1 resolver; conflicts escalate instead of selecting a hidden winner"
|
|
108
|
+
};
|
|
109
|
+
}
|
|
100
110
|
export const H2A_ABC_MODEL_PROFILES = Object.freeze({
|
|
101
111
|
A_ENTERPRISE: Object.freeze({
|
|
102
112
|
id: "A_ENTERPRISE",
|
|
@@ -127,12 +137,7 @@ export const H2A_ABC_MODEL_PROFILES = Object.freeze({
|
|
|
127
137
|
evidence: "RECOURSE is an escalation authority kind",
|
|
128
138
|
gap: "recourse has routing vocabulary but no adjudication lifecycle"
|
|
129
139
|
},
|
|
130
|
-
|
|
131
|
-
capability: "policy-precedence",
|
|
132
|
-
status: "deferred",
|
|
133
|
-
evidence: "policy conflicts can be escalated",
|
|
134
|
-
gap: "policy precedence is not yet resolved by a V1 engine"
|
|
135
|
-
}
|
|
140
|
+
policyPrecedenceCapability("A_ENTERPRISE")
|
|
136
141
|
]
|
|
137
142
|
}),
|
|
138
143
|
B_ECOSYSTEM: Object.freeze({
|
|
@@ -158,12 +163,7 @@ export const H2A_ABC_MODEL_PROFILES = Object.freeze({
|
|
|
158
163
|
evidence: "RECOURSE and QUORUM targets can be declared in ENFORCEMENT_PLAN",
|
|
159
164
|
gap: "recourse/deadlock handling is routable but not procedurally specified"
|
|
160
165
|
},
|
|
161
|
-
|
|
162
|
-
capability: "policy-precedence",
|
|
163
|
-
status: "deferred",
|
|
164
|
-
evidence: "conflicts can block signatures or escalate",
|
|
165
|
-
gap: "policy precedence across peer organizations is not yet resolved by a V1 engine"
|
|
166
|
-
}
|
|
166
|
+
policyPrecedenceCapability("B_ECOSYSTEM")
|
|
167
167
|
]
|
|
168
168
|
}),
|
|
169
169
|
C_GOVERNMENT_CITIZEN: Object.freeze({
|
|
@@ -195,12 +195,7 @@ export const H2A_ABC_MODEL_PROFILES = Object.freeze({
|
|
|
195
195
|
evidence: "hashes and references can support minimized proofs",
|
|
196
196
|
gap: "controlled disclosure for public authority evidence is not yet standardized"
|
|
197
197
|
},
|
|
198
|
-
|
|
199
|
-
capability: "policy-precedence",
|
|
200
|
-
status: "deferred",
|
|
201
|
-
evidence: "imposed policies and external authorities are representable",
|
|
202
|
-
gap: "policy precedence between public law, contracts, and local policies is unresolved"
|
|
203
|
-
}
|
|
198
|
+
policyPrecedenceCapability("C_GOVERNMENT_CITIZEN")
|
|
204
199
|
]
|
|
205
200
|
})
|
|
206
201
|
});
|
package/dist/abc.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"abc.js","sourceRoot":"","sources":["../src/abc.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,kBAAkB,EAClB,yBAAyB,EACzB,SAAS,EAIV,MAAM,YAAY,CAAC;AACpB,OAAO,EACL,8BAA8B,EAE/B,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"abc.js","sourceRoot":"","sources":["../src/abc.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -4,6 +4,8 @@ export { H2A_MULTI_HUMAN_MODE_IDS, H2A_MULTI_HUMAN_MODES, getMultiHumanMode, sel
|
|
|
4
4
|
export type { H2AMultiHumanChannel, H2AMultiHumanModeDescriptor, H2AMultiHumanModeId, H2AMultiHumanModeRequest, H2AMultiHumanModeSelection, H2AMultiHumanModeSelectionFailure, H2AMultiHumanModeSelectionResult } from "./multi-human.js";
|
|
5
5
|
export { H2A_GOVERNANCE_BOUNDARY_ITEMS, H2A_GOVERNANCE_BOUNDARY_LAYERS, H2A_GOVERNANCE_BOUNDARY_STATUSES, classifyGovernanceBoundary, listGovernanceBoundaryItems } from "./governance-boundary.js";
|
|
6
6
|
export type { H2AGovernanceBoundaryItemDescriptor, H2AGovernanceBoundaryItemId, H2AGovernanceBoundaryLayer, H2AGovernanceBoundaryStatus } from "./governance-boundary.js";
|
|
7
|
+
export { H2A_POLICY_PRECEDENCE_CONFLICT_DISPOSITIONS, H2A_POLICY_PRECEDENCE_PROFILES, H2A_POLICY_PRECEDENCE_TIERS, auditPolicyPrecedenceProfile, getPolicyPrecedenceProfile } from "./policy-precedence.js";
|
|
8
|
+
export type { H2APolicyPrecedenceAuditResult, H2APolicyPrecedenceConflictDisposition, H2APolicyPrecedenceProfileDescriptor, H2APolicyPrecedenceTier } from "./policy-precedence.js";
|
|
7
9
|
export { createEnvelope, isH2AEnvelope } from "./envelope.js";
|
|
8
10
|
export { assertValidNegotiationState } from "./negotiation.js";
|
|
9
11
|
export { canonicalize, computeHash } from "./canonical.js";
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,0BAA0B,EAC1B,iBAAiB,EACjB,sBAAsB,EACtB,0BAA0B,EAC1B,kBAAkB,EACnB,MAAM,UAAU,CAAC;AAClB,YAAY,EACV,qBAAqB,EACrB,+BAA+B,EAC/B,2BAA2B,EAC3B,8BAA8B,EAC9B,aAAa,EACb,4BAA4B,EAC5B,cAAc,EACd,WAAW,EACZ,MAAM,UAAU,CAAC;AAClB,OAAO,EACL,wBAAwB,EACxB,qBAAqB,EACrB,iBAAiB,EACjB,oBAAoB,EACrB,MAAM,kBAAkB,CAAC;AAC1B,YAAY,EACV,oBAAoB,EACpB,2BAA2B,EAC3B,mBAAmB,EACnB,wBAAwB,EACxB,0BAA0B,EAC1B,iCAAiC,EACjC,gCAAgC,EACjC,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EACL,6BAA6B,EAC7B,8BAA8B,EAC9B,gCAAgC,EAChC,0BAA0B,EAC1B,2BAA2B,EAC5B,MAAM,0BAA0B,CAAC;AAClC,YAAY,EACV,mCAAmC,EACnC,2BAA2B,EAC3B,0BAA0B,EAC1B,2BAA2B,EAC5B,MAAM,0BAA0B,CAAC;AAClC,OAAO,EACL,cAAc,EACd,aAAa,EACd,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,2BAA2B,EAAE,MAAM,kBAAkB,CAAC;AAC/D,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC3D,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAChE,YAAY,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAClD,OAAO,EACL,kBAAkB,EAClB,kBAAkB,EAClB,6BAA6B,EAC7B,kBAAkB,EACnB,MAAM,cAAc,CAAC;AACtB,YAAY,EACV,eAAe,EACf,iBAAiB,EACjB,sBAAsB,EACvB,MAAM,cAAc,CAAC;AACtB,OAAO,EACL,WAAW,EACX,WAAW,EACX,UAAU,EACV,iBAAiB,EACjB,YAAY,EACZ,SAAS,EACT,QAAQ,EACR,WAAW,EACZ,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACL,oBAAoB,EACpB,yBAAyB,EACzB,mBAAmB,EACpB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACL,iCAAiC,EACjC,mCAAmC,EACnC,wBAAwB,EACxB,6BAA6B,EAC9B,MAAM,kBAAkB,CAAC;AAC1B,YAAY,EACV,sBAAsB,EACtB,iCAAiC,EACjC,0BAA0B,EAC1B,6BAA6B,EAC7B,uCAAuC,EACxC,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EACL,8BAA8B,EAC9B,uBAAuB,EACvB,8BAA8B,EAC9B,uBAAuB,EACxB,MAAM,iBAAiB,CAAC;AACzB,YAAY,EACV,0BAA0B,EAC1B,oBAAoB,EACpB,uBAAuB,EACvB,2BAA2B,EAC3B,2BAA2B,EAC3B,0BAA0B,EAC1B,6BAA6B,EAC9B,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AAC7D,YAAY,EAAE,gCAAgC,EAAE,MAAM,qBAAqB,CAAC;AAC5E,OAAO,EACL,kBAAkB,EAClB,mBAAmB,EACnB,kBAAkB,EAClB,sBAAsB,EACtB,yBAAyB,EACzB,YAAY,EACZ,SAAS,EACT,WAAW,EACZ,MAAM,YAAY,CAAC;AACpB,YAAY,EACV,WAAW,EACX,oBAAoB,EACpB,YAAY,EACZ,eAAe,EACf,YAAY,EACZ,gBAAgB,EAChB,WAAW,EACX,kBAAkB,EAClB,aAAa,EACb,WAAW,EACX,eAAe,EACf,UAAU,EACV,oBAAoB,EACpB,mBAAmB,EACnB,SAAS,EACT,qBAAqB,EACrB,OAAO,EACP,YAAY,EACb,MAAM,YAAY,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
export { H2A_ABC_MODEL_CAPABILITIES, H2A_ABC_MODEL_IDS, H2A_ABC_MODEL_PROFILES, auditAbcModelCompatibility, getAbcModelProfile } from "./abc.js";
|
|
2
2
|
export { H2A_MULTI_HUMAN_MODE_IDS, H2A_MULTI_HUMAN_MODES, getMultiHumanMode, selectMultiHumanMode } from "./multi-human.js";
|
|
3
3
|
export { H2A_GOVERNANCE_BOUNDARY_ITEMS, H2A_GOVERNANCE_BOUNDARY_LAYERS, H2A_GOVERNANCE_BOUNDARY_STATUSES, classifyGovernanceBoundary, listGovernanceBoundaryItems } from "./governance-boundary.js";
|
|
4
|
+
export { H2A_POLICY_PRECEDENCE_CONFLICT_DISPOSITIONS, H2A_POLICY_PRECEDENCE_PROFILES, H2A_POLICY_PRECEDENCE_TIERS, auditPolicyPrecedenceProfile, getPolicyPrecedenceProfile } from "./policy-precedence.js";
|
|
4
5
|
export { createEnvelope, isH2AEnvelope } from "./envelope.js";
|
|
5
6
|
export { assertValidNegotiationState } from "./negotiation.js";
|
|
6
7
|
export { canonicalize, computeHash } from "./canonical.js";
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,0BAA0B,EAC1B,iBAAiB,EACjB,sBAAsB,EACtB,0BAA0B,EAC1B,kBAAkB,EACnB,MAAM,UAAU,CAAC;AAWlB,OAAO,EACL,wBAAwB,EACxB,qBAAqB,EACrB,iBAAiB,EACjB,oBAAoB,EACrB,MAAM,kBAAkB,CAAC;AAU1B,OAAO,EACL,6BAA6B,EAC7B,8BAA8B,EAC9B,gCAAgC,EAChC,0BAA0B,EAC1B,2BAA2B,EAC5B,MAAM,0BAA0B,CAAC;AAOlC,OAAO,EACL,cAAc,EACd,aAAa,EACd,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,2BAA2B,EAAE,MAAM,kBAAkB,CAAC;AAC/D,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC3D,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAEhE,OAAO,EACL,kBAAkB,EAClB,kBAAkB,EAClB,6BAA6B,EAC7B,kBAAkB,EACnB,MAAM,cAAc,CAAC;AAMtB,OAAO,EACL,WAAW,EACX,WAAW,EACX,UAAU,EACV,iBAAiB,EACjB,YAAY,EACZ,SAAS,EACT,QAAQ,EACR,WAAW,EACZ,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACL,oBAAoB,EACpB,yBAAyB,EACzB,mBAAmB,EACpB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACL,iCAAiC,EACjC,mCAAmC,EACnC,wBAAwB,EACxB,6BAA6B,EAC9B,MAAM,kBAAkB,CAAC;AAQ1B,OAAO,EACL,8BAA8B,EAC9B,uBAAuB,EACvB,8BAA8B,EAC9B,uBAAuB,EACxB,MAAM,iBAAiB,CAAC;AAUzB,OAAO,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AAE7D,OAAO,EACL,kBAAkB,EAClB,mBAAmB,EACnB,kBAAkB,EAClB,sBAAsB,EACtB,yBAAyB,EACzB,YAAY,EACZ,SAAS,EACT,WAAW,EACZ,MAAM,YAAY,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,0BAA0B,EAC1B,iBAAiB,EACjB,sBAAsB,EACtB,0BAA0B,EAC1B,kBAAkB,EACnB,MAAM,UAAU,CAAC;AAWlB,OAAO,EACL,wBAAwB,EACxB,qBAAqB,EACrB,iBAAiB,EACjB,oBAAoB,EACrB,MAAM,kBAAkB,CAAC;AAU1B,OAAO,EACL,6BAA6B,EAC7B,8BAA8B,EAC9B,gCAAgC,EAChC,0BAA0B,EAC1B,2BAA2B,EAC5B,MAAM,0BAA0B,CAAC;AAOlC,OAAO,EACL,2CAA2C,EAC3C,8BAA8B,EAC9B,2BAA2B,EAC3B,4BAA4B,EAC5B,0BAA0B,EAC3B,MAAM,wBAAwB,CAAC;AAOhC,OAAO,EACL,cAAc,EACd,aAAa,EACd,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,2BAA2B,EAAE,MAAM,kBAAkB,CAAC;AAC/D,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC3D,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAEhE,OAAO,EACL,kBAAkB,EAClB,kBAAkB,EAClB,6BAA6B,EAC7B,kBAAkB,EACnB,MAAM,cAAc,CAAC;AAMtB,OAAO,EACL,WAAW,EACX,WAAW,EACX,UAAU,EACV,iBAAiB,EACjB,YAAY,EACZ,SAAS,EACT,QAAQ,EACR,WAAW,EACZ,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACL,oBAAoB,EACpB,yBAAyB,EACzB,mBAAmB,EACpB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACL,iCAAiC,EACjC,mCAAmC,EACnC,wBAAwB,EACxB,6BAA6B,EAC9B,MAAM,kBAAkB,CAAC;AAQ1B,OAAO,EACL,8BAA8B,EAC9B,uBAAuB,EACvB,8BAA8B,EAC9B,uBAAuB,EACxB,MAAM,iBAAiB,CAAC;AAUzB,OAAO,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AAE7D,OAAO,EACL,kBAAkB,EAClB,mBAAmB,EACnB,kBAAkB,EAClB,sBAAsB,EACtB,yBAAyB,EACzB,YAAY,EACZ,SAAS,EACT,WAAW,EACZ,MAAM,YAAY,CAAC"}
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
import type { H2AAbcModelId } from "./abc.js";
|
|
2
|
+
export declare const H2A_POLICY_PRECEDENCE_TIERS: readonly ["public-authority", "contractual", "federated", "local"];
|
|
3
|
+
export declare const H2A_POLICY_PRECEDENCE_CONFLICT_DISPOSITIONS: readonly ["escalate-not-resolve"];
|
|
4
|
+
export type H2APolicyPrecedenceTier = (typeof H2A_POLICY_PRECEDENCE_TIERS)[number];
|
|
5
|
+
export type H2APolicyPrecedenceConflictDisposition = (typeof H2A_POLICY_PRECEDENCE_CONFLICT_DISPOSITIONS)[number];
|
|
6
|
+
export interface H2APolicyPrecedenceProfileDescriptor {
|
|
7
|
+
readonly modelId: H2AAbcModelId;
|
|
8
|
+
readonly label: string;
|
|
9
|
+
readonly orderedTiers: readonly H2APolicyPrecedenceTier[];
|
|
10
|
+
readonly conflictDisposition: H2APolicyPrecedenceConflictDisposition;
|
|
11
|
+
readonly rationale: string;
|
|
12
|
+
readonly references: readonly string[];
|
|
13
|
+
}
|
|
14
|
+
export interface H2APolicyPrecedenceAuditResult {
|
|
15
|
+
readonly ok: boolean;
|
|
16
|
+
readonly profileId?: H2AAbcModelId;
|
|
17
|
+
readonly orderedTiers?: readonly H2APolicyPrecedenceTier[];
|
|
18
|
+
readonly resolvesConflicts: boolean;
|
|
19
|
+
readonly issues: readonly string[];
|
|
20
|
+
readonly unresolved: readonly string[];
|
|
21
|
+
}
|
|
22
|
+
export declare const H2A_POLICY_PRECEDENCE_PROFILES: Readonly<{
|
|
23
|
+
readonly A_ENTERPRISE: Readonly<{
|
|
24
|
+
modelId: "A_ENTERPRISE";
|
|
25
|
+
label: "A - enterprise hierarchy";
|
|
26
|
+
orderedTiers: readonly ["public-authority", "contractual", "local", "federated"];
|
|
27
|
+
conflictDisposition: "escalate-not-resolve";
|
|
28
|
+
rationale: "Enterprise V1 reads public authority and contracts before local operating policies; peer/federated policy remains explicit and escalated when it conflicts.";
|
|
29
|
+
references: readonly ["REQ-041", "DEC-039", "DEC-041"];
|
|
30
|
+
}>;
|
|
31
|
+
readonly B_ECOSYSTEM: Readonly<{
|
|
32
|
+
modelId: "B_ECOSYSTEM";
|
|
33
|
+
label: "B - peer ecosystem";
|
|
34
|
+
orderedTiers: readonly ["public-authority", "contractual", "federated", "local"];
|
|
35
|
+
conflictDisposition: "escalate-not-resolve";
|
|
36
|
+
rationale: "Peer ecosystems read shared/federated policy before local participant policy after public and contractual constraints.";
|
|
37
|
+
references: readonly ["REQ-041", "DEC-039", "DEC-041"];
|
|
38
|
+
}>;
|
|
39
|
+
readonly C_GOVERNMENT_CITIZEN: Readonly<{
|
|
40
|
+
modelId: "C_GOVERNMENT_CITIZEN";
|
|
41
|
+
label: "C - public authority ecosystem";
|
|
42
|
+
orderedTiers: readonly ["public-authority", "contractual", "federated", "local"];
|
|
43
|
+
conflictDisposition: "escalate-not-resolve";
|
|
44
|
+
rationale: "Public-authority contexts read imposed public policy first; contracts and delegated/federated rules remain explicit below that surface.";
|
|
45
|
+
references: readonly ["REQ-041", "DEC-039", "DEC-041"];
|
|
46
|
+
}>;
|
|
47
|
+
}>;
|
|
48
|
+
export declare function getPolicyPrecedenceProfile(modelId: string): H2APolicyPrecedenceProfileDescriptor | undefined;
|
|
49
|
+
export declare function auditPolicyPrecedenceProfile(modelId: string): H2APolicyPrecedenceAuditResult;
|
|
50
|
+
//# sourceMappingURL=policy-precedence.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"policy-precedence.d.ts","sourceRoot":"","sources":["../src/policy-precedence.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAE9C,eAAO,MAAM,2BAA2B,oEAK9B,CAAC;AAEX,eAAO,MAAM,2CAA2C,mCAE9C,CAAC;AAEX,MAAM,MAAM,uBAAuB,GACjC,CAAC,OAAO,2BAA2B,CAAC,CAAC,MAAM,CAAC,CAAC;AAC/C,MAAM,MAAM,sCAAsC,GAChD,CAAC,OAAO,2CAA2C,CAAC,CAAC,MAAM,CAAC,CAAC;AAE/D,MAAM,WAAW,oCAAoC;IACnD,QAAQ,CAAC,OAAO,EAAE,aAAa,CAAC;IAChC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,YAAY,EAAE,SAAS,uBAAuB,EAAE,CAAC;IAC1D,QAAQ,CAAC,mBAAmB,EAAE,sCAAsC,CAAC;IACrE,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,UAAU,EAAE,SAAS,MAAM,EAAE,CAAC;CACxC;AAED,MAAM,WAAW,8BAA8B;IAC7C,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IACrB,QAAQ,CAAC,SAAS,CAAC,EAAE,aAAa,CAAC;IACnC,QAAQ,CAAC,YAAY,CAAC,EAAE,SAAS,uBAAuB,EAAE,CAAC;IAC3D,QAAQ,CAAC,iBAAiB,EAAE,OAAO,CAAC;IACpC,QAAQ,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC;IACnC,QAAQ,CAAC,UAAU,EAAE,SAAS,MAAM,EAAE,CAAC;CACxC;AAED,eAAO,MAAM,8BAA8B;;;;;;;;;;;;;;;;;;;;;;;;;EA2CsC,CAAC;AAElF,wBAAgB,0BAA0B,CACxC,OAAO,EAAE,MAAM,GACd,oCAAoC,GAAG,SAAS,CAKlD;AAED,wBAAgB,4BAA4B,CAC1C,OAAO,EAAE,MAAM,GACd,8BAA8B,CAgDhC"}
|
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
export const H2A_POLICY_PRECEDENCE_TIERS = [
|
|
2
|
+
"public-authority",
|
|
3
|
+
"contractual",
|
|
4
|
+
"federated",
|
|
5
|
+
"local"
|
|
6
|
+
];
|
|
7
|
+
export const H2A_POLICY_PRECEDENCE_CONFLICT_DISPOSITIONS = [
|
|
8
|
+
"escalate-not-resolve"
|
|
9
|
+
];
|
|
10
|
+
export const H2A_POLICY_PRECEDENCE_PROFILES = Object.freeze({
|
|
11
|
+
A_ENTERPRISE: Object.freeze({
|
|
12
|
+
modelId: "A_ENTERPRISE",
|
|
13
|
+
label: "A - enterprise hierarchy",
|
|
14
|
+
orderedTiers: [
|
|
15
|
+
"public-authority",
|
|
16
|
+
"contractual",
|
|
17
|
+
"local",
|
|
18
|
+
"federated"
|
|
19
|
+
],
|
|
20
|
+
conflictDisposition: "escalate-not-resolve",
|
|
21
|
+
rationale: "Enterprise V1 reads public authority and contracts before local operating policies; peer/federated policy remains explicit and escalated when it conflicts.",
|
|
22
|
+
references: ["REQ-041", "DEC-039", "DEC-041"]
|
|
23
|
+
}),
|
|
24
|
+
B_ECOSYSTEM: Object.freeze({
|
|
25
|
+
modelId: "B_ECOSYSTEM",
|
|
26
|
+
label: "B - peer ecosystem",
|
|
27
|
+
orderedTiers: [
|
|
28
|
+
"public-authority",
|
|
29
|
+
"contractual",
|
|
30
|
+
"federated",
|
|
31
|
+
"local"
|
|
32
|
+
],
|
|
33
|
+
conflictDisposition: "escalate-not-resolve",
|
|
34
|
+
rationale: "Peer ecosystems read shared/federated policy before local participant policy after public and contractual constraints.",
|
|
35
|
+
references: ["REQ-041", "DEC-039", "DEC-041"]
|
|
36
|
+
}),
|
|
37
|
+
C_GOVERNMENT_CITIZEN: Object.freeze({
|
|
38
|
+
modelId: "C_GOVERNMENT_CITIZEN",
|
|
39
|
+
label: "C - public authority ecosystem",
|
|
40
|
+
orderedTiers: [
|
|
41
|
+
"public-authority",
|
|
42
|
+
"contractual",
|
|
43
|
+
"federated",
|
|
44
|
+
"local"
|
|
45
|
+
],
|
|
46
|
+
conflictDisposition: "escalate-not-resolve",
|
|
47
|
+
rationale: "Public-authority contexts read imposed public policy first; contracts and delegated/federated rules remain explicit below that surface.",
|
|
48
|
+
references: ["REQ-041", "DEC-039", "DEC-041"]
|
|
49
|
+
})
|
|
50
|
+
});
|
|
51
|
+
export function getPolicyPrecedenceProfile(modelId) {
|
|
52
|
+
if (!Object.hasOwn(H2A_POLICY_PRECEDENCE_PROFILES, modelId)) {
|
|
53
|
+
return undefined;
|
|
54
|
+
}
|
|
55
|
+
return H2A_POLICY_PRECEDENCE_PROFILES[modelId];
|
|
56
|
+
}
|
|
57
|
+
export function auditPolicyPrecedenceProfile(modelId) {
|
|
58
|
+
const profile = getPolicyPrecedenceProfile(modelId);
|
|
59
|
+
if (!profile) {
|
|
60
|
+
return {
|
|
61
|
+
ok: false,
|
|
62
|
+
resolvesConflicts: false,
|
|
63
|
+
issues: [`unknown policy precedence profile: ${modelId}`],
|
|
64
|
+
unresolved: []
|
|
65
|
+
};
|
|
66
|
+
}
|
|
67
|
+
const issues = [];
|
|
68
|
+
const orderedTiers = [...profile.orderedTiers];
|
|
69
|
+
const knownTiers = new Set(H2A_POLICY_PRECEDENCE_TIERS);
|
|
70
|
+
const seenTiers = new Set(orderedTiers);
|
|
71
|
+
const unknownTiers = orderedTiers.filter((tier) => !knownTiers.has(tier));
|
|
72
|
+
const missingTiers = H2A_POLICY_PRECEDENCE_TIERS.filter((tier) => !seenTiers.has(tier));
|
|
73
|
+
if (unknownTiers.length > 0) {
|
|
74
|
+
issues.push(`unknown policy precedence tiers: ${unknownTiers.join(", ")}`);
|
|
75
|
+
}
|
|
76
|
+
if (seenTiers.size !== orderedTiers.length) {
|
|
77
|
+
issues.push("policy precedence tiers must not be duplicated");
|
|
78
|
+
}
|
|
79
|
+
if (missingTiers.length > 0) {
|
|
80
|
+
issues.push(`missing policy precedence tiers: ${missingTiers.join(", ")}`);
|
|
81
|
+
}
|
|
82
|
+
if (profile.conflictDisposition !== "escalate-not-resolve") {
|
|
83
|
+
issues.push(`unsupported policy precedence conflict disposition: ${profile.conflictDisposition}`);
|
|
84
|
+
}
|
|
85
|
+
return {
|
|
86
|
+
ok: issues.length === 0,
|
|
87
|
+
profileId: profile.modelId,
|
|
88
|
+
orderedTiers: profile.orderedTiers,
|
|
89
|
+
resolvesConflicts: false,
|
|
90
|
+
issues,
|
|
91
|
+
unresolved: issues.length === 0
|
|
92
|
+
? [
|
|
93
|
+
"The profile declares precedence order, but V1 does not select a winning policy automatically; conflicts must escalate through the declared authority surface."
|
|
94
|
+
]
|
|
95
|
+
: []
|
|
96
|
+
};
|
|
97
|
+
}
|
|
98
|
+
//# sourceMappingURL=policy-precedence.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"policy-precedence.js","sourceRoot":"","sources":["../src/policy-precedence.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,2BAA2B,GAAG;IACzC,kBAAkB;IAClB,aAAa;IACb,WAAW;IACX,OAAO;CACC,CAAC;AAEX,MAAM,CAAC,MAAM,2CAA2C,GAAG;IACzD,sBAAsB;CACd,CAAC;AAyBX,MAAM,CAAC,MAAM,8BAA8B,GAAG,MAAM,CAAC,MAAM,CAAC;IAC1D,YAAY,EAAE,MAAM,CAAC,MAAM,CAAC;QAC1B,OAAO,EAAE,cAAc;QACvB,KAAK,EAAE,0BAA0B;QACjC,YAAY,EAAE;YACZ,kBAAkB;YAClB,aAAa;YACb,OAAO;YACP,WAAW;SACH;QACV,mBAAmB,EAAE,sBAAsB;QAC3C,SAAS,EACP,6JAA6J;QAC/J,UAAU,EAAE,CAAC,SAAS,EAAE,SAAS,EAAE,SAAS,CAAU;KACvD,CAAC;IACF,WAAW,EAAE,MAAM,CAAC,MAAM,CAAC;QACzB,OAAO,EAAE,aAAa;QACtB,KAAK,EAAE,oBAAoB;QAC3B,YAAY,EAAE;YACZ,kBAAkB;YAClB,aAAa;YACb,WAAW;YACX,OAAO;SACC;QACV,mBAAmB,EAAE,sBAAsB;QAC3C,SAAS,EACP,wHAAwH;QAC1H,UAAU,EAAE,CAAC,SAAS,EAAE,SAAS,EAAE,SAAS,CAAU;KACvD,CAAC;IACF,oBAAoB,EAAE,MAAM,CAAC,MAAM,CAAC;QAClC,OAAO,EAAE,sBAAsB;QAC/B,KAAK,EAAE,gCAAgC;QACvC,YAAY,EAAE;YACZ,kBAAkB;YAClB,aAAa;YACb,WAAW;YACX,OAAO;SACC;QACV,mBAAmB,EAAE,sBAAsB;QAC3C,SAAS,EACP,yIAAyI;QAC3I,UAAU,EAAE,CAAC,SAAS,EAAE,SAAS,EAAE,SAAS,CAAU;KACvD,CAAC;CAC4E,CAAC,CAAC;AAElF,MAAM,UAAU,0BAA0B,CACxC,OAAe;IAEf,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,8BAA8B,EAAE,OAAO,CAAC,EAAE,CAAC;QAC5D,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,OAAO,8BAA8B,CAAC,OAAwB,CAAC,CAAC;AAClE,CAAC;AAED,MAAM,UAAU,4BAA4B,CAC1C,OAAe;IAEf,MAAM,OAAO,GAAG,0BAA0B,CAAC,OAAO,CAAC,CAAC;IACpD,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,OAAO;YACL,EAAE,EAAE,KAAK;YACT,iBAAiB,EAAE,KAAK;YACxB,MAAM,EAAE,CAAC,sCAAsC,OAAO,EAAE,CAAC;YACzD,UAAU,EAAE,EAAE;SACf,CAAC;IACJ,CAAC;IAED,MAAM,MAAM,GAAa,EAAE,CAAC;IAC5B,MAAM,YAAY,GAAG,CAAC,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC;IAC/C,MAAM,UAAU,GAAG,IAAI,GAAG,CAAC,2BAA2B,CAAC,CAAC;IACxD,MAAM,SAAS,GAAG,IAAI,GAAG,CAAC,YAAY,CAAC,CAAC;IACxC,MAAM,YAAY,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC;IAC1E,MAAM,YAAY,GAAG,2BAA2B,CAAC,MAAM,CACrD,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,CAC/B,CAAC;IAEF,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC5B,MAAM,CAAC,IAAI,CAAC,oCAAoC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAC7E,CAAC;IACD,IAAI,SAAS,CAAC,IAAI,KAAK,YAAY,CAAC,MAAM,EAAE,CAAC;QAC3C,MAAM,CAAC,IAAI,CAAC,gDAAgD,CAAC,CAAC;IAChE,CAAC;IACD,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC5B,MAAM,CAAC,IAAI,CAAC,oCAAoC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAC7E,CAAC;IACD,IAAI,OAAO,CAAC,mBAAmB,KAAK,sBAAsB,EAAE,CAAC;QAC3D,MAAM,CAAC,IAAI,CACT,uDAAuD,OAAO,CAAC,mBAAmB,EAAE,CACrF,CAAC;IACJ,CAAC;IAED,OAAO;QACL,EAAE,EAAE,MAAM,CAAC,MAAM,KAAK,CAAC;QACvB,SAAS,EAAE,OAAO,CAAC,OAAO;QAC1B,YAAY,EAAE,OAAO,CAAC,YAAY;QAClC,iBAAiB,EAAE,KAAK;QACxB,MAAM;QACN,UAAU,EACR,MAAM,CAAC,MAAM,KAAK,CAAC;YACjB,CAAC,CAAC;gBACE,+JAA+J;aAChK;YACH,CAAC,CAAC,EAAE;KACT,CAAC;AACJ,CAAC"}
|