@github/copilot-sdk 1.0.8 → 1.0.9-preview.0

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.
@@ -18,9 +18,19 @@ var __copyProps = (to, from, except, desc) => {
18
18
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
19
  var sessionFsProvider_exports = {};
20
20
  __export(sessionFsProvider_exports, {
21
+ SessionFsSqliteTransactionFailure: () => SessionFsSqliteTransactionFailure,
21
22
  createSessionFsAdapter: () => createSessionFsAdapter
22
23
  });
23
24
  module.exports = __toCommonJS(sessionFsProvider_exports);
25
+ class SessionFsSqliteTransactionFailure extends Error {
26
+ /** Failure classification reported to the runtime. */
27
+ errorClass;
28
+ constructor(message, errorClass = "fatal") {
29
+ super(message);
30
+ this.name = "SessionFsSqliteTransactionFailure";
31
+ this.errorClass = errorClass;
32
+ }
33
+ }
24
34
  function normalizeSqliteParams(params) {
25
35
  if (!params) {
26
36
  return void 0;
@@ -136,6 +146,29 @@ function createSessionFsAdapter(provider) {
136
146
  );
137
147
  return result ?? { rows: [], columns: [], rowsAffected: 0 };
138
148
  },
149
+ sqliteTransaction: async ({ statements }) => {
150
+ if (!provider.sqlite?.transaction) {
151
+ return {
152
+ results: [],
153
+ error: {
154
+ errorClass: "fatal",
155
+ message: "SQLite transactions are not supported by this provider"
156
+ }
157
+ };
158
+ }
159
+ try {
160
+ const results = await provider.sqlite.transaction(
161
+ statements.map((statement) => ({
162
+ queryType: statement.queryType,
163
+ query: statement.query,
164
+ params: normalizeSqliteParams(statement.params)
165
+ }))
166
+ );
167
+ return { results: results.map((result) => ({ ...result })) };
168
+ } catch (err) {
169
+ return { results: [], error: toSqliteTransactionError(err) };
170
+ }
171
+ },
139
172
  sqliteExists: async () => {
140
173
  if (!provider.sqlite) {
141
174
  throw new Error("SQLite is not supported by this provider");
@@ -149,7 +182,17 @@ function toSessionFsError(err) {
149
182
  const code = e.code === "ENOENT" ? "ENOENT" : "UNKNOWN";
150
183
  return { code, message: e.message ?? String(err) };
151
184
  }
185
+ function toSqliteTransactionError(err) {
186
+ if (err instanceof SessionFsSqliteTransactionFailure) {
187
+ return { errorClass: err.errorClass, message: err.message };
188
+ }
189
+ return {
190
+ errorClass: "fatal",
191
+ message: err instanceof Error ? err.message : String(err)
192
+ };
193
+ }
152
194
  // Annotate the CommonJS export names for ESM import in node:
153
195
  0 && (module.exports = {
196
+ SessionFsSqliteTransactionFailure,
154
197
  createSessionFsAdapter
155
198
  });
package/dist/cjs/types.js CHANGED
@@ -24,6 +24,7 @@ __export(types_exports, {
24
24
  CopilotWebSocketHandler: () => import_copilotRequestHandler.CopilotWebSocketHandler,
25
25
  RuntimeConnection: () => RuntimeConnection,
26
26
  SYSTEM_MESSAGE_SECTIONS: () => SYSTEM_MESSAGE_SECTIONS,
27
+ SessionFsSqliteTransactionFailure: () => import_sessionFsProvider2.SessionFsSqliteTransactionFailure,
27
28
  approveAll: () => approveAll,
28
29
  convertMcpCallToolResult: () => convertMcpCallToolResult,
29
30
  createSessionFsAdapter: () => import_sessionFsProvider.createSessionFsAdapter,
@@ -32,6 +33,7 @@ __export(types_exports, {
32
33
  });
33
34
  module.exports = __toCommonJS(types_exports);
34
35
  var import_sessionFsProvider = require("./sessionFsProvider.js");
36
+ var import_sessionFsProvider2 = require("./sessionFsProvider.js");
35
37
  var import_copilotRequestHandler = require("./copilotRequestHandler.js");
36
38
  const RuntimeConnection = {
37
39
  /**
@@ -151,6 +153,7 @@ const defaultJoinSessionPermissionHandler = () => ({
151
153
  CopilotWebSocketHandler,
152
154
  RuntimeConnection,
153
155
  SYSTEM_MESSAGE_SECTIONS,
156
+ SessionFsSqliteTransactionFailure,
154
157
  approveAll,
155
158
  convertMcpCallToolResult,
156
159
  createSessionFsAdapter,