Skip to content

TensorPM v1.42.1

Choose a tag to compare

@Neo552 Neo552 released this 05 Oct 16:41
· 5 commits to main since this release

Changelog - v1.42.1

This update is all about reliability. It fixes a long list of bugs and rough edges found in a full
review of TensorPM: your edits, files and dates stay the way you made them, messages say what
happened and what to do next, and connected coding agents can wait for long agent replies.

πŸ›‘οΈ Your Work Stays Safe

  • No silent overwrites: renaming, moving, pasting or uploading onto a name that is taken asks
    first: Keep both or, for a file you can see, Replace. Cancel skips only that item. This
    also holds for a file that synced from another device but isn't downloaded here yet: its name,
    record and attachments stay, and a report a coding agent writes under such a name gets the next
    free name instead of being lost.
  • Edits stay: a change is no longer rolled back when the project reloads in the background
    while you save, and the task panel never overwrites a status or attachment that changed meanwhile.
    Changes you make while the AI generates categories or re-evaluates tasks are kept as well.
  • The same protection now covers refreshes after file changes, AI-generated tasks and switching
    projects. Settings you change while the AI generates tasks are no longer overwritten, and edits
    to other tasks survive an AI split.
  • Changes made elsewhere show up in text fields and task details once your own typing is saved,
    and context tables keep your last keystrokes when you close them.
  • AI edits of the milestone table no longer erase dates you entered there, and a date the AI
    cannot read is reported instead of being changed silently.
  • Sync: when two people edit different paragraphs of one text, both edits are kept, and
    switching a project's file folder on one computer is no longer sent to your other devices.
  • Renaming or deleting a file in one project no longer changes the same file in your other projects.
  • Backups no longer close the database the app is working with and include your latest
    changes, and every backup listed in Settings β†’ General can be restored directly.
  • Closing the window saves open documents first, and a window that stopped responding can no
    longer block closing or quitting.
  • Deleting a project removes its chat images and mail-draft attachments too, even when it was
    deleted on another device.

πŸ—“οΈ Dates and Recurring Tasks

  • No more one-day shifts: due dates, start dates and milestones keep their day in every time
    zone, whether you pick them yourself or the AI or an external agent writes them, and Gantt drags
    across a daylight-saving change land on the right day.
  • "Overdue" starts the day after the due date, not on the due day itself.
  • Expense rows on the Budget tab and the timeline's date tooltips and picked range show the right
    day west of UTC.
  • Recurring tasks are created on the right days: the start date is the first occurrence,
    monthly series keep their day (31 Jan β†’ 28 Feb β†’ 31 Mar), and a series with an invalid
    interval no longer freezes TensorPM at startup. The form shows the next occurrence with its
    weekday. If you use several devices or share a workspace, please read the Notes.
  • Schedules use your local time: reminders and runs the project agent schedules keep the right
    hour across daylight-saving changes.
  • Relative dates count calendar days ("Modified" in the file explorer, "Yesterday" in the git
    story, no more "-1 days"), and "in NaN months" and "NaN %" are gone.

πŸ€– AI, Chat and Distiller

  • TensorPM says why AI isn't available and offers the fix right in the chat: sign in, add an
    API key or open the AI settings. Enter and Send take you there instead of doing nothing.
  • Clear offline and credit messages: offline, the chat says it can't reach the TensorPM service
    and offers Retry. With credits used up, you get the way out that fits your plan (sign in,
    upgrade, reset date, Business, local AI).
  • Retry (↻) resends exactly the message that failed, including Distiller decisions and mail or
    calendar approvals, and is offered again after a restart. A Distiller decision is never applied
    twice.
  • Long AI requests end with a final answer or a clear step-limit notice when the agent reaches
    its step limit, and chats running at the same time in different projects no longer mix up their
    project.
  • Drafts are kept: what you typed in Pulse or the AI panel stays per project and conversation,
    and Distiller decisions made card by card survive questions, closing the panel or switching view.
    A project field you edited during onboarding whose save failed stays on screen until it is saved,
    even when the project reloads meanwhile.
  • Safer AI edits: an AI edit that leaves out or garbles the "completed"/"achieved" flag no
    longer reopens a completed milestone or an achieved success criterion, and a change that went
    through despite Stop is recorded in the Trail as done.
  • Project location: the Distiller can now propose a new project location (earlier versions
    dropped such proposals), and a location changed in the chat appears in the Trail.
  • Handover offers are clear: when the AI suggests continuing in a document or the project chat,
    it says so and the chat shows "Handover offered"; nothing starts until you ask, and prepared
    handovers nobody starts expire after 24 hours. Earlier versions could announce one that never ran.
  • Pulse follows your fixes: a suggestion disappears once you fix the field, also after a
    teammate's synced change, and fields the AI left empty no longer count as filled.
  • When your TensorPM sign-in expires during a streamed chat answer, the chat offers Sign in
    instead of showing a raw error.

πŸ”Œ Connectors, Mail and Agent Integrations

  • Trusting an MCP server applies to what you saw: if a server is switched to another account,
    command or address while its approval card waits, Trust server runs the approved call once
    but does not unlock the changed server; it asks again.

  • Microsoft 365: signing in with a different account than the connected one says so and names
    both; a withheld calendar permission gets its own message, and a partial mail sync is shown as
    such. Private Outlook.com accounts are told plainly that they can't be connected.

  • Local AI: Auto-Detect Servers says when nothing was found, and an empty endpoint
    uses the Ollama default.

  • Apple Mail: the local mail connector starts checking at launch and catches up on what arrived
    while TensorPM was closed.

  • The MCP server reports clearly when the TensorPM app is not running.

  • Mail logins are checked before saving, with a clear reason for wrong credentials, an
    unreachable server or a timeout. Work and school Outlook accounts are pointed to the Microsoft
    365 connector, and removing a mail or calendar connector asks first.

  • Skip for now while editing a mail or calendar connector keeps its project assignments.

  • Sync problems are visible: a connector whose last sync failed shows an error badge and the
    reason. A deleted project no longer stops the whole mail sync, late Apple Mail messages are no
    longer missed, and Microsoft 365 moves on only after a successful import.

  • Agent integrations never damage a client's settings: installing into Zed's settings or a VS
    Code mcp.json with comments keeps the rest of the file, and a file TensorPM can't read is left
    untouched while TensorPM shows the entry to paste by hand.

  • Long agent replies: the Codex, Claude Code and Cline integrations wait up to 30 minutes for
    a TensorPM agent reply. Zed waits at most 10 minutes, and a longer reply still finishes in
    TensorPM. Older installs need an update, see Notes.

  • Codex and Claude Code are found more reliably, including the CLI inside the ChatGPT/Codex
    desktop app on macOS and Claude Code installed with NVM. "Not installed" says what to install.
    On Windows, Claude Code gets its task text unchanged, and Stop ends all of an agent's processes.

  • GitHub Copilot is now installed where VS Code really reads it (see Notes), and parallel
    Copilot queries no longer receive each other's answers.

  • Approvals for MCP tools: Stop withdraws a waiting approval, so the tool never runs after a
    late "Allow"; an unanswered request ends after 5 minutes without counting as a denial. Cards
    show all arguments and the asking project and chat, and a header indicator leads to them.

βœ… Tasks, Lists, Search and People

  • Moving a task with the keyboard while a filter is active keeps the hidden tasks in their place;
    clearing a date in the task panel works again, and quick-add on the board and timeline asks for an
    AI+ priority like the list does.

  • The running-timer indicator jumps to the timed task, closing a background tab keeps the AI panel
    of the open project, and an expanded Pulse check-in stays open.

  • In the work breakdown, planned and actual effort and the progress weighting add up correctly.

  • Deleting tasks always asks first, and "Delete Selected" says how many of the selected tasks
    are hidden by filters.

  • Boards: Backspace, Delete and the arrow keys are no longer swallowed in text fields, cards
    open with a double-click or Enter/Space, and quick-add gets an AI+ priority like the list.

  • Visible list filters: a chip shows how many filters are active and resets them, and a new
    task hidden by a filter offers "Reset filters". "Assigned to" finds people and agents by name.

  • Search leads somewhere: people, folders and categories open where they live, and a task
    hidden by filters offers "Show". Ctrl/⌘+K also works from the chat box and other text fields.

  • Add people while assigning: the assignee picker offers "Create β€œName” as a person", and a
    new person needs only a name. Deleting a person asks in the same dialog as other deletions
    (Escape, keyboard focus), and a double click deletes only once.

  • Dependencies follow one rule: the app, the AI, MCP and A2A refuse self-links, duplicates,
    contradicting types and cycles with a translated reason, and cycles saved earlier no longer
    block unrelated saves.

  • Uploads in the task panel work file by file: saved files are attached, failed ones (for example
    over 50 MB) are listed with the reason in your language, and the upload buttons stay hidden
    until the upload is done.

  • Column widths you set by dragging in the task list are now kept.

πŸ’Ά Budget and Currency

  • Thousands separators are read correctly: "1.500", "12.000", "2.500.000" and "1.500,50" are
    saved as typed in budget cells, expenses, materials and the wizard. See Notes.
  • One budget rule everywhere: the Budget tab, Resources, the wizard and Pulse show the same
    totals, including tasks without a bucket and direct expenses. A budget of 0 or none reads "Not
    set" instead of a red "OVERSPENT", and the Budget tab has a "Set project budget" button.
  • Pulse shows real budget figures even before you open the Budget tab (no more 0.00), and its
    spending curve includes expenses, also those the AI records. The Budget tab refreshes after
    changes made elsewhere.
  • Several receipts can be uploaded at once, failed budget saves and uploads say so, clearing the
    budget through the project agent really clears it, and the priority sliders no longer reset the
    display currency to EUR. Budget labels appear in your language, and the task list's budget
    column fits narrower windows ("0,00 EUR" is no longer cut off).

πŸ§™ New Projects and Onboarding

  • Upgrading while signed out or with an expired session opens the sign-in, and a failed workspace
    switch says why.

  • Your new-project draft is kept when you visit other tabs.

  • AI project creation can be cancelled with Cancel or Escape, and your input comes back. If it
    finishes while you work elsewhere, it opens as a background tab with a notice.

  • Archive or reactivate the open project from its settings, with a confirmation.

  • Honest reviews: a failed AI review of a field shows an error with Retry instead of being
    stored as feedback, and a double-click on "Review" no longer starts two paid reviews.

  • Wizard tables no longer save empty rows, and without usable AI the wizard opens the sign-in,
    setup or credits dialog instead of a generic error.

πŸ“ File Explorer and Skills

  • Uploads: one upload runs at a time, files over 50 MB are refused before they are read, and
    every failure is listed by name with the reason, in your language like the other explorer
    messages.
  • A rename stays in its folder, and after switching projects the explorer shows the right files
    and again notices changes made outside TensorPM.
  • With a file selected, Ctrl+C on other text (for example a chat answer) copies that text again.
    The delete dialog works with the keyboard and Escape, a git story summary or title typed while
    the previous one saves is kept, and skill compatibility notes appear in your language.
  • Summarizing a file says why it failed, for example no connection, an expired sign-in or an
    invalid API key.
  • Skills: uninstalling asks first and moves the folder to the trash; if that fails, a second
    confirmation offers to delete it permanently. The skill catalog is translated. Skill approval
    covers all of a skill's code, a skill can no longer load code from the internet or from places
    it isn't allowed to read, and a permission change you declined stays untrusted after an update.
    The PowerPoint example in the skills README now works in the sandbox.

πŸ”’ Privacy and Security

  • Support bundles and bug reports leave out personal details: your user name in file paths,
    API keys, tokens, e-mail addresses and IDs are removed, and default bundles no longer contain AI
    conversations, as the bundle dialog promises.
  • Logs keep less content: profile saves, the Distiller, mail intake, the Trail and AI tools log
    ids and counts instead of mail subjects, senders, file names, people's names or phone numbers,
    and the MCP server masks secrets.
  • The same holds when something fails, for example an AI reply, a tool call or a mail search, and
    support bundles also strip AI replies and tool data as a safety net.
  • Web pages in your browser can no longer use TensorPM's local agent interface (A2A), and the
    browser agent's debugging port is opened only when the browser agent is enabled.
  • With several TensorPM accounts on one computer, saving can no longer overwrite another account's
    file, and a malformed path can no longer make a delete or move hit another file.
  • On macOS and Windows, another account's file also stays out of reach under its name in another
    letter case or Unicode spelling, and on Windows under its short (8.3) name.
  • Windows: TensorPM again trusts the root certificates Windows trusts (for example your
    company's), except those Windows has blocked.

πŸ› Bug Fixes

  • Every saved tab comes back after a restart, in order and with the right active tab, and tab
    names follow a rename.
  • Updates reach the main window: once TensorPM had opened a hidden helper window (for example
    to render a PDF, Word or PowerPoint document), refreshes after AI changes, scheduled prompts,
    chat progress and Trail entries could get lost. They now always arrive.
  • Activity in another project, for example an external agent's A2A conversation, no longer
    replaces the chat list or closes the chat you have open.
  • On Windows and Linux, closing the last window quits TensorPM again, and the tray (or the macOS
    Dock) brings back a closed main window. On macOS, Preferences… (⌘,) also opens the settings
    while a detached card has focus, and uninstalling no longer resets your Dock and Launchpad.
  • A stuck update download shows the real error instead of "update not available", and Escape no
    longer throws away what you typed in a connector setup.
  • A file that can't be opened from a chat answer now says why, and after you leave a project
    interview, the project agent in other projects no longer acts as if the interview were open.

πŸ—οΈ Improvements

  • Word exports are reproducible: exporting an unchanged document twice gives byte-identical
    files, and SVG images keep their intended size.

  • Less background work: saving without changes no longer uploads budget, effort and timer
    rows, Pulse polls every second only while a handover runs, and file updates keep arriving
    reliably after you switch projects.

  • Accessibility: confirmation dialogs open above drawers, start on Cancel, close with Escape
    and return the focus, and board cards and the task overlay work with keyboard and screen reader.

  • More texts in your language: many chat, Distiller, account and approval messages that were
    still English in the German interface are now translated.

  • Deleting or renaming a folder with many files, and listing the project's files to attach to a
    task, are faster.

  • A project file list that fails to load is no longer requested again and again.

πŸ“ Notes

  • Version 1.42.0 was never published; this release replaces it with the same changes.

  • Update every device, and ask your team to update. While an older version still runs on a
    device that shares a workspace, a recurring task can be created twice or a daily one can be
    missing, mainly east of UTC (for example in Germany). This stops once all devices are updated.
    Occurrences created by earlier versions keep their dates, even where they landed a day off.

  • Update agent integrations from earlier versions: open Connectors on the + tab; under MCP
    Server, Codex, Claude Code, Cline and Zed entries that need it are marked UPDATE. Click
    Update and restart the client. Until then the client stops waiting after its default (Codex:
    60 seconds), and most clients then cancel the reply (in Zed it keeps running in TensorPM).
    Agents TensorPM starts for a task are updated automatically. Clients without such a setting,
    such as Claude Desktop and Cursor, stop at their own limit (often 60 s).

  • GitHub Copilot: earlier versions wrote the TensorPM entry to ~/mcp.json, which VS Code
    never reads, so Copilot now shows as not installed. Install it again in Connectors; the old
    entry does no harm.

  • A2A answers only requests addressed to localhost, 127.0.0.1 or [::1] on its own port.
    Others, for example through Docker's host.docker.internal, a port forward to another port or
    a reverse proxy that passes on a non-loopback host name, get HTTP 403; tools calling
    http://localhost:37850 are unaffected. message/send can now be cancelled: closing the
    connection or tasks/cancel stops the agent turn; changes already applied are kept.

  • MCP debug logs are written only when LOG_LEVEL=debug is set for the TensorPM MCP server.

  • API keys set through MCP: earlier versions wrote the key given to set_api_key in plain
    text to the MCP server's log, which clients keep (for example Claude Desktop's
    mcp-server-tensorpm.log in ~/Library/Logs/Claude or %APPDATA%\Claude\logs). If you used
    it, delete those logs or replace the key.

  • Amounts: in amount fields, a single dot after one to three digits and before exactly three
    more (as in "12.500") now groups thousands, as a comma already did, so "12.500" typed into a USD
    field is now 12,500 (it was 12.50). Re-saving a material row or an edited expense rounds to the
    cent. German material inputs show a decimal comma.

  • Storage currency: while you belong to a cloud workspace, it can't be changed in Settings β†’
    General, because synced amounts carry no currency.

  • Replacing a file keeps its attachments: tasks, recurring tasks and expenses that linked the
    old version link the new one, and open tasks show it right away. Where an earlier version left
    two entries for one file, the newest one is used.

  • Mixed versions: older versions show Distiller proposals for the project location as a
    project-description change. This affects only how they are displayed.

  • Browser agent: if you use it, restart TensorPM once more after this update. Until then,
    Settings β†’ AI β†’ Browser Use says it will be available after a restart.

  • Shortcut: on the boards, Ctrl/⌘+K now opens search and no longer switches the view.

  • Local coding agents: restart TensorPM after installing the Codex or Claude Code CLI while it
    runs. Agents it starts now look in NVM folders before fnm, asdf and Volta.

How a few things work in this version

  • Support bundles leave out account names, secrets and AI conversations, but keep the names
    and project paths of the files you worked with, because they are often what explains a problem.
    Look through a bundle before you share it if file names are confidential.
  • Creating a project with AI: pressing Escape while the project is being created cancels it
    right away, without asking first.
  • Recurring tasks: the end date of a series is the first day without an occurrence; a series
    ending on 31 October creates its last occurrence before that day. A start date in the past
    creates every occurrence missed since then at once.
  • Resizing list columns: in narrow lists, the first drag of a date, effort or budget column can
    jump by a few pixels before it follows the pointer.
  • Handovers: when the AI suggests continuing in the document or in the project chat, it says
    so in its reply and marks it as "Handover offered". Nothing moves until you ask for it.
  • A project deleted on another device frees its chat images, mail attachments and file
    watchers here, but its project folder stays on this device, because it can hold files that
    exist only here.
  • macOS with the main window closed: scheduled prompts and browser-agent runs started through
    A2A or MCP need the main window. Keep it open while you rely on them; with it closed, scheduled
    prompts use up their retries and expire.
  • AI replies that don't fit: when the AI answers in prose where TensorPM expects a structured
    result, the error message quotes the first words of that answer so you can see what went wrong.

πŸ“… Release Info

  • Version: 1.42.1
  • Release Date: 2026-10-05
  • Previous Version: 1.41.5
  • Type: Minor Release