@nextera.one/axis-server-sdk 2.3.7 → 2.3.9

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.
@@ -464,6 +464,8 @@ declare class IntentRouter {
464
464
  private ccePipelineConfig;
465
465
  private handlerIntents;
466
466
  private handlerPrefixes;
467
+ private handlerByPrefix;
468
+ private handlerByIntent;
467
469
  private handlerClassSensors;
468
470
  private handlerClassObservers;
469
471
  constructor(dependencyResolver?: AxisDependencyResolver, observerDispatcher?: ObserverDispatcherService, sensorRegistry?: SensorRegistry);
@@ -510,6 +512,7 @@ declare class IntentRouter {
510
512
  getHandlerPrefix(handlerName: string): string | undefined;
511
513
  getHandlerClassSensors(handlerName: string): AxisIntentSensorBinding[] | undefined;
512
514
  getHandlerClassObservers(handlerName: string): AxisObserverBinding[] | undefined;
515
+ resolveIntentAlias(intent: string): string;
513
516
  getHandlerSummary(handlerName: string): HandlerSummary | null;
514
517
  getAllHandlerSummaries(): Map<string, HandlerSummary>;
515
518
  private emitIntentObservers;
@@ -464,6 +464,8 @@ declare class IntentRouter {
464
464
  private ccePipelineConfig;
465
465
  private handlerIntents;
466
466
  private handlerPrefixes;
467
+ private handlerByPrefix;
468
+ private handlerByIntent;
467
469
  private handlerClassSensors;
468
470
  private handlerClassObservers;
469
471
  constructor(dependencyResolver?: AxisDependencyResolver, observerDispatcher?: ObserverDispatcherService, sensorRegistry?: SensorRegistry);
@@ -510,6 +512,7 @@ declare class IntentRouter {
510
512
  getHandlerPrefix(handlerName: string): string | undefined;
511
513
  getHandlerClassSensors(handlerName: string): AxisIntentSensorBinding[] | undefined;
512
514
  getHandlerClassObservers(handlerName: string): AxisObserverBinding[] | undefined;
515
+ resolveIntentAlias(intent: string): string;
513
516
  getHandlerSummary(handlerName: string): HandlerSummary | null;
514
517
  getAllHandlerSummaries(): Map<string, HandlerSummary>;
515
518
  private emitIntentObservers;
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-Bdahn8mq.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-Bdahn8mq.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-DfG00R_f.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-DfG00R_f.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-CXewlhg-.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-DRnTsYrk.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-DRnTsYrk.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-DPQEO0Qh.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-DPQEO0Qh.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-ChuwP1RU.js';
package/dist/index.js CHANGED
@@ -2443,6 +2443,10 @@ var init_intent_router = __esm({
2443
2443
  this.handlerIntents = /* @__PURE__ */ new Map();
2444
2444
  /** Handler class name → intent namespace prefix (from @Handler('auth')) */
2445
2445
  this.handlerPrefixes = /* @__PURE__ */ new Map();
2446
+ /** Handler namespace prefix → handler class name, used by `handler...intent` lookup. */
2447
+ this.handlerByPrefix = /* @__PURE__ */ new Map();
2448
+ /** Intent → handler class name, avoids scanning handlerIntents for normal lookups. */
2449
+ this.handlerByIntent = /* @__PURE__ */ new Map();
2446
2450
  /** Handler class name → class-level sensor bindings (from @HandlerSensors) */
2447
2451
  this.handlerClassSensors = /* @__PURE__ */ new Map();
2448
2452
  /** Handler class name → class-level observer bindings (from @Handler({ observe: [...] })) */
@@ -2452,35 +2456,37 @@ var init_intent_router = __esm({
2452
2456
  this.sensorRegistry = sensorRegistry;
2453
2457
  }
2454
2458
  getSchema(intent) {
2455
- return this.intentSchemas.get(intent);
2459
+ return this.intentSchemas.get(this.resolveIntentAlias(intent));
2456
2460
  }
2457
2461
  getValidators(intent) {
2458
- return this.intentValidators.get(intent);
2462
+ return this.intentValidators.get(this.resolveIntentAlias(intent));
2459
2463
  }
2460
2464
  has(intent) {
2461
- return this.handlers.has(intent) || _IntentRouter.BUILTIN_INTENTS.has(intent);
2465
+ const resolved = this.resolveIntentAlias(intent);
2466
+ return this.handlers.has(resolved) || _IntentRouter.BUILTIN_INTENTS.has(resolved);
2462
2467
  }
2463
2468
  getRegisteredIntents() {
2464
2469
  return [..._IntentRouter.BUILTIN_INTENTS, ...this.handlers.keys()];
2465
2470
  }
2466
2471
  getIntentEntry(intent) {
2467
- if (!this.has(intent)) return null;
2472
+ const resolved = this.resolveIntentAlias(intent);
2473
+ if (!this.has(resolved)) return null;
2468
2474
  return {
2469
- schema: this.intentSchemas.get(intent),
2470
- validators: this.intentValidators.get(intent),
2471
- hasSensors: this.intentSensors.has(intent),
2472
- builtin: _IntentRouter.BUILTIN_INTENTS.has(intent),
2473
- kind: this.intentKinds.get(intent),
2474
- chain: this.intentChains.get(intent),
2475
- capsulePolicy: this.intentCapsulePolicies.get(intent),
2476
- observerCount: this.getObservers(intent).length
2475
+ schema: this.intentSchemas.get(resolved),
2476
+ validators: this.intentValidators.get(resolved),
2477
+ hasSensors: this.intentSensors.has(resolved),
2478
+ builtin: _IntentRouter.BUILTIN_INTENTS.has(resolved),
2479
+ kind: this.intentKinds.get(resolved),
2480
+ chain: this.intentChains.get(resolved),
2481
+ capsulePolicy: this.intentCapsulePolicies.get(resolved),
2482
+ observerCount: this.getObservers(resolved).length
2477
2483
  };
2478
2484
  }
2479
2485
  getChainConfig(intent) {
2480
- return this.intentChains.get(intent);
2486
+ return this.intentChains.get(this.resolveIntentAlias(intent));
2481
2487
  }
2482
2488
  getObservers(intent) {
2483
- return this.intentObservers.get(intent) || [];
2489
+ return this.intentObservers.get(this.resolveIntentAlias(intent)) || [];
2484
2490
  }
2485
2491
  /**
2486
2492
  * Registers a handler for a specific intent.
@@ -2523,6 +2529,14 @@ var init_intent_router = __esm({
2523
2529
  );
2524
2530
  const handlerSensors = Reflect.getMetadata(HANDLER_SENSORS_KEY, instance.constructor) || [];
2525
2531
  const handlerObservers = Reflect.getMetadata(OBSERVER_BINDINGS_KEY, instance.constructor) || [];
2532
+ if (prefix) {
2533
+ this.trackHandlerMeta(
2534
+ instance.constructor.name,
2535
+ prefix,
2536
+ handlerSensors,
2537
+ handlerObservers
2538
+ );
2539
+ }
2526
2540
  const proto = Object.getPrototypeOf(instance);
2527
2541
  for (const route of routes) {
2528
2542
  const intentName = route.absolute ? route.action : `${prefix}.${route.action}`;
@@ -2582,7 +2596,7 @@ var init_intent_router = __esm({
2582
2596
  try {
2583
2597
  const intentBytes = frame.headers.get(import_axis_protocol2.TLV_INTENT);
2584
2598
  if (!intentBytes) throw new Error("Missing intent");
2585
- intent = this.decoder.decode(intentBytes);
2599
+ intent = this.resolveIntentAlias(this.decoder.decode(intentBytes));
2586
2600
  handlerRef = this.intentHandlerRefs.get(intent);
2587
2601
  const observerBindings = this.getObservers(intent);
2588
2602
  await this.emitIntentObservers(observerBindings, {
@@ -2892,25 +2906,25 @@ var init_intent_router = __esm({
2892
2906
  }
2893
2907
  // ─── Policy Getters ────────────────────────────────────────────────────────
2894
2908
  getSensitivity(intent) {
2895
- return this.intentSensitivity.get(intent);
2909
+ return this.intentSensitivity.get(this.resolveIntentAlias(intent));
2896
2910
  }
2897
2911
  getContract(intent) {
2898
- return this.intentContracts.get(intent);
2912
+ return this.intentContracts.get(this.resolveIntentAlias(intent));
2899
2913
  }
2900
2914
  getRequiredProof(intent) {
2901
- return this.intentRequiredProof.get(intent);
2915
+ return this.intentRequiredProof.get(this.resolveIntentAlias(intent));
2902
2916
  }
2903
2917
  isPublic(intent) {
2904
- return this.publicIntents.has(intent);
2918
+ return this.publicIntents.has(this.resolveIntentAlias(intent));
2905
2919
  }
2906
2920
  isAnonymous(intent) {
2907
- return this.anonymousIntents.has(intent);
2921
+ return this.anonymousIntents.has(this.resolveIntentAlias(intent));
2908
2922
  }
2909
2923
  isAuthorized(intent) {
2910
- return this.authorizedIntents.has(intent);
2924
+ return this.authorizedIntents.has(this.resolveIntentAlias(intent));
2911
2925
  }
2912
2926
  getRateLimit(intent) {
2913
- return this.intentRateLimits.get(intent);
2927
+ return this.intentRateLimits.get(this.resolveIntentAlias(intent));
2914
2928
  }
2915
2929
  // ─── Handler-level Getters ─────────────────────────────────────────────────
2916
2930
  /** All intents registered under the given handler class name. */
@@ -2919,10 +2933,8 @@ var init_intent_router = __esm({
2919
2933
  }
2920
2934
  /** Returns the handler class name that owns the given intent, or undefined if not found. */
2921
2935
  getHandlerByIntent(intent) {
2922
- for (const [handlerName, intents] of this.handlerIntents) {
2923
- if (intents.includes(intent)) return handlerName;
2924
- }
2925
- return void 0;
2936
+ const resolved = this.resolveIntentAlias(intent);
2937
+ return this.handlerByIntent.get(resolved);
2926
2938
  }
2927
2939
  /** All registered handler class names. */
2928
2940
  getRegisteredHandlers() {
@@ -2998,6 +3010,33 @@ var init_intent_router = __esm({
2998
3010
  getHandlerClassObservers(handlerName) {
2999
3011
  return this.handlerClassObservers.get(handlerName);
3000
3012
  }
3013
+ /**
3014
+ * Resolves the optional `handler...intent` wire shorthand to a registered
3015
+ * canonical intent. Existing exact intent names always win.
3016
+ */
3017
+ resolveIntentAlias(intent) {
3018
+ if (this.handlers.has(intent) || _IntentRouter.BUILTIN_INTENTS.has(intent)) {
3019
+ return intent;
3020
+ }
3021
+ const separator = "...";
3022
+ const separatorIndex = intent.indexOf(separator);
3023
+ if (separatorIndex <= 0) return intent;
3024
+ const handlerKey = intent.slice(0, separatorIndex);
3025
+ const action = intent.slice(separatorIndex + separator.length);
3026
+ if (!handlerKey || !action) return intent;
3027
+ const handlerName = this.handlerByPrefix.get(handlerKey) ?? (this.handlerIntents.has(handlerKey) ? handlerKey : void 0);
3028
+ if (!handlerName) return intent;
3029
+ const prefix = this.getHandlerPrefix(handlerName) ?? handlerKey;
3030
+ const handlerIntents = this.getHandlerIntents(handlerName);
3031
+ const prefixedIntent = `${prefix}.${action}`;
3032
+ if (handlerIntents.includes(prefixedIntent)) return prefixedIntent;
3033
+ if (handlerIntents.includes(action)) return action;
3034
+ const suffix = `.${action}`;
3035
+ const suffixMatches = handlerIntents.filter(
3036
+ (candidate) => candidate.endsWith(suffix)
3037
+ );
3038
+ return suffixMatches.length === 1 ? suffixMatches[0] : intent;
3039
+ }
3001
3040
  /** Full summary of a handler's registered intents and aggregated policies. Returns null if unknown. */
3002
3041
  getHandlerSummary(handlerName) {
3003
3042
  const intents = this.getHandlerIntents(handlerName);
@@ -3074,6 +3113,7 @@ var init_intent_router = __esm({
3074
3113
  }
3075
3114
  }
3076
3115
  trackHandlerIntent(handlerName, intent) {
3116
+ this.handlerByIntent.set(intent, handlerName);
3077
3117
  const existing = this.handlerIntents.get(handlerName);
3078
3118
  if (existing) {
3079
3119
  if (!existing.includes(intent)) existing.push(intent);
@@ -3087,6 +3127,7 @@ var init_intent_router = __esm({
3087
3127
  */
3088
3128
  trackHandlerMeta(className, prefix, sensors, observers) {
3089
3129
  this.handlerPrefixes.set(className, prefix);
3130
+ this.handlerByPrefix.set(prefix, className);
3090
3131
  if (sensors.length > 0) {
3091
3132
  this.handlerClassSensors.set(
3092
3133
  className,
@@ -8504,11 +8545,13 @@ var init_sensor_registry = __esm({
8504
8545
  return this.sensorsByName.get(name);
8505
8546
  }
8506
8547
  getPreDecodeSensors() {
8507
- return this.list().filter((s) => (s.order ?? 999) < 40);
8548
+ return this.list().filter(
8549
+ (s) => this.isPreDecodeSensor(s)
8550
+ );
8508
8551
  }
8509
8552
  getPostDecodeSensors() {
8510
8553
  return this.list().filter(
8511
- (s) => (s.order ?? 999) >= 40
8554
+ (s) => this.isPostDecodeSensor(s)
8512
8555
  );
8513
8556
  }
8514
8557
  getSensorCountByPhase() {
@@ -8524,11 +8567,13 @@ var init_sensor_registry = __esm({
8524
8567
  }
8525
8568
  isPreDecodeSensor(sensor) {
8526
8569
  const phase = typeof sensor.phase === "string" ? sensor.phase : sensor.phase?.phase;
8527
- return phase === "PRE_DECODE" || (sensor.order ?? 999) < 40;
8570
+ if (phase) return phase === "PRE_DECODE";
8571
+ return (sensor.order ?? 999) < 40;
8528
8572
  }
8529
8573
  isPostDecodeSensor(sensor) {
8530
8574
  const phase = typeof sensor.phase === "string" ? sensor.phase : sensor.phase?.phase;
8531
- return phase === "POST_DECODE" || (sensor.order ?? 999) >= 40;
8575
+ if (phase) return phase === "POST_DECODE";
8576
+ return (sensor.order ?? 999) >= 40;
8532
8577
  }
8533
8578
  indexSensor(sensor) {
8534
8579
  this.sensorsByName.set(sensor.name, sensor);