feat(port): ported pi-mono improvements + worker & patch improvements

- added Azure OpenAI Responses support and OpenRouter routing compat
- improved patch applicator diagnostics and subagent context propagation
- updated editor cursor handling, keybindings, and working message API
- refreshed porting sync metadata
This commit is contained in:
can1357
2026-01-25 13:50:08 +01:00
parent 3e2c731aa0
commit 7bb2e1aa58
44 changed files with 1656 additions and 176 deletions
@@ -68,6 +68,7 @@ export class EventController {
getSymbolTheme().spinnerFrames,
);
this.ctx.statusContainer.addChild(this.ctx.loadingAnimation);
this.ctx.applyPendingWorkingMessage();
this.ctx.ui.requestRender();
break;
@@ -30,6 +30,7 @@ export class ExtensionUiController {
input: (title, placeholder, _dialogOptions) => this.showHookInput(title, placeholder),
notify: (message, type) => this.showHookNotify(message, type),
setStatus: (key, text) => this.setHookStatus(key, text),
setWorkingMessage: message => this.ctx.setWorkingMessage(message),
setWidget: (key, content) => this.setHookWidget(key, content),
setTitle: title => setTerminalTitle(title),
custom: (factory, _options) => this.showHookCustom(factory),
@@ -389,6 +390,7 @@ export class ExtensionUiController {
input: async (_title: string, _placeholder?: string, _dialogOptions?: unknown) => undefined,
notify: () => {},
setStatus: () => {},
setWorkingMessage: () => {},
setWidget: () => {},
setTitle: () => {},
custom: async () => undefined as never,
@@ -541,9 +541,9 @@ export class InputController {
data: imageData.data,
mimeType: imageData.mimeType,
});
// Insert styled placeholder at cursor like Claude does
// Insert placeholder at cursor like Claude does
const imageNum = this.ctx.pendingImages.length;
const placeholder = theme.bold(theme.underline(`[Image #${imageNum}]`));
const placeholder = `[Image #${imageNum}]`;
this.ctx.editor.insertText(`${placeholder} `);
this.ctx.ui.requestRender();
return true;