@nextera.one/axis-server-sdk 2.3.5 → 2.3.6

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.
@@ -422,6 +422,7 @@ interface AxisEffect {
422
422
  }
423
423
  interface HandlerSummary {
424
424
  handler: string;
425
+ prefix?: string;
425
426
  intents: string[];
426
427
  isPublic: boolean;
427
428
  isAnonymous: boolean;
@@ -431,6 +432,8 @@ interface HandlerSummary {
431
432
  sensitivity?: SensitivityLevel;
432
433
  rateLimit?: AxisRateLimitConfig;
433
434
  capsulePolicy?: CapsulePolicyOptions;
435
+ classSensors?: AxisIntentSensorBinding[];
436
+ classObservers?: AxisObserverBinding[];
434
437
  }
435
438
  declare class IntentRouter {
436
439
  private readonly logger;
@@ -460,6 +463,9 @@ declare class IntentRouter {
460
463
  private cceHandlers;
461
464
  private ccePipelineConfig;
462
465
  private handlerIntents;
466
+ private handlerPrefixes;
467
+ private handlerClassSensors;
468
+ private handlerClassObservers;
463
469
  constructor(dependencyResolver?: AxisDependencyResolver, observerDispatcher?: ObserverDispatcherService, sensorRegistry?: SensorRegistry);
464
470
  getSchema(intent: string): IntentSchema | undefined;
465
471
  getValidators(intent: string): Map<number, TlvValidatorFn[]> | undefined;
@@ -501,11 +507,15 @@ declare class IntentRouter {
501
507
  getHandlerSensitivity(handlerName: string): SensitivityLevel | undefined;
502
508
  getHandlerRateLimit(handlerName: string): AxisRateLimitConfig | undefined;
503
509
  getHandlerCapsulePolicy(handlerName: string): CapsulePolicyOptions | undefined;
510
+ getHandlerPrefix(handlerName: string): string | undefined;
511
+ getHandlerClassSensors(handlerName: string): AxisIntentSensorBinding[] | undefined;
512
+ getHandlerClassObservers(handlerName: string): AxisObserverBinding[] | undefined;
504
513
  getHandlerSummary(handlerName: string): HandlerSummary | null;
505
514
  getAllHandlerSummaries(): Map<string, HandlerSummary>;
506
515
  private emitIntentObservers;
507
516
  private runIntentSensors;
508
517
  trackHandlerIntent(handlerName: string, intent: string): void;
518
+ trackHandlerMeta(className: string, prefix: string, sensors: AxisIntentSensorBindingInput[], observers: AxisObserverBinding[]): void;
509
519
  private resolveIntentSensor;
510
520
  private getEffectiveCapsulePolicy;
511
521
  private enforceCapsulePolicy;
@@ -422,6 +422,7 @@ interface AxisEffect {
422
422
  }
423
423
  interface HandlerSummary {
424
424
  handler: string;
425
+ prefix?: string;
425
426
  intents: string[];
426
427
  isPublic: boolean;
427
428
  isAnonymous: boolean;
@@ -431,6 +432,8 @@ interface HandlerSummary {
431
432
  sensitivity?: SensitivityLevel;
432
433
  rateLimit?: AxisRateLimitConfig;
433
434
  capsulePolicy?: CapsulePolicyOptions;
435
+ classSensors?: AxisIntentSensorBinding[];
436
+ classObservers?: AxisObserverBinding[];
434
437
  }
435
438
  declare class IntentRouter {
436
439
  private readonly logger;
@@ -460,6 +463,9 @@ declare class IntentRouter {
460
463
  private cceHandlers;
461
464
  private ccePipelineConfig;
462
465
  private handlerIntents;
466
+ private handlerPrefixes;
467
+ private handlerClassSensors;
468
+ private handlerClassObservers;
463
469
  constructor(dependencyResolver?: AxisDependencyResolver, observerDispatcher?: ObserverDispatcherService, sensorRegistry?: SensorRegistry);
464
470
  getSchema(intent: string): IntentSchema | undefined;
465
471
  getValidators(intent: string): Map<number, TlvValidatorFn[]> | undefined;
@@ -501,11 +507,15 @@ declare class IntentRouter {
501
507
  getHandlerSensitivity(handlerName: string): SensitivityLevel | undefined;
502
508
  getHandlerRateLimit(handlerName: string): AxisRateLimitConfig | undefined;
503
509
  getHandlerCapsulePolicy(handlerName: string): CapsulePolicyOptions | undefined;
510
+ getHandlerPrefix(handlerName: string): string | undefined;
511
+ getHandlerClassSensors(handlerName: string): AxisIntentSensorBinding[] | undefined;
512
+ getHandlerClassObservers(handlerName: string): AxisObserverBinding[] | undefined;
504
513
  getHandlerSummary(handlerName: string): HandlerSummary | null;
505
514
  getAllHandlerSummaries(): Map<string, HandlerSummary>;
506
515
  private emitIntentObservers;
507
516
  private runIntentSensors;
508
517
  trackHandlerIntent(handlerName: string, intent: string): void;
518
+ trackHandlerMeta(className: string, prefix: string, sensors: AxisIntentSensorBindingInput[], observers: AxisObserverBinding[]): void;
509
519
  private resolveIntentSensor;
510
520
  private getEffectiveCapsulePolicy;
511
521
  private enforceCapsulePolicy;
package/dist/index.d.mts CHANGED
@@ -1,5 +1,5 @@
1
- import { C as ChainOptions, A as AxisIntentSensorOptions, a as AxisObserverBindingInput, b as AxisIntentSensorBindingInput, R as RequiredProofKind, I as IntentTlvField, T as TlvValidatorFn, c as IntentRouter, O as ObserverDispatcherService, d as AxisChainEnvelope, e as AxisChainResult, f as AxisCapsuleRef, g as AxisChainStep, h as AxisContext, S as SensorRegistry } from './index-9Wqoiq9_.mjs';
2
- export { i as AXIS_ANONYMOUS_KEY, j as AXIS_AUTHORIZED_KEY, k as AXIS_META_KEY, l as AXIS_PUBLIC_KEY, m as AXIS_RATE_LIMIT_KEY, n as AccessProfileResolverSensor, o as Axis, p as AxisAnonymous, q as AxisAuthorized, r as AxisChainEncryption, s as AxisChainRequest, t as AxisChainStatus, u as AxisChainStepResult, v as AxisChainStepStatus, w as AxisEffect, x as AxisExecutionMode, y as AxisIntentEnvelope, z as AxisIntentObserver, B as AxisIntentSensorBinding, D as AxisIntentSensorBindingOptions, E as AxisIntentSensorRef, F as AxisIntentSensorWhen, G as AxisKeyExchangeRef, H as AxisLawArticleSummary, J as AxisLawDecision, K as AxisLawEvaluationContext, L as AxisLawEvaluationResult, M as AxisLawEvaluator, N as AxisObserverBinding, P as AxisObserverBindingOptions, Q as AxisObserverContext, U as AxisObserverDefinition, V as AxisObserverEvent, W as AxisObserverRef, X as AxisObserverRegistration, Y as AxisPublic, Z as AxisRateLimit, _ as AxisRateLimitConfig, $ as BodyBudgetSensor, a0 as CAPSULE_POLICY_METADATA_KEY, a1 as CONTRACT_METADATA_KEY, a2 as CapabilityEnforcementSensor, a3 as Capsule, a4 as CapsulePolicy, a5 as CapsulePolicyOptions, a6 as CapsuleScopeMode, a7 as ChunkHashSensor, a8 as Contract, a9 as DEFAULT_CONTRACTS, aa as EntropySensor, ab as ExecutionContract, ac as ExecutionTimeoutSensor, ad as FALLBACK_CONTRACT, ae as FrameBudgetSensor, af as FrameHeaderSanitySensor, ag as HeaderTLVLimitSensor, ah as INTENT_METADATA_KEY, ai as INTENT_ROUTES_KEY, aj as Intent, ak as IntentAllowlistSensor, al as IntentKind, am as IntentOptions, an as IntentRegistrySensor, ao as IntentRoute, ap as LawEvaluationSensor, aq as LawEvaluationSensorOptions, ar as OBSERVER_BINDINGS_KEY, as as OBSERVER_METADATA_KEY, at as Observer, au as ObserverRegistry, av as ProofPresenceSensor, aw as ProtocolStrictSensor, ax as REQUIRED_PROOF_METADATA_KEY, ay as ReceiptPolicySensor, az as RegisteredChainConfig, aA as RequiredProof, aB as RiskDecision, aC as RiskEvaluation, aD as RiskGateSensor, aE as RiskGateSensorOptions, aF as RiskSignal, aG as RiskSignalCollector, aH as SENSITIVITY_METADATA_KEY, aI as SchemaValidationSensor, aJ as Sensitivity, aK as StreamScopeSensor, aL as TLVParseSensor, aM as TLV_FIELDS_KEY, aN as TLV_VALIDATORS_KEY, aO as TickAuthCapsuleRef, aP as TickAuthSensor, aQ as TickAuthSensorOptions, aR as TickAuthVerifier, aS as TlvEnum, aT as TlvField, aU as TlvFieldKind, aV as TlvFieldMeta, aW as TlvFieldOptions, aX as TlvMinLen, aY as TlvRange, aZ as TlvUtf8Pattern, a_ as TlvValidate, a$ as TlvValidatorMeta, b0 as TpsSensor, b1 as TpsSensorOptions, b2 as VarintHardeningSensor, b3 as Witness, b4 as buildAxisLawEvaluationContext, b5 as toIntentSensorBinding, b6 as toObserverBinding } from './index-9Wqoiq9_.mjs';
1
+ import { C as ChainOptions, A as AxisIntentSensorOptions, a as AxisObserverBindingInput, b as AxisIntentSensorBindingInput, R as RequiredProofKind, I as IntentTlvField, T as TlvValidatorFn, c as IntentRouter, O as ObserverDispatcherService, d as AxisChainEnvelope, e as AxisChainResult, f as AxisCapsuleRef, g as AxisChainStep, h as AxisContext, S as SensorRegistry } from './index-CffTWMtI.mjs';
2
+ export { i as AXIS_ANONYMOUS_KEY, j as AXIS_AUTHORIZED_KEY, k as AXIS_META_KEY, l as AXIS_PUBLIC_KEY, m as AXIS_RATE_LIMIT_KEY, n as AccessProfileResolverSensor, o as Axis, p as AxisAnonymous, q as AxisAuthorized, r as AxisChainEncryption, s as AxisChainRequest, t as AxisChainStatus, u as AxisChainStepResult, v as AxisChainStepStatus, w as AxisEffect, x as AxisExecutionMode, y as AxisIntentEnvelope, z as AxisIntentObserver, B as AxisIntentSensorBinding, D as AxisIntentSensorBindingOptions, E as AxisIntentSensorRef, F as AxisIntentSensorWhen, G as AxisKeyExchangeRef, H as AxisLawArticleSummary, J as AxisLawDecision, K as AxisLawEvaluationContext, L as AxisLawEvaluationResult, M as AxisLawEvaluator, N as AxisObserverBinding, P as AxisObserverBindingOptions, Q as AxisObserverContext, U as AxisObserverDefinition, V as AxisObserverEvent, W as AxisObserverRef, X as AxisObserverRegistration, Y as AxisPublic, Z as AxisRateLimit, _ as AxisRateLimitConfig, $ as BodyBudgetSensor, a0 as CAPSULE_POLICY_METADATA_KEY, a1 as CONTRACT_METADATA_KEY, a2 as CapabilityEnforcementSensor, a3 as Capsule, a4 as CapsulePolicy, a5 as CapsulePolicyOptions, a6 as CapsuleScopeMode, a7 as ChunkHashSensor, a8 as Contract, a9 as DEFAULT_CONTRACTS, aa as EntropySensor, ab as ExecutionContract, ac as ExecutionTimeoutSensor, ad as FALLBACK_CONTRACT, ae as FrameBudgetSensor, af as FrameHeaderSanitySensor, ag as HeaderTLVLimitSensor, ah as INTENT_METADATA_KEY, ai as INTENT_ROUTES_KEY, aj as Intent, ak as IntentAllowlistSensor, al as IntentKind, am as IntentOptions, an as IntentRegistrySensor, ao as IntentRoute, ap as LawEvaluationSensor, aq as LawEvaluationSensorOptions, ar as OBSERVER_BINDINGS_KEY, as as OBSERVER_METADATA_KEY, at as Observer, au as ObserverRegistry, av as ProofPresenceSensor, aw as ProtocolStrictSensor, ax as REQUIRED_PROOF_METADATA_KEY, ay as ReceiptPolicySensor, az as RegisteredChainConfig, aA as RequiredProof, aB as RiskDecision, aC as RiskEvaluation, aD as RiskGateSensor, aE as RiskGateSensorOptions, aF as RiskSignal, aG as RiskSignalCollector, aH as SENSITIVITY_METADATA_KEY, aI as SchemaValidationSensor, aJ as Sensitivity, aK as StreamScopeSensor, aL as TLVParseSensor, aM as TLV_FIELDS_KEY, aN as TLV_VALIDATORS_KEY, aO as TickAuthCapsuleRef, aP as TickAuthSensor, aQ as TickAuthSensorOptions, aR as TickAuthVerifier, aS as TlvEnum, aT as TlvField, aU as TlvFieldKind, aV as TlvFieldMeta, aW as TlvFieldOptions, aX as TlvMinLen, aY as TlvRange, aZ as TlvUtf8Pattern, a_ as TlvValidate, a$ as TlvValidatorMeta, b0 as TpsSensor, b1 as TpsSensorOptions, b2 as VarintHardeningSensor, b3 as Witness, b4 as buildAxisLawEvaluationContext, b5 as toIntentSensorBinding, b6 as toObserverBinding } from './index-CffTWMtI.mjs';
3
3
  import { AxisFrame } from '@nextera.one/axis-protocol';
4
4
  export { AXIS_MAGIC, AXIS_VERSION, AxisBinaryFrame, AxisFrame, TLV as AxisTlvType, ERR_BAD_SIGNATURE, ERR_CONTRACT_VIOLATION, ERR_INVALID_PACKET, ERR_REPLAY_DETECTED, FLAG_BODY_TLV, FLAG_CHAIN_REQ, FLAG_HAS_WITNESS, MAX_BODY_LEN, MAX_FRAME_LEN, MAX_HDR_LEN, MAX_SIG_LEN, NCERT_ALG, NCERT_EXP, NCERT_ISSUER_KID, NCERT_KID, NCERT_NBF, NCERT_NODE_ID, NCERT_PAYLOAD, NCERT_PUB, NCERT_SCOPE, NCERT_SIG, PROOF_CAPSULE, PROOF_JWT, PROOF_LOOM, PROOF_MTLS, PROOF_NONE, PROOF_WITNESS, TLV, TLV_ACTOR_ID, TLV_AUD, TLV_BODY_ARR, TLV_BODY_OBJ, TLV_CAPSULE, TLV_EFFECT, TLV_ERROR_CODE, TLV_ERROR_MSG, TLV_INDEX, TLV_INTENT, TLV_KID, TLV_LOOM_PRESENCE_ID, TLV_LOOM_THREAD_HASH, TLV_LOOM_WRIT, TLV_NODE, TLV_NODE_CERT_HASH, TLV_NODE_KID, TLV_NONCE, TLV_OFFSET, TLV_OK, TLV_PID, TLV_LOOM_PRESENCE_ID as TLV_PRESENCE_ID, TLV_PREV_HASH, TLV_PROOF_REF, TLV_PROOF_TYPE, TLV_REALM, TLV_RECEIPT_HASH, TLV_RID, TLV_SHA256_CHUNK, TLV_LOOM_THREAD_HASH as TLV_THREAD_HASH, TLV_TRACE_ID, TLV_TS, TLV_UPLOAD_ID, TLV_LOOM_WRIT as TLV_WRIT, decodeArray, decodeFrame, decodeObject, decodeTLVs, decodeTLVsList, decodeVarint, encodeFrame, encodeTLVs, encodeVarint, getSignTarget, varintLength } from '@nextera.one/axis-protocol';
5
5
  import { A as AxisObservation, L as LoomReceipt, T as ThreadState, W as WritValidationResult, G as Grant, a as GrantCapability, P as PresenceDeclaration, b as PresenceChallenge, c as Writ, R as Revocation, d as WritBody, e as WritMeta, f as PresenceReceipt, g as GrantStatus, h as PresenceStatus, i as PresenceProof, j as GrantValidationResult, k as PresenceVerifyResult } from './index-DiuKGnQw.mjs';
package/dist/index.d.ts CHANGED
@@ -1,5 +1,5 @@
1
- import { C as ChainOptions, A as AxisIntentSensorOptions, a as AxisObserverBindingInput, b as AxisIntentSensorBindingInput, R as RequiredProofKind, I as IntentTlvField, T as TlvValidatorFn, c as IntentRouter, O as ObserverDispatcherService, d as AxisChainEnvelope, e as AxisChainResult, f as AxisCapsuleRef, g as AxisChainStep, h as AxisContext, S as SensorRegistry } from './index-BN48uIiy.js';
2
- export { i as AXIS_ANONYMOUS_KEY, j as AXIS_AUTHORIZED_KEY, k as AXIS_META_KEY, l as AXIS_PUBLIC_KEY, m as AXIS_RATE_LIMIT_KEY, n as AccessProfileResolverSensor, o as Axis, p as AxisAnonymous, q as AxisAuthorized, r as AxisChainEncryption, s as AxisChainRequest, t as AxisChainStatus, u as AxisChainStepResult, v as AxisChainStepStatus, w as AxisEffect, x as AxisExecutionMode, y as AxisIntentEnvelope, z as AxisIntentObserver, B as AxisIntentSensorBinding, D as AxisIntentSensorBindingOptions, E as AxisIntentSensorRef, F as AxisIntentSensorWhen, G as AxisKeyExchangeRef, H as AxisLawArticleSummary, J as AxisLawDecision, K as AxisLawEvaluationContext, L as AxisLawEvaluationResult, M as AxisLawEvaluator, N as AxisObserverBinding, P as AxisObserverBindingOptions, Q as AxisObserverContext, U as AxisObserverDefinition, V as AxisObserverEvent, W as AxisObserverRef, X as AxisObserverRegistration, Y as AxisPublic, Z as AxisRateLimit, _ as AxisRateLimitConfig, $ as BodyBudgetSensor, a0 as CAPSULE_POLICY_METADATA_KEY, a1 as CONTRACT_METADATA_KEY, a2 as CapabilityEnforcementSensor, a3 as Capsule, a4 as CapsulePolicy, a5 as CapsulePolicyOptions, a6 as CapsuleScopeMode, a7 as ChunkHashSensor, a8 as Contract, a9 as DEFAULT_CONTRACTS, aa as EntropySensor, ab as ExecutionContract, ac as ExecutionTimeoutSensor, ad as FALLBACK_CONTRACT, ae as FrameBudgetSensor, af as FrameHeaderSanitySensor, ag as HeaderTLVLimitSensor, ah as INTENT_METADATA_KEY, ai as INTENT_ROUTES_KEY, aj as Intent, ak as IntentAllowlistSensor, al as IntentKind, am as IntentOptions, an as IntentRegistrySensor, ao as IntentRoute, ap as LawEvaluationSensor, aq as LawEvaluationSensorOptions, ar as OBSERVER_BINDINGS_KEY, as as OBSERVER_METADATA_KEY, at as Observer, au as ObserverRegistry, av as ProofPresenceSensor, aw as ProtocolStrictSensor, ax as REQUIRED_PROOF_METADATA_KEY, ay as ReceiptPolicySensor, az as RegisteredChainConfig, aA as RequiredProof, aB as RiskDecision, aC as RiskEvaluation, aD as RiskGateSensor, aE as RiskGateSensorOptions, aF as RiskSignal, aG as RiskSignalCollector, aH as SENSITIVITY_METADATA_KEY, aI as SchemaValidationSensor, aJ as Sensitivity, aK as StreamScopeSensor, aL as TLVParseSensor, aM as TLV_FIELDS_KEY, aN as TLV_VALIDATORS_KEY, aO as TickAuthCapsuleRef, aP as TickAuthSensor, aQ as TickAuthSensorOptions, aR as TickAuthVerifier, aS as TlvEnum, aT as TlvField, aU as TlvFieldKind, aV as TlvFieldMeta, aW as TlvFieldOptions, aX as TlvMinLen, aY as TlvRange, aZ as TlvUtf8Pattern, a_ as TlvValidate, a$ as TlvValidatorMeta, b0 as TpsSensor, b1 as TpsSensorOptions, b2 as VarintHardeningSensor, b3 as Witness, b4 as buildAxisLawEvaluationContext, b5 as toIntentSensorBinding, b6 as toObserverBinding } from './index-BN48uIiy.js';
1
+ import { C as ChainOptions, A as AxisIntentSensorOptions, a as AxisObserverBindingInput, b as AxisIntentSensorBindingInput, R as RequiredProofKind, I as IntentTlvField, T as TlvValidatorFn, c as IntentRouter, O as ObserverDispatcherService, d as AxisChainEnvelope, e as AxisChainResult, f as AxisCapsuleRef, g as AxisChainStep, h as AxisContext, S as SensorRegistry } from './index-CqAU2zlr.js';
2
+ export { i as AXIS_ANONYMOUS_KEY, j as AXIS_AUTHORIZED_KEY, k as AXIS_META_KEY, l as AXIS_PUBLIC_KEY, m as AXIS_RATE_LIMIT_KEY, n as AccessProfileResolverSensor, o as Axis, p as AxisAnonymous, q as AxisAuthorized, r as AxisChainEncryption, s as AxisChainRequest, t as AxisChainStatus, u as AxisChainStepResult, v as AxisChainStepStatus, w as AxisEffect, x as AxisExecutionMode, y as AxisIntentEnvelope, z as AxisIntentObserver, B as AxisIntentSensorBinding, D as AxisIntentSensorBindingOptions, E as AxisIntentSensorRef, F as AxisIntentSensorWhen, G as AxisKeyExchangeRef, H as AxisLawArticleSummary, J as AxisLawDecision, K as AxisLawEvaluationContext, L as AxisLawEvaluationResult, M as AxisLawEvaluator, N as AxisObserverBinding, P as AxisObserverBindingOptions, Q as AxisObserverContext, U as AxisObserverDefinition, V as AxisObserverEvent, W as AxisObserverRef, X as AxisObserverRegistration, Y as AxisPublic, Z as AxisRateLimit, _ as AxisRateLimitConfig, $ as BodyBudgetSensor, a0 as CAPSULE_POLICY_METADATA_KEY, a1 as CONTRACT_METADATA_KEY, a2 as CapabilityEnforcementSensor, a3 as Capsule, a4 as CapsulePolicy, a5 as CapsulePolicyOptions, a6 as CapsuleScopeMode, a7 as ChunkHashSensor, a8 as Contract, a9 as DEFAULT_CONTRACTS, aa as EntropySensor, ab as ExecutionContract, ac as ExecutionTimeoutSensor, ad as FALLBACK_CONTRACT, ae as FrameBudgetSensor, af as FrameHeaderSanitySensor, ag as HeaderTLVLimitSensor, ah as INTENT_METADATA_KEY, ai as INTENT_ROUTES_KEY, aj as Intent, ak as IntentAllowlistSensor, al as IntentKind, am as IntentOptions, an as IntentRegistrySensor, ao as IntentRoute, ap as LawEvaluationSensor, aq as LawEvaluationSensorOptions, ar as OBSERVER_BINDINGS_KEY, as as OBSERVER_METADATA_KEY, at as Observer, au as ObserverRegistry, av as ProofPresenceSensor, aw as ProtocolStrictSensor, ax as REQUIRED_PROOF_METADATA_KEY, ay as ReceiptPolicySensor, az as RegisteredChainConfig, aA as RequiredProof, aB as RiskDecision, aC as RiskEvaluation, aD as RiskGateSensor, aE as RiskGateSensorOptions, aF as RiskSignal, aG as RiskSignalCollector, aH as SENSITIVITY_METADATA_KEY, aI as SchemaValidationSensor, aJ as Sensitivity, aK as StreamScopeSensor, aL as TLVParseSensor, aM as TLV_FIELDS_KEY, aN as TLV_VALIDATORS_KEY, aO as TickAuthCapsuleRef, aP as TickAuthSensor, aQ as TickAuthSensorOptions, aR as TickAuthVerifier, aS as TlvEnum, aT as TlvField, aU as TlvFieldKind, aV as TlvFieldMeta, aW as TlvFieldOptions, aX as TlvMinLen, aY as TlvRange, aZ as TlvUtf8Pattern, a_ as TlvValidate, a$ as TlvValidatorMeta, b0 as TpsSensor, b1 as TpsSensorOptions, b2 as VarintHardeningSensor, b3 as Witness, b4 as buildAxisLawEvaluationContext, b5 as toIntentSensorBinding, b6 as toObserverBinding } from './index-CqAU2zlr.js';
3
3
  import { AxisFrame } from '@nextera.one/axis-protocol';
4
4
  export { AXIS_MAGIC, AXIS_VERSION, AxisBinaryFrame, AxisFrame, TLV as AxisTlvType, ERR_BAD_SIGNATURE, ERR_CONTRACT_VIOLATION, ERR_INVALID_PACKET, ERR_REPLAY_DETECTED, FLAG_BODY_TLV, FLAG_CHAIN_REQ, FLAG_HAS_WITNESS, MAX_BODY_LEN, MAX_FRAME_LEN, MAX_HDR_LEN, MAX_SIG_LEN, NCERT_ALG, NCERT_EXP, NCERT_ISSUER_KID, NCERT_KID, NCERT_NBF, NCERT_NODE_ID, NCERT_PAYLOAD, NCERT_PUB, NCERT_SCOPE, NCERT_SIG, PROOF_CAPSULE, PROOF_JWT, PROOF_LOOM, PROOF_MTLS, PROOF_NONE, PROOF_WITNESS, TLV, TLV_ACTOR_ID, TLV_AUD, TLV_BODY_ARR, TLV_BODY_OBJ, TLV_CAPSULE, TLV_EFFECT, TLV_ERROR_CODE, TLV_ERROR_MSG, TLV_INDEX, TLV_INTENT, TLV_KID, TLV_LOOM_PRESENCE_ID, TLV_LOOM_THREAD_HASH, TLV_LOOM_WRIT, TLV_NODE, TLV_NODE_CERT_HASH, TLV_NODE_KID, TLV_NONCE, TLV_OFFSET, TLV_OK, TLV_PID, TLV_LOOM_PRESENCE_ID as TLV_PRESENCE_ID, TLV_PREV_HASH, TLV_PROOF_REF, TLV_PROOF_TYPE, TLV_REALM, TLV_RECEIPT_HASH, TLV_RID, TLV_SHA256_CHUNK, TLV_LOOM_THREAD_HASH as TLV_THREAD_HASH, TLV_TRACE_ID, TLV_TS, TLV_UPLOAD_ID, TLV_LOOM_WRIT as TLV_WRIT, decodeArray, decodeFrame, decodeObject, decodeTLVs, decodeTLVsList, decodeVarint, encodeFrame, encodeTLVs, encodeVarint, getSignTarget, varintLength } from '@nextera.one/axis-protocol';
5
5
  import { A as AxisObservation, L as LoomReceipt, T as ThreadState, W as WritValidationResult, G as Grant, a as GrantCapability, P as PresenceDeclaration, b as PresenceChallenge, c as Writ, R as Revocation, d as WritBody, e as WritMeta, f as PresenceReceipt, g as GrantStatus, h as PresenceStatus, i as PresenceProof, j as GrantValidationResult, k as PresenceVerifyResult } from './index-DMjzq8YO.js';
package/dist/index.js CHANGED
@@ -2441,6 +2441,12 @@ var init_intent_router = __esm({
2441
2441
  this.ccePipelineConfig = null;
2442
2442
  /** Reverse index: handler class name → list of registered intents */
2443
2443
  this.handlerIntents = /* @__PURE__ */ new Map();
2444
+ /** Handler class name → intent namespace prefix (from @Handler('auth')) */
2445
+ this.handlerPrefixes = /* @__PURE__ */ new Map();
2446
+ /** Handler class name → class-level sensor bindings (from @HandlerSensors) */
2447
+ this.handlerClassSensors = /* @__PURE__ */ new Map();
2448
+ /** Handler class name → class-level observer bindings (from @Handler({ observe: [...] })) */
2449
+ this.handlerClassObservers = /* @__PURE__ */ new Map();
2444
2450
  this.dependencyResolver = dependencyResolver;
2445
2451
  this.observerDispatcher = observerDispatcher;
2446
2452
  this.sensorRegistry = sensorRegistry;
@@ -2980,12 +2986,25 @@ var init_intent_router = __esm({
2980
2986
  }
2981
2987
  return void 0;
2982
2988
  }
2989
+ /** Intent namespace prefix declared in @Handler('auth'). */
2990
+ getHandlerPrefix(handlerName) {
2991
+ return this.handlerPrefixes.get(handlerName);
2992
+ }
2993
+ /** Class-level sensor bindings from @HandlerSensors (run before every intent in this handler). */
2994
+ getHandlerClassSensors(handlerName) {
2995
+ return this.handlerClassSensors.get(handlerName);
2996
+ }
2997
+ /** Class-level observer bindings from @Handler({ observe: [...] }). */
2998
+ getHandlerClassObservers(handlerName) {
2999
+ return this.handlerClassObservers.get(handlerName);
3000
+ }
2983
3001
  /** Full summary of a handler's registered intents and aggregated policies. Returns null if unknown. */
2984
3002
  getHandlerSummary(handlerName) {
2985
3003
  const intents = this.getHandlerIntents(handlerName);
2986
3004
  if (intents.length === 0) return null;
2987
3005
  return {
2988
3006
  handler: handlerName,
3007
+ prefix: this.getHandlerPrefix(handlerName),
2989
3008
  intents,
2990
3009
  isPublic: this.isHandlerPublic(handlerName),
2991
3010
  isAnonymous: this.isHandlerAnonymous(handlerName),
@@ -2994,7 +3013,9 @@ var init_intent_router = __esm({
2994
3013
  contract: this.getHandlerContract(handlerName),
2995
3014
  sensitivity: this.getHandlerSensitivity(handlerName),
2996
3015
  rateLimit: this.getHandlerRateLimit(handlerName),
2997
- capsulePolicy: this.getHandlerCapsulePolicy(handlerName)
3016
+ capsulePolicy: this.getHandlerCapsulePolicy(handlerName),
3017
+ classSensors: this.getHandlerClassSensors(handlerName),
3018
+ classObservers: this.getHandlerClassObservers(handlerName)
2998
3019
  };
2999
3020
  }
3000
3021
  /** Summary of all registered handlers keyed by handler class name. */
@@ -3060,6 +3081,25 @@ var init_intent_router = __esm({
3060
3081
  this.handlerIntents.set(handlerName, [intent]);
3061
3082
  }
3062
3083
  }
3084
+ /**
3085
+ * Stores class-level handler metadata (prefix, sensors, observers) gathered
3086
+ * at discovery time. Should be called once per handler class.
3087
+ */
3088
+ trackHandlerMeta(className, prefix, sensors, observers) {
3089
+ this.handlerPrefixes.set(className, prefix);
3090
+ if (sensors.length > 0) {
3091
+ this.handlerClassSensors.set(
3092
+ className,
3093
+ mergeIntentSensorBindings(sensors)
3094
+ );
3095
+ }
3096
+ if (observers.length > 0) {
3097
+ this.handlerClassObservers.set(
3098
+ className,
3099
+ mergeObserverBindings(observers)
3100
+ );
3101
+ }
3102
+ }
3063
3103
  resolveIntentSensor(ref) {
3064
3104
  const registered = this.sensorRegistry?.resolve(ref);
3065
3105
  if (registered) {