@timurproko/a1 0.1.8-dev.465 → 0.1.8-dev.467
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/integrations/pi/session-ui/session-shell-root.js +27 -1
- package/dist/native/darwin-arm64/manifest.json +1 -1
- package/dist/native/linux-x64/manifest.json +1 -1
- package/dist/native/win32-x64/manifest.json +2 -2
- package/dist/native/win32-x64/process-guardian.exe +0 -0
- package/package.json +1 -1
|
@@ -59,6 +59,8 @@ export class OwnedUiSessionShellRoot {
|
|
|
59
59
|
#workflowStatusAnchors = new Map();
|
|
60
60
|
#workflowStatusMessages = new Map();
|
|
61
61
|
#lastWorkflowStatusId;
|
|
62
|
+
// Invariant: the notice is dock chrome, never transcript content; the custom viewport alone uses it.
|
|
63
|
+
#dockNotice;
|
|
62
64
|
#inputSurface;
|
|
63
65
|
#inputSurfaceCoordination = "editor";
|
|
64
66
|
#dockInputReuseEnabled;
|
|
@@ -341,6 +343,8 @@ export class OwnedUiSessionShellRoot {
|
|
|
341
343
|
this.#documentLayouts.clear();
|
|
342
344
|
}
|
|
343
345
|
#mountTranscript(block) {
|
|
346
|
+
// Invariant: new content dismisses the notice; a revision of a mounted block keeps it.
|
|
347
|
+
this.#dismissDockNotice();
|
|
344
348
|
const created = createPiShellTranscriptComponent(block, this.#cwd, this.#extensionRenderers, this.#submittedPromptComposer, this.#outputPad, !this.#thinkingVisible, this.#mermaidRenderingMode, this.#showImages, this.#imageWidthCells, this.#imageAssets, { ...this.#componentRuntime, changed: () => {
|
|
345
349
|
if (this.#transcript.get(block.id) !== created)
|
|
346
350
|
return;
|
|
@@ -522,7 +526,7 @@ export class OwnedUiSessionShellRoot {
|
|
|
522
526
|
#renderDockLayout(width) {
|
|
523
527
|
const queued = this.#customViewport ? [] : this.#renderQueued(width);
|
|
524
528
|
const statusRows = this.#customViewport ? this.#status.renderDock(width) : this.#renderStatus(width);
|
|
525
|
-
const transientRows = [...queued, ...statusRows];
|
|
529
|
+
const transientRows = [...queued, ...statusRows, ...this.#renderDockNotice(width)];
|
|
526
530
|
const aboveWidgets = this.#renderWidgets("aboveEditor", width);
|
|
527
531
|
const input = this.#inputSurface.render(width);
|
|
528
532
|
// Invariant: pointer rows describe the body, not the autocomplete block now preceding it.
|
|
@@ -536,6 +540,17 @@ export class OwnedUiSessionShellRoot {
|
|
|
536
540
|
inputRows: body?.rowCount ?? input.length,
|
|
537
541
|
};
|
|
538
542
|
}
|
|
543
|
+
#renderDockNotice(width) {
|
|
544
|
+
if (this.#dockNotice === undefined)
|
|
545
|
+
return [];
|
|
546
|
+
return ["", ...renderPiShellStatusText(this.#dockNotice, width, this.#outputPad)];
|
|
547
|
+
}
|
|
548
|
+
#dismissDockNotice() {
|
|
549
|
+
if (this.#dockNotice === undefined)
|
|
550
|
+
return;
|
|
551
|
+
this.#dockNotice = undefined;
|
|
552
|
+
this.#invalidateChrome();
|
|
553
|
+
}
|
|
539
554
|
#renderQueued(width) {
|
|
540
555
|
return this.#view.editor.queuedSubmissions.length === 0 ? [] : this.#queued.render(width);
|
|
541
556
|
}
|
|
@@ -734,6 +749,14 @@ export class OwnedUiSessionShellRoot {
|
|
|
734
749
|
return rows.join("\n");
|
|
735
750
|
}
|
|
736
751
|
appendWorkflowStatus(message) {
|
|
752
|
+
// Rationale: bare A1 acknowledges commands in one dock notice above the editor, where the
|
|
753
|
+
// reader's eye already is, instead of a transcript row that opens an empty session at the
|
|
754
|
+
// top-left or sinks into a long feed. The pinned route keeps Pi's chat placement.
|
|
755
|
+
if (this.#customViewport) {
|
|
756
|
+
this.#dockNotice = message;
|
|
757
|
+
this.#invalidateChrome();
|
|
758
|
+
return;
|
|
759
|
+
}
|
|
737
760
|
const previousId = this.#lastWorkflowStatusId;
|
|
738
761
|
if (previousId !== undefined
|
|
739
762
|
&& this.#transcriptOrder.at(-1) === previousId
|
|
@@ -873,6 +896,7 @@ export class OwnedUiSessionShellRoot {
|
|
|
873
896
|
this.invalidate();
|
|
874
897
|
}
|
|
875
898
|
resetWorkflowPresentation() {
|
|
899
|
+
this.#dockNotice = undefined;
|
|
876
900
|
for (const id of this.#workflowStatusAnchors.keys()) {
|
|
877
901
|
this.#transcript.get(id)?.dispose?.();
|
|
878
902
|
this.#transcript.delete(id);
|
|
@@ -1057,6 +1081,8 @@ export class OwnedUiSessionShellRoot {
|
|
|
1057
1081
|
this.#transcriptOrder = order;
|
|
1058
1082
|
}
|
|
1059
1083
|
#appendAnchoredWorkflowComponent(render, dispose) {
|
|
1084
|
+
// Invariant: transcript-bound workflow output supersedes a pending acknowledgement.
|
|
1085
|
+
this.#dismissDockNotice();
|
|
1060
1086
|
this.#workflowTranscriptSequence += 1;
|
|
1061
1087
|
const id = `workflow-status-${this.#workflowTranscriptSequence}`;
|
|
1062
1088
|
const component = {
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
"platform": "darwin",
|
|
6
6
|
"architecture": "arm64",
|
|
7
7
|
"capability": "supported",
|
|
8
|
-
"builtAt": "2026-09-
|
|
8
|
+
"builtAt": "2026-09-17T18:17:47.242Z",
|
|
9
9
|
"artifact": {
|
|
10
10
|
"filename": "process-guardian",
|
|
11
11
|
"sha256": "9db1726bbe3fc2e8292f2ead1e7e9d0fd4d7d0dc9217b372582bf354b0f565dc",
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
"platform": "linux",
|
|
6
6
|
"architecture": "x64",
|
|
7
7
|
"capability": "supported",
|
|
8
|
-
"builtAt": "2026-09-
|
|
8
|
+
"builtAt": "2026-09-17T18:17:37.589Z",
|
|
9
9
|
"artifact": {
|
|
10
10
|
"filename": "process-guardian",
|
|
11
11
|
"sha256": "d8cda6b0c7cb36c0cc41e90802aceebf6c02eaebbc08a83d7d963d2e918dbd7a",
|
|
@@ -5,10 +5,10 @@
|
|
|
5
5
|
"platform": "win32",
|
|
6
6
|
"architecture": "x64",
|
|
7
7
|
"capability": "supported",
|
|
8
|
-
"builtAt": "2026-09-
|
|
8
|
+
"builtAt": "2026-09-17T18:18:40.058Z",
|
|
9
9
|
"artifact": {
|
|
10
10
|
"filename": "process-guardian.exe",
|
|
11
|
-
"sha256": "
|
|
11
|
+
"sha256": "bb9636bcbdcbd48220ad6beb4934afc7b07c369e0abe1906d9dacc45a67ec675",
|
|
12
12
|
"size": 177664
|
|
13
13
|
},
|
|
14
14
|
"provenance": {
|
|
Binary file
|
package/package.json
CHANGED