@memberjunction/search-engine 6.1.0-edge.4 → 6.1.0-edge.5

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.
@@ -20,11 +20,11 @@
20
20
  * @module @memberjunction/search-engine
21
21
  */
22
22
  import { IMetadataProvider, UserInfo } from '@memberjunction/core';
23
- import { SearchEngineBase } from '@memberjunction/core-entities';
23
+ import { SearchEngineBase, MJAIAgentEntity, MJAISkillEntity } from '@memberjunction/core-entities';
24
24
  import { BaseSingleton } from '@memberjunction/global';
25
25
  import { SearchParams, SearchResult, SearchResultItem, SearchStreamEvent, ScopePrincipals } from './search.types.js';
26
26
  import { ScopeDimensionResolver } from './ScopeDimensionResolver.js';
27
- import { ScopeExplanation, ExplainScopeInput } from './ScopeExplanation.js';
27
+ import { ScopeExplanation, ExplainScopeInput, EntitlementExplanation } from './ScopeExplanation.js';
28
28
  /**
29
29
  * Collects lane problems keyed by the lane's **row ID** instead of throwing.
30
30
  *
@@ -312,10 +312,14 @@ export declare class SearchEngine extends BaseSingleton<SearchEngine> {
312
312
  }): ScopePrincipals;
313
313
  /** Explain a single scope. Never throws — a failure to resolve IS the explanation. */
314
314
  private explainOneScope;
315
- /** Resolve entitlement for the dry run, including the skill and tenant principals. */
316
- private explainEntitlement;
317
- /** Load an agent or skill principal by ID; null when no ID was supplied. */
318
- private loadPrincipal;
315
+ /** Resolve entitlement for the dry run, including the skill and tenant principals.
316
+ * `protected`, like {@link principalsFrom}, so a test can drive it without weak-typed casts.
317
+ */
318
+ protected explainEntitlement(scopeID: string, input: ExplainScopeInput, contextUser: UserInfo): Promise<EntitlementExplanation>;
319
+ /** Load an agent or skill principal by ID; null when no ID was supplied.
320
+ * `protected` so a test can substitute principal loading; see {@link explainEntitlement}.
321
+ */
322
+ protected loadPrincipal<T extends MJAIAgentEntity | MJAISkillEntity>(entityName: string, id: string | null | undefined, contextUser: UserInfo): Promise<T | null>;
319
323
  /**
320
324
  * Render every lane and report which would run.
321
325
  *
@@ -1 +1 @@
1
- {"version":3,"file":"SearchEngine.d.ts","sourceRoot":"","sources":["../../src/generic/SearchEngine.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SearchEngine.d.ts","sourceRoot":"","sources":["../../src/generic/SearchEngine.ts"],"names":[],"mappings":"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"}
@@ -704,11 +704,60 @@ export class SearchEngine extends BaseSingleton {
704
704
  let effectiveContext;
705
705
  let dimensionFailure = null;
706
706
  try {
707
+ // DO NOT BIND A PRINCIPAL THE ENTITLEMENT STEP JUST REFUSED. `deriveServerValue` binds
708
+ // `Principals.SkillID` (and AgentID) into a dimension's expansion query, so resolving
709
+ // with the caller's principals after `explainEntitlement` denied them would run
710
+ // server-authored SQL parameterised by an ID that failed its gate — the exact thing the
711
+ // action refuses with INVALID_PARAM rather than "continuing with a null skill". The
712
+ // dimension explanation is still produced, just for an unprincipled search, and the
713
+ // diagnostic says so rather than leaving the reader to assume the principals applied.
714
+ // Drop the principals ONLY when the principals are what was refused. Dropping them for
715
+ // an unrelated denial — the user simply has no per-scope grant — drives the expansion
716
+ // query with null ids, which returns no rows, which makes a required dimension throw and
717
+ // the explanation announce "dimension resolution FAILED". The admin then goes and fixes a
718
+ // dimension that was never broken. `PrincipalNotActivatable` is exactly the distinction
719
+ // needed to tell those two cases apart.
720
+ // EVERY principal-side refusal drops the principals, not just one of them.
721
+ //
722
+ // The rule stated above is "drop them ONLY when the principals are what was refused", and
723
+ // `PrincipalNotActivatable` was the only source honouring it. `AgentNone`,
724
+ // `AgentAssignedNotListed`, `SkillNone` and `SkillAssignedNotListed` are equally
725
+ // principal-side — the principal IS the reason — yet their ids were still bound into the
726
+ // expansion query. This is the same set the Scoped Search action classifies as
727
+ // ACCESS_DENIED rather than PERMISSION_DENIED, for the same reason.
728
+ // A TOTAL MAP, NOT A LIST: `SearchScopePermissionSource` is a closed union, so writing
729
+ // this as `Record<Source, boolean>` makes the compiler demand an answer for any source
730
+ // added later. As a `string[]` a new principal-side source would silently default to
731
+ // "bind it" — which is the exact defect this block exists to fix, re-openable by an
732
+ // unrelated edit.
733
+ const IS_PRINCIPAL_SIDE = {
734
+ PrincipalNotActivatable: true,
735
+ AgentNone: true,
736
+ AgentAssignedNotListed: true,
737
+ SkillNone: true,
738
+ SkillAssignedNotListed: true,
739
+ // Grant-only sources: unreachable while `Allowed` is false, listed for totality.
740
+ AgentUnscopedAll: false,
741
+ SkillUnscopedAll: false,
742
+ // User-side: dropping principals here would drive the expansion query with nulls,
743
+ // making a required dimension throw and the explanation announce a failure that is
744
+ // not real. `DirectGrant` covers the explicit-None deny, which is still user-side.
745
+ DirectGrant: false,
746
+ RoleGrant: false,
747
+ NoGrant: false,
748
+ };
749
+ const principalsJudged = entitlement.Allowed || !IS_PRINCIPAL_SIDE[entitlement.Source];
750
+ if (!principalsJudged && (input.AIAgentID || input.AISkillID)) {
751
+ diagnostics.push('principals were NOT bound into dimension resolution: entitlement denied them, '
752
+ + 'so the bound below is the one an unprincipled search would see.');
753
+ }
707
754
  const resolved = await this.dimensionResolver.Resolve({
708
755
  Scope: scope,
709
756
  CallerContext: input.SearchContext,
710
757
  ContextUser: contextUser,
711
- Principals: this.principalsFrom(input),
758
+ Principals: principalsJudged
759
+ ? this.principalsFrom(input)
760
+ : { AgentID: null, SkillID: null },
712
761
  });
713
762
  dimensions = resolved.Provenance;
714
763
  diagnostics.push(...resolved.Diagnostics);
@@ -745,7 +794,9 @@ export class SearchEngine extends BaseSingleton {
745
794
  ResolvedContext: effectiveContext,
746
795
  };
747
796
  }
748
- /** Resolve entitlement for the dry run, including the skill and tenant principals. */
797
+ /** Resolve entitlement for the dry run, including the skill and tenant principals.
798
+ * `protected`, like {@link principalsFrom}, so a test can drive it without weak-typed casts.
799
+ */
749
800
  async explainEntitlement(scopeID, input, contextUser) {
750
801
  const principals = {
751
802
  UserID: contextUser.ID ?? null,
@@ -754,10 +805,37 @@ export class SearchEngine extends BaseSingleton {
754
805
  PrimaryScopeRecordID: input.SearchContext?.PrimaryScopeRecordID ?? null,
755
806
  };
756
807
  try {
808
+ // No ENTITLEMENT gate here on purpose — that judgement belongs to
809
+ // ResolveEffectivePermission. (The loadability check just below is a different thing: it
810
+ // refuses an id that names nothing, which the resolver could not judge either way.)
811
+ // The principals are judged inside ResolveEffectivePermission,
812
+ // where a principal actually widens — so the preview and the search reach the same
813
+ // verdict because they run the same code, not because two copies agree.
757
814
  const [agent, skill] = await Promise.all([
758
815
  this.loadPrincipal('MJ: AI Agents', input.AIAgentID, contextUser),
759
816
  this.loadPrincipal('MJ: AI Skills', input.AISkillID, contextUser),
760
817
  ]);
818
+ // A PRINCIPAL THAT WAS NAMED BUT WOULD NOT LOAD IS A REFUSAL, NOT AN ABSENCE.
819
+ //
820
+ // `loadPrincipal` returns null both when nothing was supplied and when what was supplied
821
+ // does not exist. Letting the second case fall through as null means the resolver never
822
+ // sees a principal, so its rules never fire, and a user with their own grant is reported
823
+ // ALLOWED — after which `principalsJudged` is true and `principalsFrom(input)` binds the
824
+ // caller's RAW id string into the expansion query, unjudged. That is precisely what the
825
+ // action refuses with INVALID_PARAM rather than "continuing with a null skill", and a
826
+ // preview that promises what the search refuses is worse than no preview.
827
+ const unloadable = (input.AIAgentID && !agent) ? `agent '${input.AIAgentID}'`
828
+ : (input.AISkillID && !skill) ? `skill '${input.AISkillID}'`
829
+ : null;
830
+ if (unloadable) {
831
+ return {
832
+ Allowed: false,
833
+ Level: 'None',
834
+ Source: 'PrincipalNotActivatable',
835
+ Reason: `${unloadable} was supplied but could not be loaded, so it cannot be judged. The Scoped Search action refuses this with INVALID_PARAM, and the SearchKnowledge resolvers refuse an unloadable agent the same way — preview and enforcement agree.`,
836
+ Principals: principals,
837
+ };
838
+ }
761
839
  const permission = await GetSearchScopePermissionResolver().ResolveEffectivePermission({
762
840
  User: contextUser,
763
841
  SearchScopeID: scopeID,
@@ -777,6 +855,9 @@ export class SearchEngine extends BaseSingleton {
777
855
  catch (e) {
778
856
  // A resolver failure must read as "denied", never as "allowed" — an explanation that
779
857
  // fails open would be worse than no explanation at all.
858
+ // NOTE: Source 'NoGrant' is user-side, so the caller's principals are still bound into
859
+ // dimension resolution even though nothing judged them — reaching here requires the
860
+ // permission store itself to be failing. Revisit if ExplainScope gains a production caller.
780
861
  const msg = e instanceof Error ? e.message : String(e);
781
862
  return {
782
863
  Allowed: false,
@@ -787,7 +868,9 @@ export class SearchEngine extends BaseSingleton {
787
868
  };
788
869
  }
789
870
  }
790
- /** Load an agent or skill principal by ID; null when no ID was supplied. */
871
+ /** Load an agent or skill principal by ID; null when no ID was supplied.
872
+ * `protected` so a test can substitute principal loading; see {@link explainEntitlement}.
873
+ */
791
874
  async loadPrincipal(entityName, id, contextUser) {
792
875
  if (!id)
793
876
  return null;
@@ -1 +1 @@
1
- {"version":3,"file":"SearchEngine.js","sourceRoot":"","sources":["../../src/generic/SearchEngine.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SearchEngine.js","sourceRoot":"","sources":["../../src/generic/SearchEngine.ts"],"names":[],"mappings":"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"}
@@ -10,7 +10,7 @@ export type SearchScopePermissionLevel = 'None' | 'Read' | 'Search' | 'Manage';
10
10
  * Where the resolver picked up the effective permission. Used for audit
11
11
  * logging and explanatory error messages.
12
12
  */
13
- export type SearchScopePermissionSource = 'DirectGrant' | 'RoleGrant' | 'AgentUnscopedAll' | 'AgentNone' | 'AgentAssignedNotListed' | 'SkillUnscopedAll' | 'SkillNone' | 'SkillAssignedNotListed' | 'NoGrant';
13
+ export type SearchScopePermissionSource = 'DirectGrant' | 'RoleGrant' | 'AgentUnscopedAll' | 'AgentNone' | 'AgentAssignedNotListed' | 'SkillUnscopedAll' | 'SkillNone' | 'SkillAssignedNotListed' | 'PrincipalNotActivatable' | 'NoGrant';
14
14
  export interface EffectivePermission {
15
15
  /** True when the principal can at least read the scope's metadata. */
16
16
  readonly Allowed: boolean;
@@ -96,6 +96,11 @@ export interface ResolvePermissionInput {
96
96
  * }
97
97
  * ```
98
98
  *
99
+ * One caution on that pattern: a stock denial whose Source is 'PrincipalNotActivatable' means
100
+ * the CALLER may not wield the named principal. An override that widens past it re-opens the
101
+ * wieldability gate — widen from the user's own entitlements, never on the strength of a
102
+ * principal the stock resolver just refused.
103
+ *
99
104
  * **Do not pass a priority.** Subclassing the stock resolver is what orders the registration, and
100
105
  * it does so more reliably than a number can. `ClassFactory.Register` treats an omitted priority as
101
106
  * "one higher than the highest already registered for this (base, key)" — and a subclass cannot be
@@ -124,13 +129,23 @@ export declare abstract class SearchScopePermissionResolverBase {
124
129
  */
125
130
  export declare const SEARCH_SCOPE_PERMISSION_RESOLVER_KEY = "SearchScopePermissionResolver";
126
131
  /**
127
- * Resolves the effective SearchScope permission for a (user, scope, agent)
128
- * triple.
132
+ * Resolves the effective SearchScope permission for a (user, scope, agent, skill)
133
+ * tuple — plus the caller's tenant (`PrimaryScopeRecordID`), which narrows tenant-scoped grants.
129
134
  *
130
135
  * Resolution order (later steps only run if the earlier did not produce a
131
136
  * definitive answer):
132
137
  *
133
- * 1. Agent.SearchScopeAccess === 'None' → reject (explicit agent-side deny).
138
+ * 1. Agent.SearchScopeAccess === 'None' → reject (explicit agent-side deny).
139
+ * 1b. Agent.SearchScopeAccess === 'Assigned' and this scope is not in its list → reject.
140
+ * 1c/1d. The SAME two rules for a SKILL principal, deliberately identical in shape.
141
+ * 1e. A supplied SKILL must be ACTIVATABLE by the caller → otherwise reject.
142
+ * This one surprises people, so it is worth stating here rather than only at the code.
143
+ * A skill is judged wherever it is NAMED, not only where it grants, because it steers the
144
+ * bound through a surface this verdict never sees: SearchParams.AISkillID binds into
145
+ * Principals.SkillID, and for a `restricts: true` dimension the expansion query's output IS
146
+ * the enforced bound. Judging it only at step 4b would let a user holding their own grant
147
+ * (steps 2/3) name any skill and widen with it.
148
+ * The AGENT is deliberately NOT judged here — see step 4.
134
149
  * 2. Direct grant: a SearchScopePermission row with UserID = user.ID and
135
150
  * SearchScopeID = scope.ID. PermissionLevel = 'None' is an explicit
136
151
  * deny that short-circuits and rejects regardless of role grants.
@@ -138,8 +153,18 @@ export declare const SEARCH_SCOPE_PERMISSION_RESOLVER_KEY = "SearchScopePermissi
138
153
  * user's UserRoles. The highest non-None level wins. None entries are
139
154
  * ignored at the role level (see comment below).
140
155
  * 4. Agent.SearchScopeAccess === 'All' → allow at Search level (lets
141
- * trusted agents act across all scopes when no user-side grant exists).
142
- * 5. No grant → reject.
156
+ * trusted agents act across all scopes when no user-side grant exists), but ONLY if the
157
+ * caller may actually run that agent. The agent is judged HERE and not at supply because
158
+ * elsewhere AIAgentID is attribution — pre-execution RAG threads it purely for
159
+ * SearchExecutionLog — and gating attribution turns an analytics field into an outage.
160
+ * A DENIAL here rejects (for the message — 4b would refuse it too). A merely unevaluable agent
161
+ * falls through, and is then rejected by 4b if an 'All' skill follows, or by step 5 if not.
162
+ * Either way the outcome is a rejection; the distinction survives in the message.
163
+ * 4b. Skill.SearchScopeAccess === 'All' → allow at Search level, but ONLY with the agent
164
+ * positively confirmed. Step 1e is not sufficient here: it vouches for the SKILL, and
165
+ * GetSkillsForAgent reads SKILL permissions, which say nothing about whether this caller may
166
+ * run the agent the skill would activate on. Both a denial and an unevaluable agent refuse.
167
+ * 5. No grant → reject, naming the unwieldable 'All' agent if that was the only candidate.
143
168
  *
144
169
  * The user-direct-None rule (step 2) is intentional: an admin who explicitly
145
170
  * denies a user on a scope should not have that decision overridden by a
@@ -189,6 +214,55 @@ export declare class SearchScopePermissionResolver extends SearchScopePermission
189
214
  * identity the rest of the request is using.
190
215
  */
191
216
  protected loadPermissionsForScope(searchScopeID: string, contextUser: UserInfo): Promise<MJSearchScopePermissionEntity[]>;
217
+ /**
218
+ * May this user run this agent? Asked at the WIDENING FALLBACKS — the agent's own
219
+ * `SearchScopeAccess='All'` arm (step 4) and, because a skill widens through the agent it would
220
+ * activate on, the skill's `'All'` arm too (step 4b). Not only the agent's own arm: a non-`'All'`
221
+ * agent still reaches this check when the SKILL is `'All'`. Agent permissions are open by default
222
+ * (no rows means anyone may run it), so without this an id a caller merely NAMED could grant
223
+ * `Search`.
224
+ *
225
+ * Deliberately NOT asked at the point an `AIAgentID` is supplied: pre-execution RAG threads it
226
+ * purely so `SearchExecutionLog` can attribute the search, and gating that turns an analytics
227
+ * field into a retrieval outage.
228
+ *
229
+ * A stale metadata cache is reported distinctly. `GetUserAgentPermissions` throws when the agent
230
+ * is absent from `AIEngine.Instance.Agents` and fails closed to all-false, so an agent created
231
+ * after the cache loaded would otherwise read as "not permitted" — a metadata-load problem
232
+ * wearing an authorization message.
233
+ */
234
+ protected agentIsWieldable(agent: MJAIAgentEntity, user: UserInfo): Promise<{
235
+ ok: true;
236
+ } | {
237
+ ok: false;
238
+ kind: 'unavailable' | 'denied';
239
+ reason: string;
240
+ }>;
241
+ /**
242
+ * Could this caller actually activate this skill on this agent? Asked wherever a skill is NAMED,
243
+ * because a skill steers the bound from a surface the permission verdict never sees — see step 1e.
244
+ *
245
+ * DOES NOT CHECK THE AGENT, AND THAT IS NOT SUFFICIENT ON ITS OWN. `GetSkillsForAgent` is
246
+ * agent-accepted ∩ agent-granted ∩ Active ∩ user-runnable-ON-THE-SKILL — read it
247
+ * (`BaseAIEngine.GetSkillsForAgent`): its permission filter is `AISkillPermissionHelper`, the
248
+ * user's rights on the SKILL. It never consults `AIAgentPermission`. So a user who may not run
249
+ * the agent still gets a NON-empty list here, because skill permissions are open by default.
250
+ *
251
+ * The agent is therefore judged separately, at the fallbacks (steps 4 and 4b), NOT here. That
252
+ * keeps an agent-side cache problem from refusing a user whose own grant covers the scope.
253
+ *
254
+ * It does NOT make this method exempt from the same hazard: step 1e runs BEFORE the grant steps,
255
+ * so a skill that cannot be confirmed refuses such a user too. That is deliberate — an
256
+ * unconfirmed skill must not steer the bound — but it is a real availability cost, which is why
257
+ * the cache case is separated from a denial below and reported as what it is.
258
+ */
259
+ protected skillIsActivatable(agent: MJAIAgentEntity | null, skill: MJAISkillEntity, user: UserInfo): Promise<{
260
+ ok: true;
261
+ } | {
262
+ ok: false;
263
+ kind: 'unavailable' | 'denied';
264
+ reason: string;
265
+ }>;
192
266
  /** Bundles the result fields together with a closure-bound toSqlPredicate. */
193
267
  private buildResult;
194
268
  }
@@ -1 +1 @@
1
- {"version":3,"file":"SearchScopePermissionResolver.d.ts","sourceRoot":"","sources":["../../src/permissions/SearchScopePermissionResolver.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SearchScopePermissionResolver.d.ts","sourceRoot":"","sources":["../../src/permissions/SearchScopePermissionResolver.ts"],"names":[],"mappings":"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"}
@@ -5,7 +5,8 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
5
5
  return c > 3 && r && Object.defineProperty(target, key, r), r;
6
6
  };
7
7
  import { RunView } from '@memberjunction/core';
8
- import { MJGlobal, RegisterClass, UUIDsEqual } from '@memberjunction/global';
8
+ import { EscapeSQLString, MJGlobal, RegisterClass, UUIDsEqual } from '@memberjunction/global';
9
+ import { AIEngine } from '@memberjunction/aiengine';
9
10
  const LEVEL_RANK = {
10
11
  None: 0,
11
12
  Read: 1,
@@ -46,6 +47,11 @@ function highestLevel(a, b) {
46
47
  * }
47
48
  * ```
48
49
  *
50
+ * One caution on that pattern: a stock denial whose Source is 'PrincipalNotActivatable' means
51
+ * the CALLER may not wield the named principal. An override that widens past it re-opens the
52
+ * wieldability gate — widen from the user's own entitlements, never on the strength of a
53
+ * principal the stock resolver just refused.
54
+ *
49
55
  * **Do not pass a priority.** Subclassing the stock resolver is what orders the registration, and
50
56
  * it does so more reliably than a number can. `ClassFactory.Register` treats an omitted priority as
51
57
  * "one higher than the highest already registered for this (base, key)" — and a subclass cannot be
@@ -73,13 +79,23 @@ export class SearchScopePermissionResolverBase {
73
79
  */
74
80
  export const SEARCH_SCOPE_PERMISSION_RESOLVER_KEY = 'SearchScopePermissionResolver';
75
81
  /**
76
- * Resolves the effective SearchScope permission for a (user, scope, agent)
77
- * triple.
82
+ * Resolves the effective SearchScope permission for a (user, scope, agent, skill)
83
+ * tuple — plus the caller's tenant (`PrimaryScopeRecordID`), which narrows tenant-scoped grants.
78
84
  *
79
85
  * Resolution order (later steps only run if the earlier did not produce a
80
86
  * definitive answer):
81
87
  *
82
- * 1. Agent.SearchScopeAccess === 'None' → reject (explicit agent-side deny).
88
+ * 1. Agent.SearchScopeAccess === 'None' → reject (explicit agent-side deny).
89
+ * 1b. Agent.SearchScopeAccess === 'Assigned' and this scope is not in its list → reject.
90
+ * 1c/1d. The SAME two rules for a SKILL principal, deliberately identical in shape.
91
+ * 1e. A supplied SKILL must be ACTIVATABLE by the caller → otherwise reject.
92
+ * This one surprises people, so it is worth stating here rather than only at the code.
93
+ * A skill is judged wherever it is NAMED, not only where it grants, because it steers the
94
+ * bound through a surface this verdict never sees: SearchParams.AISkillID binds into
95
+ * Principals.SkillID, and for a `restricts: true` dimension the expansion query's output IS
96
+ * the enforced bound. Judging it only at step 4b would let a user holding their own grant
97
+ * (steps 2/3) name any skill and widen with it.
98
+ * The AGENT is deliberately NOT judged here — see step 4.
83
99
  * 2. Direct grant: a SearchScopePermission row with UserID = user.ID and
84
100
  * SearchScopeID = scope.ID. PermissionLevel = 'None' is an explicit
85
101
  * deny that short-circuits and rejects regardless of role grants.
@@ -87,8 +103,18 @@ export const SEARCH_SCOPE_PERMISSION_RESOLVER_KEY = 'SearchScopePermissionResolv
87
103
  * user's UserRoles. The highest non-None level wins. None entries are
88
104
  * ignored at the role level (see comment below).
89
105
  * 4. Agent.SearchScopeAccess === 'All' → allow at Search level (lets
90
- * trusted agents act across all scopes when no user-side grant exists).
91
- * 5. No grant → reject.
106
+ * trusted agents act across all scopes when no user-side grant exists), but ONLY if the
107
+ * caller may actually run that agent. The agent is judged HERE and not at supply because
108
+ * elsewhere AIAgentID is attribution — pre-execution RAG threads it purely for
109
+ * SearchExecutionLog — and gating attribution turns an analytics field into an outage.
110
+ * A DENIAL here rejects (for the message — 4b would refuse it too). A merely unevaluable agent
111
+ * falls through, and is then rejected by 4b if an 'All' skill follows, or by step 5 if not.
112
+ * Either way the outcome is a rejection; the distinction survives in the message.
113
+ * 4b. Skill.SearchScopeAccess === 'All' → allow at Search level, but ONLY with the agent
114
+ * positively confirmed. Step 1e is not sufficient here: it vouches for the SKILL, and
115
+ * GetSkillsForAgent reads SKILL permissions, which say nothing about whether this caller may
116
+ * run the agent the skill would activate on. Both a denial and an unevaluable agent refuse.
117
+ * 5. No grant → reject, naming the unwieldable 'All' agent if that was the only candidate.
92
118
  *
93
119
  * The user-direct-None rule (step 2) is intentional: an admin who explicitly
94
120
  * denies a user on a scope should not have that decision overridden by a
@@ -135,6 +161,25 @@ let SearchScopePermissionResolver = class SearchScopePermissionResolver extends
135
161
  }
136
162
  // Restricts but does not grant — the user still needs a per-scope grant below.
137
163
  }
164
+ // Step 1e: A SUPPLIED SKILL MUST BE ACTIVATABLE, WHOEVER ENDS UP GRANTING.
165
+ //
166
+ // The agent is judged at step 4, where it widens, because elsewhere it is pure attribution:
167
+ // the pre-execution RAG path threads AIAgentID only so SearchExecutionLog can attribute the
168
+ // search, and gating that turns an analytics field into an outage.
169
+ //
170
+ // A skill has no such second life. It is supplied for exactly one reason — to STEER — and it
171
+ // steers through a second surface the permission verdict never sees: `SearchParams.AISkillID`
172
+ // is bound into `Principals.SkillID` and, for a `restricts: true` dimension, the expansion
173
+ // query's output IS the enforced bound. Judging it only in the 'All' fallback would leave a
174
+ // user who holds their own DirectGrant or RoleGrant free to name any skill and widen the bound
175
+ // with it — the exact "an id a caller merely NAMED" case this gate exists to close, and
176
+ // perversely the case where a stricter skill is judged and an 'All' skill is not.
177
+ if (Skill) {
178
+ const activatable = await this.skillIsActivatable(Agent, Skill, User);
179
+ if (activatable.ok === false) {
180
+ return this.buildResult(false, 'None', 'PrincipalNotActivatable', `${activatable.reason} — a skill steers the bound, so it is judged wherever it is named.`);
181
+ }
182
+ }
138
183
  // Load all SearchScopePermission rows for this scope. We pull the
139
184
  // whole set (typically small per scope) and filter in JS so we can
140
185
  // apply the user-direct-None short-circuit deterministically.
@@ -161,16 +206,74 @@ let SearchScopePermissionResolver = class SearchScopePermissionResolver extends
161
206
  const level = roleGrants.reduce((acc, r) => highestLevel(acc, r.PermissionLevel), 'None');
162
207
  return this.buildResult(true, level, 'RoleGrant', `User '${User.Name}' inherits level '${level}' on this scope through role membership.`);
163
208
  }
209
+ // JUDGE THE AGENT ONCE, FOR BOTH FALLBACKS.
210
+ //
211
+ // Both 'All' arms widen THROUGH this agent, so both need its verdict — step 4b included,
212
+ // because a skill that widens does so on the agent it would activate on. Step 1e does NOT
213
+ // cover that: `GetSkillsForAgent` filters the user's rights on the SKILL, never on the agent.
214
+ // Without this, an 'All' skill launders an agent the caller may not run.
215
+ const agentFallbackInPlay = !!Agent
216
+ && (Agent.SearchScopeAccess === 'All' || Skill?.SearchScopeAccess === 'All');
217
+ const agentVerdict = agentFallbackInPlay
218
+ ? await this.agentIsWieldable(Agent, User)
219
+ : null;
220
+ // A WIDENING FALLBACK REQUIRES A POSITIVE CONFIRMATION, NOT MERELY THE ABSENCE OF A DENIAL.
221
+ //
222
+ // An earlier revision let `kind: 'unavailable'` (agent missing from the metadata cache) fall
223
+ // through to the skill fallback, reasoning that a cache blip should not refuse a user whose
224
+ // own grant covered the scope. That reasoning is impossible: steps 2 and 3 RETURN, so a user
225
+ // with a direct or role grant never reaches a fallback at all. What it actually did was grant
226
+ // 'Search' on any scope, to a user with NO grant, whenever an agent was absent from the cache
227
+ // — an admin creating an agent after boot was enough. Fail-open in the one place the module's
228
+ // own docblock says must fail closed.
229
+ //
230
+ // The distinction still earns its keep in the MESSAGE (a load problem reads differently from a
231
+ // denial) and at step 4, where falling through only ever ends in a refusal anyway.
232
+ const agentUnconfirmed = agentVerdict && agentVerdict.ok === false ? agentVerdict.reason : null;
233
+ const agentDenied = agentVerdict && agentVerdict.ok === false && agentVerdict.kind === 'denied'
234
+ ? agentVerdict.reason : null;
164
235
  // Step 4: agent fallback. SearchScopeAccess='All' lets trusted agents
165
236
  // operate across scopes when the user has no per-scope grant.
166
237
  if (Agent && Agent.SearchScopeAccess === 'All') {
167
- return this.buildResult(true, 'Search', 'AgentUnscopedAll', `Agent '${Agent.Name}' has SearchScopeAccess='All'; granting 'Search' as a fallback for this scope.`);
238
+ // A PRINCIPAL MAY ONLY WIDEN IF THE CALLER MAY WIELD IT.
239
+ //
240
+ // This is the one place an agent GRANTS an outcome: by here the user has no direct or
241
+ // role grant, and 'All' is about to supply one. Elsewhere `Agent` is attribution — the
242
+ // pre-execution RAG path threads AIAgentID purely so SearchExecutionLog can attribute
243
+ // the search — so the check belongs HERE and not at the point the id is supplied.
244
+ // Gating supply instead of grant is what turns an analytics field into an outage.
245
+ if (agentVerdict?.ok) {
246
+ return this.buildResult(true, 'Search', 'AgentUnscopedAll', `Agent '${Agent.Name}' has SearchScopeAccess='All'; granting 'Search' as a fallback for this scope.`);
247
+ }
248
+ // THIS EARLY RETURN EXISTS FOR THE MESSAGE, NOT FOR THE OUTCOME. A fallen-through
249
+ // denial is refused anyway — by step 4b when an 'All' skill follows, otherwise by
250
+ // step 5 — so deleting this block changes no verdict in any combination of agent
251
+ // access, skill access, wieldability and user grant; only the wording moves. It stays
252
+ // because "this user may not run agent X" is a better answer than either of those
253
+ // phrasings.
254
+ if (agentDenied) {
255
+ return this.buildResult(false, 'None', 'PrincipalNotActivatable', `Agent '${Agent.Name}' has SearchScopeAccess='All', but ${agentDenied} — the fallback does not apply.`);
256
+ }
168
257
  }
169
- // Step 4b: skill fallback, mirroring the agent's 'All'.
258
+ // Step 4b: skill fallback, mirroring the agent's 'All'. Step 1e already judged the SKILL —
259
+ // a skill is judged wherever it is named, not only where it grants — but that is not the whole
260
+ // question here, because this arm WIDENS, and it widens through the agent.
170
261
  if (Skill && Skill.SearchScopeAccess === 'All') {
262
+ // The skill widens through the agent it would activate on, so this fallback needs that
263
+ // agent positively confirmed. Both an outright denial and an unevaluable one refuse:
264
+ // step 1e vouches for the SKILL (GetSkillsForAgent reads skill permissions), which says
265
+ // nothing about whether this caller may run the agent it would activate on.
266
+ if (agentUnconfirmed) {
267
+ return this.buildResult(false, 'None', 'PrincipalNotActivatable', `Skill '${Skill.Name}' has SearchScopeAccess='All', but ${agentUnconfirmed} — a skill widens through its agent, so it cannot grant what the agent has not been confirmed to allow.`);
268
+ }
171
269
  return this.buildResult(true, 'Search', 'SkillUnscopedAll', `Skill '${Skill.Name}' has SearchScopeAccess='All'; granting 'Search' as a fallback for this scope.`);
172
270
  }
173
- // Step 5: no grant.
271
+ // Step 5: no grant. When an 'All' agent was the only thing that could have granted and it
272
+ // was refused, say so — otherwise the caller sees a bare 'NoGrant' and cannot tell a missing
273
+ // permission from an agent that could not be evaluated.
274
+ if (agentUnconfirmed) {
275
+ return this.buildResult(false, 'None', 'PrincipalNotActivatable', `Agent '${Agent?.Name}' has SearchScopeAccess='All', but ${agentUnconfirmed} — the fallback does not apply, and no direct or role grant covers this scope.`);
276
+ }
174
277
  return this.buildResult(false, 'None', 'NoGrant', `User '${User.Name}' has no direct grant, no qualifying role grant, and no agent- or skill-side fallback for this scope.`);
175
278
  }
176
279
  /**
@@ -212,7 +315,7 @@ let SearchScopePermissionResolver = class SearchScopePermissionResolver extends
212
315
  const rv = new RunView();
213
316
  const result = await rv.RunView({
214
317
  EntityName: 'MJ: AI Skill Search Scopes',
215
- ExtraFilter: `SkillID='${skillID}' AND SearchScopeID='${searchScopeID}' AND Status='Active'`,
318
+ ExtraFilter: `SkillID='${EscapeSQLString(skillID)}' AND SearchScopeID='${EscapeSQLString(searchScopeID)}' AND Status='Active'`,
216
319
  ResultType: 'simple',
217
320
  // Same reasoning as loadPermissionsForScope: a permission decision must never read
218
321
  // a stale cache.
@@ -234,7 +337,7 @@ let SearchScopePermissionResolver = class SearchScopePermissionResolver extends
234
337
  const rv = new RunView();
235
338
  const result = await rv.RunView({
236
339
  EntityName: 'MJ: AI Agent Search Scopes',
237
- ExtraFilter: `AgentID='${agentID}' AND SearchScopeID='${searchScopeID}' AND Status='Active'`,
340
+ ExtraFilter: `AgentID='${EscapeSQLString(agentID)}' AND SearchScopeID='${EscapeSQLString(searchScopeID)}' AND Status='Active'`,
238
341
  Fields: ['ID'],
239
342
  ResultType: 'simple',
240
343
  // Same fail-closed semantics as loadPermissionsForScope: a stale
@@ -256,7 +359,7 @@ let SearchScopePermissionResolver = class SearchScopePermissionResolver extends
256
359
  const rv = new RunView();
257
360
  const result = await rv.RunView({
258
361
  EntityName: 'MJ: Search Scope Permissions',
259
- ExtraFilter: `SearchScopeID='${searchScopeID}'`,
362
+ ExtraFilter: `SearchScopeID='${EscapeSQLString(searchScopeID)}'`,
260
363
  ResultType: 'simple',
261
364
  // Permission decisions must NEVER read stale cache — a freshly-revoked grant
262
365
  // or a freshly-granted permission must take effect immediately. Skipping
@@ -271,6 +374,77 @@ let SearchScopePermissionResolver = class SearchScopePermissionResolver extends
271
374
  }
272
375
  return result.Results ?? [];
273
376
  }
377
+ /**
378
+ * May this user run this agent? Asked at the WIDENING FALLBACKS — the agent's own
379
+ * `SearchScopeAccess='All'` arm (step 4) and, because a skill widens through the agent it would
380
+ * activate on, the skill's `'All'` arm too (step 4b). Not only the agent's own arm: a non-`'All'`
381
+ * agent still reaches this check when the SKILL is `'All'`. Agent permissions are open by default
382
+ * (no rows means anyone may run it), so without this an id a caller merely NAMED could grant
383
+ * `Search`.
384
+ *
385
+ * Deliberately NOT asked at the point an `AIAgentID` is supplied: pre-execution RAG threads it
386
+ * purely so `SearchExecutionLog` can attribute the search, and gating that turns an analytics
387
+ * field into a retrieval outage.
388
+ *
389
+ * A stale metadata cache is reported distinctly. `GetUserAgentPermissions` throws when the agent
390
+ * is absent from `AIEngine.Instance.Agents` and fails closed to all-false, so an agent created
391
+ * after the cache loaded would otherwise read as "not permitted" — a metadata-load problem
392
+ * wearing an authorization message.
393
+ */
394
+ async agentIsWieldable(agent, user) {
395
+ await AIEngine.Instance.Config(false, user);
396
+ if (!AIEngine.Instance.Agents.some(a => UUIDsEqual(a.ID, agent.ID))) {
397
+ return { ok: false, kind: 'unavailable', reason: `agent '${agent.Name}' is not in the AI metadata cache, so its permissions cannot be evaluated (a metadata-load problem, not a denial)` };
398
+ }
399
+ const perms = await AIEngine.Instance.GetUserAgentPermissions(agent.ID, user);
400
+ if (!perms?.canRun)
401
+ return { ok: false, kind: 'denied', reason: `this user may not run agent '${agent.Name}'` };
402
+ return { ok: true };
403
+ }
404
+ /**
405
+ * Could this caller actually activate this skill on this agent? Asked wherever a skill is NAMED,
406
+ * because a skill steers the bound from a surface the permission verdict never sees — see step 1e.
407
+ *
408
+ * DOES NOT CHECK THE AGENT, AND THAT IS NOT SUFFICIENT ON ITS OWN. `GetSkillsForAgent` is
409
+ * agent-accepted ∩ agent-granted ∩ Active ∩ user-runnable-ON-THE-SKILL — read it
410
+ * (`BaseAIEngine.GetSkillsForAgent`): its permission filter is `AISkillPermissionHelper`, the
411
+ * user's rights on the SKILL. It never consults `AIAgentPermission`. So a user who may not run
412
+ * the agent still gets a NON-empty list here, because skill permissions are open by default.
413
+ *
414
+ * The agent is therefore judged separately, at the fallbacks (steps 4 and 4b), NOT here. That
415
+ * keeps an agent-side cache problem from refusing a user whose own grant covers the scope.
416
+ *
417
+ * It does NOT make this method exempt from the same hazard: step 1e runs BEFORE the grant steps,
418
+ * so a skill that cannot be confirmed refuses such a user too. That is deliberate — an
419
+ * unconfirmed skill must not steer the bound — but it is a real availability cost, which is why
420
+ * the cache case is separated from a denial below and reported as what it is.
421
+ */
422
+ async skillIsActivatable(agent, skill, user) {
423
+ await AIEngine.Instance.Config(false, user);
424
+ if (!agent)
425
+ return { ok: false, kind: 'denied', reason: `skill '${skill.Name}' is judged relative to the calling agent, and none was supplied` };
426
+ // SAME UNAVAILABLE-VS-DENIED DISTINCTION THE AGENT ARM CARRIES, FOR THE SAME REASON.
427
+ //
428
+ // `GetSkillsForAgent` reads `_skills` out of the AIEngine cache. A cold (never-loaded) cache yields
429
+ // an empty list, which is indistinguishable from "this user may not activate that skill" if
430
+ // you only look at the result. Reporting that as a permission denial sends an operator after
431
+ // skill grants when the real fault is metadata loading — and because step 1e runs BEFORE the
432
+ // direct/role grant steps, it is a user with their own grant who gets the misleading message.
433
+ // Still refuses either way: a skill that cannot be confirmed must not steer the bound.
434
+ // (A stale-but-LOADED cache is non-empty, so a skill created after boot reports as denied,
435
+ // not unavailable — the freshness caveat runs the other way from the agent arm's check.)
436
+ if (AIEngine.Instance.Agents.length === 0) {
437
+ return { ok: false, kind: 'unavailable', reason: `the AI metadata cache is empty, so skill '${skill.Name}' cannot be evaluated (a metadata-load problem, not a denial)` };
438
+ }
439
+ // The declared parameter is the Extended agent entity, but the implementation reads only
440
+ // `ID` and `AcceptsSkills` — both on the base type — so the cast bridges a declared shape,
441
+ // not missing data. Revisit if GetSkillsForAgent ever reads Extended-only members.
442
+ const activatable = AIEngine.Instance.GetSkillsForAgent(agent, user);
443
+ if (!activatable.some(x => UUIDsEqual(x.ID, skill.ID))) {
444
+ return { ok: false, kind: 'denied', reason: `skill '${skill.Name}' is not activatable by agent '${agent.Name}' for this user` };
445
+ }
446
+ return { ok: true };
447
+ }
274
448
  /** Bundles the result fields together with a closure-bound toSqlPredicate. */
275
449
  buildResult(allowed, level, source, reason) {
276
450
  return {
@@ -1 +1 @@
1
- {"version":3,"file":"SearchScopePermissionResolver.js","sourceRoot":"","sources":["../../src/permissions/SearchScopePermissionResolver.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SearchScopePermissionResolver.js","sourceRoot":"","sources":["../../src/permissions/SearchScopePermissionResolver.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@memberjunction/search-engine",
3
3
  "type": "module",
4
- "version": "6.1.0-edge.4",
4
+ "version": "6.1.0-edge.5",
5
5
  "description": "MemberJunction: Reusable server-side search engine - vector + full-text + entity search with RRF fusion",
6
6
  "main": "dist/index.js",
7
7
  "types": "dist/index.d.ts",
@@ -11,13 +11,13 @@
11
11
  "author": "MemberJunction.com",
12
12
  "license": "BUSL-1.1",
13
13
  "dependencies": {
14
- "@memberjunction/ai": "6.1.0-edge.4",
15
- "@memberjunction/ai-vectordb": "6.1.0-edge.4",
16
- "@memberjunction/aiengine": "6.1.0-edge.4",
17
- "@memberjunction/core": "6.1.0-edge.4",
18
- "@memberjunction/core-entities": "6.1.0-edge.4",
19
- "@memberjunction/global": "6.1.0-edge.4",
20
- "@memberjunction/storage": "6.1.0-edge.4",
14
+ "@memberjunction/ai": "6.1.0-edge.5",
15
+ "@memberjunction/ai-vectordb": "6.1.0-edge.5",
16
+ "@memberjunction/aiengine": "6.1.0-edge.5",
17
+ "@memberjunction/core": "6.1.0-edge.5",
18
+ "@memberjunction/core-entities": "6.1.0-edge.5",
19
+ "@memberjunction/global": "6.1.0-edge.5",
20
+ "@memberjunction/storage": "6.1.0-edge.5",
21
21
  "nunjucks": "^3.2.4"
22
22
  },
23
23
  "optionalDependencies": {