@chainingintention/pi-web-cn 1.202609.5 → 1.202609.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,12 +1,17 @@
1
1
  export class WorkbenchAccessStateStore {
2
2
  constructor() {
3
3
  this.states = new Map();
4
+ this.refreshes = new Map();
4
5
  }
5
6
  set(handle, state) {
6
7
  if (handle.trim() === "")
7
8
  throw new Error("Workbench access handle is required");
8
9
  if (!Number.isFinite(Date.parse(state.expiresAt)))
9
10
  throw new Error("Workbench access state expiry is invalid");
11
+ const current = this.states.get(handle);
12
+ if (current?.sessionId === state.sessionId && (current.authorizationRevision > state.authorizationRevision
13
+ || (current.authorizationRevision === state.authorizationRevision && Date.parse(current.expiresAt) >= Date.parse(state.expiresAt))))
14
+ return;
10
15
  this.states.set(handle, state);
11
16
  }
12
17
  require(handle) {
@@ -14,11 +19,32 @@ export class WorkbenchAccessStateStore {
14
19
  throw new Error("当前管理会话没有工作台资源授权,请从工作台重新进入桂小智。");
15
20
  const state = this.states.get(handle);
16
21
  if (state === undefined || Date.parse(state.expiresAt) <= Date.now()) {
17
- this.states.delete(handle);
18
22
  throw new Error("当前资源授权已过期或发生变化,请返回工作台重新进入桂小智。");
19
23
  }
20
24
  return state;
21
25
  }
26
+ async prepare(handle, client) {
27
+ if (handle === undefined)
28
+ throw new Error("当前管理会话没有工作台资源授权,请从工作台重新进入桂小智。");
29
+ const state = this.states.get(handle);
30
+ if (state === undefined)
31
+ throw new Error("当前管理会话没有工作台资源授权,请从工作台重新进入桂小智。");
32
+ const existing = this.refreshes.get(handle);
33
+ if (existing !== undefined)
34
+ return existing;
35
+ const pending = client.refreshAgentAccessState(state).then((renewed) => {
36
+ const current = this.states.get(handle);
37
+ if (current?.sessionId !== state.sessionId || current.bearerToken !== state.bearerToken)
38
+ throw new Error("Workbench access state changed during renewal; try again");
39
+ this.set(handle, renewed);
40
+ return this.require(handle);
41
+ }).finally(() => {
42
+ if (this.refreshes.get(handle) === pending)
43
+ this.refreshes.delete(handle);
44
+ });
45
+ this.refreshes.set(handle, pending);
46
+ return pending;
47
+ }
22
48
  delete(handle) {
23
49
  this.states.delete(handle);
24
50
  }
@@ -1 +1 @@
1
- {"version":3,"file":"accessStateStore.js","sourceRoot":"","sources":["../../../src/server/workbench/accessStateStore.ts"],"names":[],"mappings":"AAEA,MAAM,OAAO,yBAAyB;IAAtC;QACmB,WAAM,GAAG,IAAI,GAAG,EAAqC,CAAC;IAyBzE,CAAC;IAvBC,GAAG,CAAC,MAAc,EAAE,KAAgC;QAClD,IAAI,MAAM,CAAC,IAAI,EAAE,KAAK,EAAE;YAAE,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAC;QACjF,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,0CAA0C,CAAC,CAAC;QAC/G,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;IACjC,CAAC;IAED,OAAO,CAAC,MAA0B;QAChC,IAAI,MAAM,KAAK,SAAS;YAAE,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAC;QAC3E,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACtC,IAAI,KAAK,KAAK,SAAS,IAAI,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC;YACrE,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;YAC3B,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAC;QACnD,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAED,MAAM,CAAC,MAAc;QACnB,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IAC7B,CAAC;IAED,KAAK;QACH,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;IACtB,CAAC;CACF"}
1
+ {"version":3,"file":"accessStateStore.js","sourceRoot":"","sources":["../../../src/server/workbench/accessStateStore.ts"],"names":[],"mappings":"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"}
@@ -20,7 +20,7 @@ export function createWorkbenchManagementRuntime(base, config, daemon) {
20
20
  let cached = bindings.get(key);
21
21
  if (cached === undefined) {
22
22
  const projectId = context.projects[0]?.id ?? "personal-project";
23
- const pending = createWorkbenchBinding(client, daemon, token, projectId, context.expiresAt);
23
+ const pending = createWorkbenchBinding(client, daemon, token, projectId);
24
24
  const created = { expiresAt: expiryTime(context.expiresAt), pending };
25
25
  cached = created;
26
26
  bindings.set(key, created);
@@ -34,31 +34,23 @@ export function createWorkbenchManagementRuntime(base, config, daemon) {
34
34
  async prepareContext(context) {
35
35
  const binding = contextBindings.get(context);
36
36
  if (binding !== undefined)
37
- await refreshExpiredWorkbenchBinding(client, daemon, binding);
37
+ await refreshWorkbenchBindingOnce(client, daemon, binding);
38
38
  },
39
39
  resourceHandle(context) {
40
40
  return contextBindings.get(context)?.handle;
41
41
  },
42
42
  };
43
43
  }
44
- async function createWorkbenchBinding(client, daemon, token, projectId, entryExpiresAt) {
44
+ async function createWorkbenchBinding(client, daemon, token, projectId) {
45
45
  const state = await client.createAgentAccessState(token, projectId);
46
46
  const handle = randomBytes(32).toString("base64url");
47
47
  await storeWorkbenchState(client, daemon, handle, state);
48
48
  return {
49
49
  handle,
50
- bootstrapToken: token,
51
- projectId,
52
- entryExpiresAt: expiryTime(entryExpiresAt),
53
50
  state,
54
51
  };
55
52
  }
56
- async function refreshExpiredWorkbenchBinding(client, daemon, binding) {
57
- const now = Date.now();
58
- if (expiryTime(binding.state.expiresAt) > now)
59
- return;
60
- if (binding.entryExpiresAt <= now)
61
- throw new Error("当前资源授权已过期,请返回工作台重新进入桂小智。");
53
+ async function refreshWorkbenchBindingOnce(client, daemon, binding) {
62
54
  if (binding.refresh === undefined) {
63
55
  const pending = refreshWorkbenchBinding(client, daemon, binding).finally(() => {
64
56
  if (binding.refresh === pending)
@@ -69,15 +61,16 @@ async function refreshExpiredWorkbenchBinding(client, daemon, binding) {
69
61
  await binding.refresh;
70
62
  }
71
63
  async function refreshWorkbenchBinding(client, daemon, binding) {
72
- const state = await client.createAgentAccessState(binding.bootstrapToken, binding.projectId);
73
- await storeWorkbenchState(client, daemon, binding.handle, state);
64
+ const state = await client.refreshAgentAccessState(binding.state);
65
+ await storeWorkbenchState(client, daemon, binding.handle, state, false);
74
66
  binding.state = state;
75
67
  }
76
- async function storeWorkbenchState(client, daemon, handle, state) {
68
+ async function storeWorkbenchState(client, daemon, handle, state, revokeOnFailure = true) {
77
69
  const response = await daemon.request("PUT", `${WORKBENCH_ACCESS_STATE_ROUTE}/${encodeURIComponent(handle)}`, state);
78
70
  if (response.statusCode === 204)
79
71
  return;
80
- await client.revoke(state).catch(() => undefined);
72
+ if (revokeOnFailure)
73
+ await client.revoke(state).catch(() => undefined);
81
74
  throw new Error("Session daemon rejected the workbench resource state");
82
75
  }
83
76
  function expiryTime(value) {
@@ -1 +1 @@
1
- {"version":3,"file":"gatewayIntegration.js","sourceRoot":"","sources":["../../../src/server/workbench/gatewayIntegration.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"gatewayIntegration.js","sourceRoot":"","sources":["../../../src/server/workbench/gatewayIntegration.ts"],"names":[],"mappings":"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"}
@@ -2,7 +2,8 @@ export function searchAuthorizedKnowledge(resources, input) {
2
2
  const keyword = input.keyword?.trim().toLocaleLowerCase() ?? "";
3
3
  const limit = Math.max(1, Math.min(input.limit ?? 8, 20));
4
4
  const candidates = resources
5
- .filter(isAuthorizedRagflowKnowledge)
5
+ .filter(isAuthorizedKnowledge)
6
+ .filter((item) => input.provider === undefined || knowledgeProvider(item) === input.provider)
6
7
  .filter((item) => input.spaceCode === undefined || metadataString(item, "spaceCode") === input.spaceCode)
7
8
  .filter((item) => input.domain === undefined || metadataString(item, "domain") === input.domain)
8
9
  .filter((item) => input.classification === undefined || metadataString(item, "classification") === input.classification)
@@ -12,9 +13,15 @@ export function searchAuthorizedKnowledge(resources, input) {
12
13
  return { items: candidates.slice(0, limit).map((candidate) => toKnowledgeSummary(candidate.item)), total: candidates.length };
13
14
  }
14
15
  export function requireAuthorizedRagflowKnowledge(resources, name, version) {
16
+ return requireAuthorizedKnowledge(resources, name, "ragflow", version);
17
+ }
18
+ export function requireAuthorizedBookstackKnowledge(resources, name, version) {
19
+ return requireAuthorizedKnowledge(resources, name, "bookstack", version);
20
+ }
21
+ function requireAuthorizedKnowledge(resources, name, provider, version) {
15
22
  const resourceName = name.trim();
16
23
  const resourceVersion = version?.trim();
17
- const item = resources.find((resource) => resource.resourceName === resourceName && isAuthorizedRagflowKnowledge(resource));
24
+ const item = resources.find((resource) => resource.resourceName === resourceName && isAuthorizedKnowledge(resource) && knowledgeProvider(resource) === provider);
18
25
  if (item === undefined)
19
26
  throw new Error("当前账号未获授权检索该知识资源");
20
27
  if (resourceVersion !== undefined && resourceVersion !== "" && item.resourceVersion !== resourceVersion) {
@@ -22,15 +29,17 @@ export function requireAuthorizedRagflowKnowledge(resources, name, version) {
22
29
  }
23
30
  return item;
24
31
  }
25
- function isAuthorizedRagflowKnowledge(item) {
32
+ function isAuthorizedKnowledge(item) {
26
33
  return item.resourceType === "knowledge" &&
27
34
  item.status === "published" &&
28
35
  item.riskLevel === "L0" &&
29
- knowledgeProvider(item) === "ragflow";
36
+ (knowledgeProvider(item) === "ragflow" || (knowledgeProvider(item) === "bookstack" && item.resourceVersion === "live"));
30
37
  }
31
38
  function knowledgeProvider(item) {
32
- const provider = metadataString(item, "provider");
33
- return provider === undefined || provider === "ragflow" ? "ragflow" : provider;
39
+ const provider = item.metadata["provider"];
40
+ if (provider === undefined || provider === null || provider === "ragflow")
41
+ return "ragflow";
42
+ return provider === "bookstack" ? "bookstack" : undefined;
34
43
  }
35
44
  function knowledgeScore(item, keyword) {
36
45
  if (keyword === "")
@@ -71,7 +80,7 @@ function toKnowledgeSummary(item) {
71
80
  ...(source === undefined ? {} : { source }),
72
81
  ...(ownerOrganization === undefined ? {} : { ownerOrganization }),
73
82
  ...(effectiveDate === undefined ? {} : { effectiveDate }),
74
- provider: "ragflow",
83
+ provider: knowledgeProvider(item) === "bookstack" ? "bookstack" : "ragflow",
75
84
  riskLevel: "L0",
76
85
  };
77
86
  }
@@ -1 +1 @@
1
- {"version":3,"file":"knowledgeSearch.js","sourceRoot":"","sources":["../../../src/server/workbench/knowledgeSearch.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"knowledgeSearch.js","sourceRoot":"","sources":["../../../src/server/workbench/knowledgeSearch.ts"],"names":[],"mappings":"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"}
@@ -35,6 +35,34 @@ export class WorkbenchClient {
35
35
  method: "POST", token: bearerToken, expectedStatus: 200, body: request,
36
36
  }), "capability token response"), "token");
37
37
  }
38
+ async refreshAgentAccessState(state) {
39
+ if (Date.parse(state.expiresAt) > Date.now()) {
40
+ try {
41
+ const snapshot = record(await this.json("/api/agent-access/resources", {
42
+ method: "GET", token: state.bearerToken, expectedStatus: 200,
43
+ }), "resource snapshot");
44
+ if (stringField(snapshot, "sessionId") !== state.sessionId)
45
+ throw new Error("Workbench resource snapshot does not match the Agent Session");
46
+ if (Date.parse(state.expiresAt) > Date.now()) {
47
+ return { ...state, authorizationRevision: integerField(snapshot, "authorizationRevision"), resources: parseAuthorizedResources(snapshot["resources"]) };
48
+ }
49
+ }
50
+ catch (error) {
51
+ if (!(error instanceof WorkbenchHttpError) || error.status !== 401)
52
+ throw error;
53
+ }
54
+ }
55
+ const renewed = record(await this.json("/api/agent-access/sessions/renew", {
56
+ method: "POST", token: state.bearerToken, expectedStatus: 200,
57
+ }), "Agent Session renewal");
58
+ if (stringField(renewed, "sessionId") !== state.sessionId || stringField(renewed, "token") !== state.bearerToken) {
59
+ throw new Error("Workbench renewal does not match the Agent Session");
60
+ }
61
+ const expiresAt = stringField(renewed, "expiresAt");
62
+ if (!Number.isFinite(Date.parse(expiresAt)) || Date.parse(expiresAt) <= Date.now())
63
+ throw new Error("Workbench renewal expiry is invalid");
64
+ return { ...state, expiresAt, authorizationRevision: integerField(renewed, "authorizationRevision"), resources: parseAuthorizedResources(renewed["resources"]) };
65
+ }
38
66
  async issueSkillTicket(bearerToken, request) {
39
67
  return stringField(record(await this.json("/api/agent-access/skill-ticket", {
40
68
  method: "POST", token: bearerToken, expectedStatus: 200, body: request,
@@ -50,6 +78,15 @@ export class WorkbenchClient {
50
78
  method: "POST", token: knowledgeToken, expectedStatus: 200, body: request,
51
79
  }));
52
80
  }
81
+ async retrieveBookstack(knowledgeToken, request) {
82
+ const result = parseBookstackRetrievalResult(await this.json("/api/knowledge-access/bookstack/retrieval", {
83
+ method: "POST", token: knowledgeToken, expectedStatus: 200, body: request,
84
+ }));
85
+ if (result.resourceName !== request.resourceName || result.resourceVersion !== "live") {
86
+ throw new Error("BookStack response does not match the requested resource");
87
+ }
88
+ return result;
89
+ }
53
90
  async revoke(state) {
54
91
  await this.json(`/api/agent-access/sessions/${encodeURIComponent(state.sessionId)}/revoke`, {
55
92
  method: "POST", token: state.bearerToken, expectedStatus: 200,
@@ -117,6 +154,43 @@ function parseKnowledgeRetrievalResult(value) {
117
154
  chunks: chunksValue.map(parseKnowledgeRetrievalChunk),
118
155
  };
119
156
  }
157
+ function parseBookstackRetrievalResult(value) {
158
+ const result = record(value, "BookStack retrieval response");
159
+ const pages = result["pages"];
160
+ if (!Array.isArray(pages) || pages.length > 20)
161
+ throw new Error("BookStack pages must be an array of at most 20 pages");
162
+ if (typeof result["truncated"] !== "boolean")
163
+ throw new Error("BookStack truncated must be a boolean");
164
+ const parsedPages = pages.map(parseBookstackRetrievalPage);
165
+ if (parsedPages.reduce((total, page) => total + page.content.length, 0) > 40_000)
166
+ throw new Error("BookStack content exceeds the response limit");
167
+ return {
168
+ resourceName: stringField(result, "resourceName"),
169
+ resourceVersion: stringField(result, "resourceVersion"),
170
+ pages: parsedPages,
171
+ truncated: result["truncated"],
172
+ };
173
+ }
174
+ function parseBookstackRetrievalPage(value) {
175
+ const page = record(value, "BookStack page");
176
+ const revision = integerField(page, "revision");
177
+ const content = stringValueField(page, "content");
178
+ const updatedAt = stringField(page, "updatedAt");
179
+ const url = new URL(stringField(page, "url"));
180
+ if (revision < 0 || content.length > 8_000 || !Number.isFinite(Date.parse(updatedAt)))
181
+ throw new Error("BookStack page metadata or content is invalid");
182
+ if (!["http:", "https:"].includes(url.protocol) || url.username || url.password)
183
+ throw new Error("BookStack source URL is invalid");
184
+ return {
185
+ pageId: stringField(page, "pageId"),
186
+ title: stringField(page, "title"),
187
+ content,
188
+ updatedAt,
189
+ revision,
190
+ url: url.href,
191
+ citation: stringField(page, "citation"),
192
+ };
193
+ }
120
194
  function parseKnowledgeRetrievalChunk(value) {
121
195
  const chunk = record(value, "knowledge retrieval chunk");
122
196
  return {
@@ -1 +1 @@
1
- {"version":3,"file":"workbenchClient.js","sourceRoot":"","sources":["../../../src/server/workbench/workbenchClient.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"workbenchClient.js","sourceRoot":"","sources":["../../../src/server/workbench/workbenchClient.ts"],"names":[],"mappings":"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"}