Zurück zum Blog
Updates

CI status on the board, a new notification panel and contract analytics

Pipelines on boards and tickets, notifications grouped by customer and ticket, exclude filters, project tags and new tools for capacity contracts.

Spedy Team6 min readAuf Deutsch lesen
CI status on the board, a new notification panel and contract analytics
#pipelines#notifications#filters#budget#mcp#settings

This round brings the CI status of your repos onto boards and tickets, a rebuilt notification panel and filters that let you exclude values. Capacity contracts get a ticket overview per contract, automatic acceptance and analytics that show what a point really costs.


Pipelines on boards and tickets

Runs from GitHub and GitLab now show up where you work:

  • Board: a chip in the toolbar shows how many pipelines are running, for example "2 pipelines running". Its menu links each run at the provider and, via Open project pipelines, the new project tab. Every card carries a pipeline chip with its status.
  • Ticket: the pipeline badge shows the last run with status and age, plus commit and branch on hover. A click opens the Code tab with the new Pipelines card.
  • "Pipelines" tab in the project: all runs of the project's repos, with a status switch (starts on All) and pages.
  • Notifications: when the pipeline of a ticket's pull request or merge request fails, the assignee gets Pipeline failed as an important notification. Pipeline succeeded arrives as info. If an agent is assigned, the notification goes to the agent's owner.
  • Global Pipelines page: filters now live in the URL, so you can share a filtered view as a link.

All of this is visible only to team members with the View code commits permission, and only when the organization's Pipelines feature is on. Customers get neither chips nor notifications.


Notifications by customer and ticket

The panel on the right is reorganized. Instead of one long list you see a card per customer, with one row per ticket showing its most important event: approval before blocker before mention before comment. Several events expand into a short timeline, and approvals can be handled right there with Approve. Use Group by: to switch to Time (Today, Yesterday, This week, Older).

  • Filter chips: For me, Assignments, Status, Archive. Clicking the counter in the header turns on Unread.
  • Read only when you mean it: notifications are marked read only when you click them. Mark read marks a row without opening the ticket. Mark all as read covers every unread notification, whichever chip is active.
  • An archive instead of an endless list: read items leave the list after 2 days and live in the Archive. Nothing is deleted.
  • Quick actions: on hover you get Mark read, Snooze (1 hour, 1 day, 1 week) and Start timer. On touch devices the same actions sit behind ⋯.
  • Bell on the right edge: a tab peeks out at the right edge of the screen and slides out when your mouse gets close. The bell in the sidebar stays and shows a dot as soon as something is unread.
  • Speech bubble: new notifications appear for 5 seconds as a bubble next to the tab, with the kind of event, the title and a short preview. If several arrive in quick succession, it counts up ("+N more"). Hovering keeps it open, a click opens the panel.

Filters: include, exclude, reset

Filter options now have three states. First click: include. Second click: exclude, and the option is struck through. Third click: reset. For example, show every ticket except those in Done, or every project but one.

This works in the Issues Hub (list and board), on the project board, in Workload and under Time → Manage. Saved filters remember excluded projects, statuses, people and types.


Capacity contracts

Tickets on this contract. A new card on the contract page shows where each sized ticket stands: Awaiting approval, Disputed, Approved · in progress, Awaiting acceptance and Accepted (quarter). The tiles filter the list, and a click on a row opens the ticket.

Lock unapproved tickets. A new contract option: while a size class is proposed or disputed, the ticket can only be moved to Blocked. Independently of that, such tickets now carry a Not approved badge on the board, in the backlog and on the contract page.

Automatic acceptance. If you have chosen a status under Request acceptance, a ticket counts as accepted as soon as it moves to a later column or a final status. You no longer have to record the acceptance separately.

Revoke acceptance. If an acceptance was recorded by mistake, take it back on the sizing card with Revoke acceptance, optionally with a reason. The points stay reserved and the ticket waits for acceptance again. Whoever recorded the acceptance may revoke it; everyone else needs the right to manage contracts.

History with names. The ticket history now names who proposed, agreed to or disputed a size class, for example "Size S (3 points) agreed by Max Mustermann". Older entries get the name too.

Contract allowances at a glance.

  • Under Planning & Reports → Budgets, Contract allowances sit above the hour budgets: consumed, reserved and free points of the current quarter per contract, flagged Nearly used up or Used up.
  • Under Time & Budget, Approvals in the contract allowance lists the tickets whose size class still needs approval.

Analytics. Settings → Capacity contracts has a new Analytics tab. It compares the hours booked on accepted tickets with the plan: Hours per point (actual and plan), Effective hourly rate, plus breakdowns by size class, month, contract and ticket. By default only admins see it; other roles get it through the new "View the point value analytics" permission.


Non-billable time stays internal

The Time & Budget chip in the project header now splits the month: billable time is the headline, next to it a dashed non-bill. segment for non-billable time, such as hours above a fixed price. Only your team sees that part. Customers see billable time only, and on contract projects still points only.


Project tags

Under Settings → Project Tags you create tags with a name and a color, for example "Shopware" or "Symfony". Assign them there or directly in a project's general settings under Tags, where you can also create new ones on the fly. Tags appear on the project cards. Agents can filter projects by tag over MCP, for example "all Shopware projects".


Deleting an organization now needs an email confirmation

Deleting an organization in the Danger Zone now takes two steps. Enter the organization's name and, if your account has one, your password, then click Send confirmation link. Spedy emails you a link that is valid for 30 minutes. Only when you open it and confirm there is anything deleted.

  • Accounts that still belong to another organization stay there unchanged. Only the membership is removed.
  • Invoices and billing data are kept for legal reasons.
  • You get a confirmation email once the deletion is done.
  • Organizations with an individual contract can now delete themselves as well.

New over MCP

  • Personal todos: with the todos_* tools your agent reads, creates, completes and comments on your todos. Team members only, and only your own todos or ones delegated to you.
  • My day: work-context_my-day answers "what needs me today?" across all projects: what's important today, what's waiting on you and what might be stuck. The tool is read-only.
  • Set a size class: tickets_create and tickets_update propose a size class with a rationale, just like sizing a ticket in the app.

Smaller changes

  • PDF preview: PDF attachments open in a preview instead of downloading. At the top you'll find Open in new tab, Download and Close; Escape closes it too.
  • Wider columns: kanban columns are wider on desktop. Tablets and phones stay as before.
  • Support chat removed: the Support chat entry in the mobile menu and the chat window are gone.
  • Docs after sign-in only: you now reach the product docs through the links in the app; they are no longer public.

Read more

  • Pipelines: board chip, ticket badge and the project tab
  • Notifications: the new panel, archive and the bell on the edge
  • Issues: excluding filter options
  • Capacity contracts: tickets on the contract, locking, automatic acceptance and analytics
  • Organization: deleting an organization

Frequently asked questions

Quick answers to the most common questions about this topic.

Where do I see whether my ticket's pipeline passed?
On the ticket itself: the pipeline badge shows the status of the last run and takes you to the Code tab. On the board every card has a pipeline chip, and the project's Pipelines tab lists all runs. You need the View code commits permission.
Are read notifications deleted?
No. Read items leave the list after 2 days and move to the Archive. Use the Archive chip in the panel to find them again.
How do I exclude a value in a filter?
Click the option twice. The first click includes it, the second excludes it (struck through), the third resets it. This works in the Issues Hub, on the project board, in Workload and under Time → Manage.
I recorded an acceptance by mistake. Can I undo it?
Yes. The sizing card on the ticket has Revoke acceptance. The points stay reserved and the ticket waits for acceptance again. Once the period is closed, or if the work was not charged, you can no longer revoke it.
Why isn't my organization deleted right away?
Deletion now has two steps: Spedy first emails you a confirmation link that is valid for 30 minutes. Only when you open it and confirm there is anything deleted.
CI status on the board, a new notification panel and contract analytics | Spedy Blog