Skip to content

Sincroniza upstream e refina descoberta de provedores#39

Merged
gabrielMalonso merged 23 commits intomainfrom
t3code/upstream-sync-check
Apr 11, 2026
Merged

Sincroniza upstream e refina descoberta de provedores#39
gabrielMalonso merged 23 commits intomainfrom
t3code/upstream-sync-check

Conversation

@gabrielMalonso
Copy link
Copy Markdown
Owner

Summary

  • Integra o upstream recente e reduz divergências locais no composer, na autenticação e no fluxo de descoberta de provedores.
  • Ajusta o servidor para cookies de sessão por modo/porta, melhora logs e endurece o store de segredos e a publicação do pacote.
  • Atualiza a UI para usar a descoberta nativa de skills e slash commands, além de melhorias no editor, menu e ações de Git.
  • Inclui correções de desktop, como resolução de porta com hosts obrigatórios e ação nativa de "Copy Image" no menu de contexto.

Testing

  • bun fmt
  • bun lint
  • bun typecheck
  • Not run: bun run test

@github-actions github-actions bot added vouch:trusted PR author is trusted by repo permissions or the VOUCHED list. size:XXL 1,000+ changed lines (additions + deletions). labels Apr 11, 2026
Copy link
Copy Markdown

@chatgpt-codex-connector chatgpt-codex-connector bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 811573c832

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

const DESKTOP_UPDATE_CHANNEL = "latest";
const DESKTOP_UPDATE_ALLOW_PRERELEASE = false;
const DESKTOP_LOOPBACK_HOST = "127.0.0.1";
const DESKTOP_REQUIRED_PORT_PROBE_HOSTS = ["0.0.0.0", "::"] as const;
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P1 Badge Stop hard-failing desktop startup on IPv6-unavailable hosts

Desktop bootstrap now requires a candidate port to be bindable on 127.0.0.1, 0.0.0.0, and ::. Because resolveDesktopBackendPort rejects the port if any host check fails, environments where IPv6 wildcard bind is unsupported (for example, IPv6 disabled and bind returns EAFNOSUPPORT) will reject every port and fail startup with "No desktop backend port is available..." even though loopback bind would succeed. This makes desktop launch fail on a real class of host configurations.

Useful? React with 👍 / 👎.

Comment on lines 37 to 39
Effect.catch((cause) =>
isMissingSecretFileError(cause)
cause.reason._tag === "NotFound"
? Effect.succeed(null)
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Guard secret-store error shape before reading reason tag

The catch path now reads cause.reason._tag without first checking that cause is a PlatformError. If a non-Platform error reaches this handler (for example from an alternate FileSystem layer or unexpected defect), this throws inside the error handler itself and bypasses the intended SecretStoreError fallback. That turns a recoverable missing-secret branch into an unhandled failure path.

Useful? React with 👍 / 👎.

- Move composer placeholder logic into t3code-custom/chat
- Extract send orchestration into t3code-custom/hooks/useComposerSendExtension
- Trim extra snapshot state from ComposerPromptEditor
- Fetch Codex provider commands and skills for the composer menu
- Treat network-accessible startup probing as mode-dependent
- Expand slash command item typing to accept discovered commands
- Keep the primary send button width stable on narrower layouts
- Raise the wide-actions compact breakpoint for the footer
- Adjust user timeline text width estimate to match browser measurements
- Move compact controls after the menu
- Add a separator before footer extension controls
- Add optional `onPasteCapture` to the prompt editor
- Wire ChatComposer to use the custom extension paste handler in capture phase
- Guard ServerSecretStore NotFound handling against non-Platform errors
- Add a small footer width allowance so plan follow-up layouts stay compact
@gabrielMalonso gabrielMalonso merged commit b291f72 into main Apr 11, 2026
7 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

size:XXL 1,000+ changed lines (additions + deletions). vouch:trusted PR author is trusted by repo permissions or the VOUCHED list.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants