@dungsil/dsh-plugin-ui-vcs 0.4.1 → 0.4.2
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.
- package/dist/client.js +41 -19
- package/dist/index.js +24 -12
- package/package.json +36 -33
package/dist/client.js
CHANGED
|
@@ -10085,23 +10085,22 @@ function attentionDelete() {
|
|
|
10085
10085
|
function peekDelete() {
|
|
10086
10086
|
return "~";
|
|
10087
10087
|
}
|
|
10088
|
-
// ../../node_modules/.pnpm/mdast-util-gfm-table@2.0.
|
|
10088
|
+
// ../../node_modules/.pnpm/mdast-util-gfm-table@2.0.1/node_modules/mdast-util-gfm-table/lib/index.js
|
|
10089
10089
|
/**
|
|
10090
|
-
* @
|
|
10091
|
-
* @
|
|
10092
|
-
* @
|
|
10093
|
-
*
|
|
10094
|
-
*
|
|
10095
|
-
*
|
|
10096
|
-
*
|
|
10097
|
-
* @
|
|
10098
|
-
*
|
|
10099
|
-
*
|
|
10100
|
-
*
|
|
10101
|
-
*
|
|
10102
|
-
*
|
|
10103
|
-
*
|
|
10104
|
-
* @typedef {import('mdast-util-to-markdown').Info} Info
|
|
10090
|
+
* @import {Heading, InlineCode, Table, TableCell, TableRow} from 'mdast'
|
|
10091
|
+
* @import {Options as MarkdownTableOptions} from 'markdown-table'
|
|
10092
|
+
* @import {
|
|
10093
|
+
* CompileContext,
|
|
10094
|
+
* Extension as FromMarkdownExtension,
|
|
10095
|
+
* Handle as FromMarkdownHandle,
|
|
10096
|
+
* } from 'mdast-util-from-markdown'
|
|
10097
|
+
* @import {
|
|
10098
|
+
* Options as ToMarkdownExtension,
|
|
10099
|
+
* Handle as ToMarkdownHandle,
|
|
10100
|
+
* Info,
|
|
10101
|
+
* Join,
|
|
10102
|
+
* State
|
|
10103
|
+
* } from 'mdast-util-to-markdown'
|
|
10105
10104
|
*/
|
|
10106
10105
|
/**
|
|
10107
10106
|
* @typedef Options
|
|
@@ -10140,6 +10139,8 @@ function gfmTableFromMarkdown() {
|
|
|
10140
10139
|
};
|
|
10141
10140
|
}
|
|
10142
10141
|
/**
|
|
10142
|
+
* Enter a table.
|
|
10143
|
+
*
|
|
10143
10144
|
* @this {CompileContext}
|
|
10144
10145
|
* @type {FromMarkdownHandle}
|
|
10145
10146
|
*/
|
|
@@ -10150,11 +10151,14 @@ function enterTable(token) {
|
|
|
10150
10151
|
align: align.map(function(d) {
|
|
10151
10152
|
return d === "none" ? null : d;
|
|
10152
10153
|
}),
|
|
10153
|
-
children: []
|
|
10154
|
+
children: [],
|
|
10155
|
+
position: void 0
|
|
10154
10156
|
}, token);
|
|
10155
10157
|
this.data.inTable = true;
|
|
10156
10158
|
}
|
|
10157
10159
|
/**
|
|
10160
|
+
* Exit a table.
|
|
10161
|
+
*
|
|
10158
10162
|
* @this {CompileContext}
|
|
10159
10163
|
* @type {FromMarkdownHandle}
|
|
10160
10164
|
*/
|
|
@@ -10163,16 +10167,21 @@ function exitTable(token) {
|
|
|
10163
10167
|
this.data.inTable = void 0;
|
|
10164
10168
|
}
|
|
10165
10169
|
/**
|
|
10170
|
+
* Enter a row.
|
|
10171
|
+
*
|
|
10166
10172
|
* @this {CompileContext}
|
|
10167
10173
|
* @type {FromMarkdownHandle}
|
|
10168
10174
|
*/
|
|
10169
10175
|
function enterRow(token) {
|
|
10170
10176
|
this.enter({
|
|
10171
10177
|
type: "tableRow",
|
|
10172
|
-
children: []
|
|
10178
|
+
children: [],
|
|
10179
|
+
position: void 0
|
|
10173
10180
|
}, token);
|
|
10174
10181
|
}
|
|
10175
10182
|
/**
|
|
10183
|
+
* Exit a row or cell.
|
|
10184
|
+
*
|
|
10176
10185
|
* @this {CompileContext}
|
|
10177
10186
|
* @type {FromMarkdownHandle}
|
|
10178
10187
|
*/
|
|
@@ -10180,16 +10189,24 @@ function exit(token) {
|
|
|
10180
10189
|
this.exit(token);
|
|
10181
10190
|
}
|
|
10182
10191
|
/**
|
|
10192
|
+
* Enter a cell.
|
|
10193
|
+
*
|
|
10183
10194
|
* @this {CompileContext}
|
|
10184
10195
|
* @type {FromMarkdownHandle}
|
|
10185
10196
|
*/
|
|
10186
10197
|
function enterCell(token) {
|
|
10187
10198
|
this.enter({
|
|
10188
10199
|
type: "tableCell",
|
|
10189
|
-
children: []
|
|
10200
|
+
children: [],
|
|
10201
|
+
position: void 0
|
|
10190
10202
|
}, token);
|
|
10191
10203
|
}
|
|
10192
10204
|
/**
|
|
10205
|
+
* Exit code (text).
|
|
10206
|
+
*
|
|
10207
|
+
* Overwrites the default code text data handler to unescape escaped pipes
|
|
10208
|
+
* when they are in tables.
|
|
10209
|
+
*
|
|
10193
10210
|
* @this {CompileContext}
|
|
10194
10211
|
* @type {FromMarkdownHandle}
|
|
10195
10212
|
*/
|
|
@@ -10202,9 +10219,14 @@ function exitCodeText(token) {
|
|
|
10202
10219
|
this.exit(token);
|
|
10203
10220
|
}
|
|
10204
10221
|
/**
|
|
10222
|
+
* Unescape an escaped pipe.
|
|
10223
|
+
*
|
|
10205
10224
|
* @param {string} $0
|
|
10225
|
+
* Whole match.
|
|
10206
10226
|
* @param {string} $1
|
|
10227
|
+
* Escaped character.
|
|
10207
10228
|
* @returns {string}
|
|
10229
|
+
* Replacement.
|
|
10208
10230
|
*/
|
|
10209
10231
|
function replace($0, $1) {
|
|
10210
10232
|
return $1 === "|" ? $1 : $0;
|
package/dist/index.js
CHANGED
|
@@ -16,7 +16,7 @@ var __exportAll = (all, no_symbols) => {
|
|
|
16
16
|
if (!no_symbols) __defProp(target, Symbol.toStringTag, { value: "Module" });
|
|
17
17
|
return target;
|
|
18
18
|
};
|
|
19
|
-
// ../../node_modules/.pnpm/@deepseek-ai+cosmokit@1.
|
|
19
|
+
// ../../node_modules/.pnpm/@deepseek-ai+cosmokit@1.9.0/node_modules/@deepseek-ai/cosmokit/lib/index.js
|
|
20
20
|
/** Return true when a value is `null` or `undefined`. */
|
|
21
21
|
function isNullable(value) {
|
|
22
22
|
return value === null || value === void 0;
|
|
@@ -269,7 +269,7 @@ var Time;
|
|
|
269
269
|
}
|
|
270
270
|
Time.template = template;
|
|
271
271
|
})(Time || (Time = {}));
|
|
272
|
-
// ../../node_modules/.pnpm/@deepseek-ai+schemastery@3.
|
|
272
|
+
// ../../node_modules/.pnpm/@deepseek-ai+schemastery@3.19.0/node_modules/@deepseek-ai/schemastery/lib/index.mjs
|
|
273
273
|
const kSchema = Symbol.for("schemastery");
|
|
274
274
|
const kValidationError = Symbol.for("ValidationError");
|
|
275
275
|
globalThis.__schemastery_index__ ??= 0;
|
|
@@ -906,9 +906,14 @@ async function inspectSession(ctx, id, signal) {
|
|
|
906
906
|
signal.throwIfAborted();
|
|
907
907
|
const live = ctx.get("agents")?.get(id);
|
|
908
908
|
if (live) return live.session;
|
|
909
|
-
const
|
|
910
|
-
|
|
911
|
-
|
|
909
|
+
const handle = await ctx.sessionPersistence.open(id, "read", { signal });
|
|
910
|
+
try {
|
|
911
|
+
const { events } = await handle.read(void 0, void 0, { signal });
|
|
912
|
+
signal.throwIfAborted();
|
|
913
|
+
return Session.create(id, events, handle.header, handle.inheritedEventCount);
|
|
914
|
+
} finally {
|
|
915
|
+
await handle.close();
|
|
916
|
+
}
|
|
912
917
|
}
|
|
913
918
|
// ../../tools/async/src/index.ts
|
|
914
919
|
function createTaskQueue({ concurrency, maxPending }) {
|
|
@@ -979,6 +984,7 @@ const name$3 = "dungsil-vcs-pull-requests";
|
|
|
979
984
|
const inject$3 = [
|
|
980
985
|
"connection",
|
|
981
986
|
"sessionController",
|
|
987
|
+
"sessionPersistence",
|
|
982
988
|
"workingDirectory",
|
|
983
989
|
"subprocess",
|
|
984
990
|
"sandbox",
|
|
@@ -2165,7 +2171,7 @@ async function updateReview(run, context, texts) {
|
|
|
2165
2171
|
context.existingReview = updated;
|
|
2166
2172
|
return { url: updated.url };
|
|
2167
2173
|
}
|
|
2168
|
-
// ../../node_modules/.pnpm/@deepseek-ai+dsh-typert-protocol@0.2.
|
|
2174
|
+
// ../../node_modules/.pnpm/@deepseek-ai+dsh-typert-protocol@0.2.2-rc.1_@deepseek-ai+cordis@4.1.0/node_modules/@deepseek-ai/dsh-typert-protocol/lib/index.js
|
|
2169
2175
|
/** The one Remote failure class shared by owners, the Gateway, and consumers. */
|
|
2170
2176
|
/**
|
|
2171
2177
|
* One Remote call failure: a real Error carrying its stable code and typed
|
|
@@ -2346,7 +2352,7 @@ function sameInvocation(left, right) {
|
|
|
2346
2352
|
function validateName(subject, value) {
|
|
2347
2353
|
if (!isTypertRemoteSegment(value)) throw new TypeError(`typert-protocol: ${subject} must contain only RPC endpoint segment characters`);
|
|
2348
2354
|
}
|
|
2349
|
-
// ../../node_modules/.pnpm/@deepseek-ai+dsh-util-values@0.2.
|
|
2355
|
+
// ../../node_modules/.pnpm/@deepseek-ai+dsh-util-values@0.2.2-rc.1_@deepseek-ai+cordis@4.1.0/node_modules/@deepseek-ai/dsh-util-values/lib/index.js
|
|
2350
2356
|
/**
|
|
2351
2357
|
* Lazily scanned view of one JSON object's top-level fields, built from text
|
|
2352
2358
|
* that may still be streaming or from an already parsed object. Nothing is
|
|
@@ -3022,7 +3028,7 @@ function deepFreeze(value) {
|
|
|
3022
3028
|
}
|
|
3023
3029
|
return value;
|
|
3024
3030
|
}
|
|
3025
|
-
// ../../node_modules/.pnpm/@deepseek-ai+dsh-util-crypto@0.2.
|
|
3031
|
+
// ../../node_modules/.pnpm/@deepseek-ai+dsh-util-crypto@0.2.2-rc.1_@deepseek-ai+cordis@4.1.0/node_modules/@deepseek-ai/dsh-util-crypto/lib/index.js
|
|
3026
3032
|
/**
|
|
3027
3033
|
* Random v4 UUID, minted from `crypto.getRandomValues`.
|
|
3028
3034
|
* @returns the UUID string.
|
|
@@ -3034,7 +3040,7 @@ function randomUUID() {
|
|
|
3034
3040
|
}).join("");
|
|
3035
3041
|
return `${hex.slice(0, 8)}-${hex.slice(8, 12)}-${hex.slice(12, 16)}-${hex.slice(16, 20)}-${hex.slice(20)}`;
|
|
3036
3042
|
}
|
|
3037
|
-
// ../../node_modules/.pnpm/@deepseek-ai+dsh-brand@0.2.
|
|
3043
|
+
// ../../node_modules/.pnpm/@deepseek-ai+dsh-brand@0.2.2-rc.1_@deepseek-ai+cordis@4.1.0/node_modules/@deepseek-ai/dsh-brand/lib/index.js
|
|
3038
3044
|
/**
|
|
3039
3045
|
* Duplicate-install-safe nominal primitive helpers.
|
|
3040
3046
|
*
|
|
@@ -3056,10 +3062,10 @@ function randomUUID() {
|
|
|
3056
3062
|
function brandString(value) {
|
|
3057
3063
|
return value;
|
|
3058
3064
|
}
|
|
3059
|
-
// ../../node_modules/.pnpm/@deepseek-ai+dsh-timeout@0.2.
|
|
3065
|
+
// ../../node_modules/.pnpm/@deepseek-ai+dsh-timeout@0.2.2-rc.1_@deepseek-ai+cordis@4.1.0/node_modules/@deepseek-ai/dsh-timeout/lib/index.js
|
|
3060
3066
|
/** Largest delay Node schedules without clamping it to one millisecond. */
|
|
3061
3067
|
const MAX_TIMER_DELAY_MS = 2147483647;
|
|
3062
|
-
// ../../node_modules/.pnpm/@deepseek-ai+dsh-llm@0.2.
|
|
3068
|
+
// ../../node_modules/.pnpm/@deepseek-ai+dsh-llm@0.2.2-rc.1_@deepseek-ai+cordis@4.1.0/node_modules/@deepseek-ai/dsh-llm/lib/index.js
|
|
3063
3069
|
/**
|
|
3064
3070
|
* Detach and deep-freeze a message whose identity already exists.
|
|
3065
3071
|
* @param message - complete message, including its stable identity.
|
|
@@ -4128,12 +4134,17 @@ var LlmError = class extends HarnessError {
|
|
|
4128
4134
|
if (typeof model.provider !== "string" || model.provider !== provider || typeof model.id !== "string" || model.id.length === 0 || typeof model.name !== "string" || model.name.length === 0 || model.description !== void 0 && typeof model.description !== "string" || seen.has(model.id)) throw new LlmError(`adapter returned invalid or duplicate model metadata for provider "${provider}"`, "INVALID_CATALOG");
|
|
4129
4135
|
seen.add(model.id);
|
|
4130
4136
|
const inputModalities = this.detachedModalities(model.inputModalities);
|
|
4137
|
+
const badge = model.badge;
|
|
4131
4138
|
return {
|
|
4132
4139
|
provider: model.provider,
|
|
4133
4140
|
id: model.id,
|
|
4134
4141
|
name: model.name,
|
|
4135
4142
|
...model.description === void 0 ? {} : { description: model.description },
|
|
4136
|
-
...inputModalities === void 0 ? {} : { inputModalities }
|
|
4143
|
+
...inputModalities === void 0 ? {} : { inputModalities },
|
|
4144
|
+
...badge === void 0 ? {} : { badge: {
|
|
4145
|
+
text: typeof badge.text === "string" ? badge.text : { ...badge.text },
|
|
4146
|
+
tone: badge.tone
|
|
4147
|
+
} }
|
|
4137
4148
|
};
|
|
4138
4149
|
});
|
|
4139
4150
|
}
|
|
@@ -5301,6 +5312,7 @@ const name = "dungsil-ui-vcs";
|
|
|
5301
5312
|
const inject = [
|
|
5302
5313
|
"connection",
|
|
5303
5314
|
"sessionController",
|
|
5315
|
+
"sessionPersistence",
|
|
5304
5316
|
"subprocess",
|
|
5305
5317
|
"sandbox",
|
|
5306
5318
|
"sandboxPolicy",
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@dungsil/dsh-plugin-ui-vcs",
|
|
3
|
-
"version": "0.4.
|
|
3
|
+
"version": "0.4.2",
|
|
4
4
|
"description": "Git actions and PR/MR review for GitHub, GitLab, Gitea and Forgejo.",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"repository": {
|
|
@@ -25,33 +25,35 @@
|
|
|
25
25
|
"access": "public"
|
|
26
26
|
},
|
|
27
27
|
"devDependencies": {
|
|
28
|
-
"@deepseek-ai/cordis": "4.0
|
|
29
|
-
"@deepseek-ai/dsh-agent": "0.2.
|
|
30
|
-
"@deepseek-ai/dsh-agent-loop-testkit": "0.2.
|
|
31
|
-
"@deepseek-ai/dsh-api-session-controller": "0.2.
|
|
32
|
-
"@deepseek-ai/dsh-app-boot": "0.2.
|
|
33
|
-
"@deepseek-ai/dsh-client-connection": "0.2.
|
|
34
|
-
"@deepseek-ai/dsh-client-locale": "0.2.
|
|
35
|
-
"@deepseek-ai/dsh-client-store": "0.2.
|
|
36
|
-
"@deepseek-ai/dsh-client-ui-conversation": "0.2.
|
|
37
|
-
"@deepseek-ai/dsh-client-ui-renderer": "0.2.
|
|
38
|
-
"@deepseek-ai/dsh-client-ui-session": "0.2.
|
|
39
|
-
"@deepseek-ai/dsh-client-ui-settings": "0.2.
|
|
40
|
-
"@deepseek-ai/dsh-client-ui-sidebar-right": "0.2.
|
|
41
|
-
"@deepseek-ai/dsh-client-ui-slots": "0.2.
|
|
42
|
-
"@deepseek-ai/dsh-client-ui-workspace": "0.2.
|
|
43
|
-
"@deepseek-ai/dsh-config-editor": "0.2.
|
|
44
|
-
"@deepseek-ai/dsh-credentials-local": "0.2.
|
|
45
|
-
"@deepseek-ai/dsh-fs": "0.2.
|
|
46
|
-
"@deepseek-ai/dsh-llm": "0.2.
|
|
47
|
-
"@deepseek-ai/dsh-sandbox": "0.2.
|
|
48
|
-
"@deepseek-ai/dsh-sandbox-local": "0.2.
|
|
49
|
-
"@deepseek-ai/dsh-sandbox-policy": "0.2.
|
|
50
|
-
"@deepseek-ai/dsh-session": "0.2.
|
|
51
|
-
"@deepseek-ai/dsh-
|
|
52
|
-
"@deepseek-ai/dsh-
|
|
53
|
-
"@deepseek-ai/dsh-
|
|
54
|
-
"@deepseek-ai/
|
|
28
|
+
"@deepseek-ai/cordis": "4.1.0",
|
|
29
|
+
"@deepseek-ai/dsh-agent": "0.2.2-rc.1",
|
|
30
|
+
"@deepseek-ai/dsh-agent-loop-testkit": "0.2.2-rc.1",
|
|
31
|
+
"@deepseek-ai/dsh-api-session-controller": "0.2.2-rc.1",
|
|
32
|
+
"@deepseek-ai/dsh-app-boot": "0.2.2-rc.1",
|
|
33
|
+
"@deepseek-ai/dsh-client-connection": "0.2.2-rc.1",
|
|
34
|
+
"@deepseek-ai/dsh-client-locale": "0.2.2-rc.1",
|
|
35
|
+
"@deepseek-ai/dsh-client-store": "0.2.2-rc.1",
|
|
36
|
+
"@deepseek-ai/dsh-client-ui-conversation": "0.2.2-rc.1",
|
|
37
|
+
"@deepseek-ai/dsh-client-ui-renderer": "0.2.2-rc.1",
|
|
38
|
+
"@deepseek-ai/dsh-client-ui-session": "0.2.2-rc.1",
|
|
39
|
+
"@deepseek-ai/dsh-client-ui-settings": "0.2.2-rc.1",
|
|
40
|
+
"@deepseek-ai/dsh-client-ui-sidebar-right": "0.2.2-rc.1",
|
|
41
|
+
"@deepseek-ai/dsh-client-ui-slots": "0.2.2-rc.1",
|
|
42
|
+
"@deepseek-ai/dsh-client-ui-workspace": "0.2.2-rc.1",
|
|
43
|
+
"@deepseek-ai/dsh-config-editor": "0.2.2-rc.1",
|
|
44
|
+
"@deepseek-ai/dsh-credentials-local": "0.2.2-rc.1",
|
|
45
|
+
"@deepseek-ai/dsh-fs": "0.2.2-rc.1",
|
|
46
|
+
"@deepseek-ai/dsh-llm": "0.2.2-rc.1",
|
|
47
|
+
"@deepseek-ai/dsh-sandbox": "0.2.2-rc.1",
|
|
48
|
+
"@deepseek-ai/dsh-sandbox-local": "0.2.2-rc.1",
|
|
49
|
+
"@deepseek-ai/dsh-sandbox-policy": "0.2.2-rc.1",
|
|
50
|
+
"@deepseek-ai/dsh-session": "0.2.2-rc.1",
|
|
51
|
+
"@deepseek-ai/dsh-session-persistence": "0.2.2-rc.1",
|
|
52
|
+
"@deepseek-ai/dsh-session-persistence-jsonl": "0.2.2-rc.1",
|
|
53
|
+
"@deepseek-ai/dsh-subprocess": "0.2.2-rc.1",
|
|
54
|
+
"@deepseek-ai/dsh-subprocess-local": "0.2.2-rc.1",
|
|
55
|
+
"@deepseek-ai/dsh-working-directory": "0.2.2-rc.1",
|
|
56
|
+
"@deepseek-ai/schemastery": "3.19.0",
|
|
55
57
|
"@dungsil/dsh-async": "0.0.0",
|
|
56
58
|
"@dungsil/dsh-tsconfig": "0.0.0",
|
|
57
59
|
"@dungsil/dsh-ui": "0.0.0",
|
|
@@ -68,13 +70,14 @@
|
|
|
68
70
|
},
|
|
69
71
|
"peerDependencies": {
|
|
70
72
|
"@deepseek-ai/cordis": "^4.0.5",
|
|
71
|
-
"@deepseek-ai/dsh-client-connection": "^0.2.1-rc.5",
|
|
72
|
-
"@deepseek-ai/dsh-client-ui-primitives": "^0.2.1-rc.5",
|
|
73
|
-
"@deepseek-ai/dsh-config-editor": "0.2.1-rc.5",
|
|
74
|
-
"@deepseek-ai/dsh-session": "^0.2.1-rc.5"
|
|
73
|
+
"@deepseek-ai/dsh-client-connection": "^0.2.1-rc.5 || ^0.2.2-rc.1",
|
|
74
|
+
"@deepseek-ai/dsh-client-ui-primitives": "^0.2.1-rc.5 || ^0.2.2-rc.1",
|
|
75
|
+
"@deepseek-ai/dsh-config-editor": "0.2.1-rc.5 || ^0.2.2-rc.1",
|
|
76
|
+
"@deepseek-ai/dsh-session": "^0.2.1-rc.5 || ^0.2.2-rc.1",
|
|
77
|
+
"@deepseek-ai/dsh-session-persistence": "^0.2.1-rc.5 || ^0.2.2-rc.1"
|
|
75
78
|
},
|
|
76
79
|
"engines": {
|
|
77
|
-
"dsh": "^0.2.1-rc.5",
|
|
80
|
+
"dsh": "^0.2.1-rc.5 || ^0.2.2-rc.1",
|
|
78
81
|
"node": ">=24.9.0"
|
|
79
82
|
},
|
|
80
83
|
"dsh": {
|