Skip to content

[Bug]: Imported actions keep stale t3.json commands and hide updates #18061

Closed as not planned

Description

@aharlap

Imported actions keep their old commands after t3.json changes, and the updated same-name action is hidden from the import menu.

Before submitting

  • I searched existing issues, PRs and discussions and did not find this specific report.
  • I included enough detail to reproduce or investigate the problem.

Area

apps/web

Steps to reproduce

  1. Create a throwaway Git project with this t3.json:

    {
      "scripts": [
        { "name": "Probe", "command": "echo old", "icon": "play" }
      ]
    }
  2. Add the project to T3 Code. In Settings, select the project and import Probe from its Actions section.

  3. Open a thread and run Probe. It prints old.

  4. Change only the file's command to echo updated. Leave the saved action untouched.

  5. Run Probe again. It still runs the saved command. Reopen Actions settings: the same-name entry is excluded from Import scripts, even though its command differs.

Expected behavior

An imported action should have a way to pick up changes to its source. T3 could offer to reload it or make the changed action available for re-import.

Actual behavior

The saved copy keeps running. There is no reload control, and matching by name hides the updated action from import.

The copy itself appears deliberate. On main at 716357c, the importer copies the file's fields and excludes actions matching either name or command. The save path writes projectSettingsOverrides.<projectId>.defaultProjectScripts; projectScriptOverrides mirrors that list. The action resolver selects the saved list without reading t3.json.

Impact

Minor bug or occasional failure

Tools that generate or upgrade t3.json cannot update imported actions. Users must repair the saved copies manually, without being told that the file's new commands are ignored.

Version or commit

Observed on 0.0.46-nightly.20261010 on 2026-10-10.

A source-level check with the unchanged upstream resolver also returned and executed echo old after the fixture file changed to echo updated, on current main 716357c, stable v0.0.45, and latest nightly v0.0.46-nightly.20261011.2955. I did not rerun the desktop UI reproduction on those newer builds.

Environment

macOS desktop for the observed behavior. Source-level checks used Node 24.19.0 on Windows.

Workaround

Edit the saved command manually, or delete the saved action and import it again. Resetting the action list returns to environment defaults; it does not reload t3.json.

Related reports and possible fixes

#14991 and #15012 concern MCP updates writing to the wrong settings store. Discussion #6841 concerns setup actions that have never been imported. This report concerns an existing imported action whose source command later changes.

Possible approaches are to read file actions live and keep overrides for actions edited locally, or to detect source changes and offer a reload.

Activity

  1. juliusmarminge commented on Oct 11, 2026

    @juliusmarminge
    Member

    Note

    Grok responding on behalf of Julius.

    Thanks! This is the same underlying request as discussion #6841 (checked-in t3.json actions without a per-user import, so they stay current). Related: #14991 and #15012. Closing in favor of that discussion. Please add your stale-command case there.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions