October 15, 2026
Changes on October 15, 2026
Complete change list
- Late source updates can no longer remain hidden behind an older edited Weekly or Monthly edition. The complete mechanical edition remains available until the editorial copy is reconciled.
- Changelog editions retain a complete, scannable list of concrete user changes instead of replacing the list with summary prose. Weekly and Monthly editions can still add a readable editorial narrative.
- Nova, Polaris and Vega's authored guidance, in-app tool descriptions and generative-worker instructions use the product vocabulary, including unlinked, background and dismissed Evidence items. Original historical/source text and protocol identifiers remain; external MCP cleanup follows in a coordinated release.
- Feedback and Initiative details omit pilot migration banners, and Initiative Technical metadata omits old raw status/disposition controls. Actual lifecycle phases, permitted actions and existing mutation locks remain.
- Feedback, Problem and Initiative review copy, Evidence confirmations, verification labels, source links and health settings use Problem, proposed Problem, Evidence item, Initiative and Feedback. Source links remain distinct from reviewed Problem membership; original quoted text preserves its source language.
- Initiative tool guidance distinguishes lifecycle work from strategy/discovery views of the same Initiative. Problem closure notes remove duplicated Evidence wording, and Evidence status-update errors identify workspace unavailability without suggesting a retry.
- Users can unlink linked accounts (
contact_accounts) from the Technical tab of both Contact (PersonDetail) and Company (CompanyDetail) detail drawers, and can selectBlueskywhen linking accounts in the Contacts UI or logging campaign interactions. Previously, the unlink handler was not wired into the Contact and Company detail drawers andblueskywas rejected bycontact_accountsandcampaign_interactionsplatform/source constraints. - Connected MCP clients with
contacts:writecan remove a campaign member enrollment viacampaign_member_delete(delete_mcp_campaign_member) without deleting the underlying Contact, Company, or logged campaign interactions. Previously, no MCP tool or RPC existed to remove a campaign member enrollment. - Connected MCP clients can add or merge
tagson Contacts and Companies viacontact_upsertandcompany_upsertwithout supplying asourceLabel. Previously,outcomet-mcprejectedtagsunlesssourceLabelwas also provided. - Updating
people.primary_emailnow automatically creates or updates a normalizedcontact_accounts (platform = 'email', handle = lower(email), url = NULL)row for the contact, and updating or deleting the primary emailcontact_accountsrow synchronizespeople.primary_emailin both directions. Previously,people.primary_emailandcontact_accounts (platform = 'email')could diverge. - Connected MCP clients and Nova can attach, update, and clear LinkedIn, X, Bluesky, GitHub, Website, and Email profiles (
contact_accounts) on both Contacts and Companies viacontact_upsert,contact_create,contact_update,company_upsert,company_create,company_update, andupsert_contacts, and read the fullprofilesarray back on Contact and Company reads and searches. Previously, onlycontact_upsertacceptedlinkedinProfileUrland Company RPCs could not manage or return social profiles. - Enrolling a Contact or Company into a Campaign or adding a new
contact_accountsprofile to an existing contact/company now linkscampaign_members.contact_account_idto the account matching the campaign's channel (linkedin_outbound->linkedin,x_outbound->x,bluesky_outbound->bluesky,email_manual->email), andcampaign_list_members(missingProfileUrl: true) filters by the campaign's target channel. Previously,create_mcp_campaign_memberselected any primary account regardless of channel, did not exclude email accounts from social outbound campaigns, and did not backfillcontact_account_idwhen a profile was added after enrollment. - The bottom signal table in Signals > Reporting now provides clickable sortable column headers (
Signal,Source,Cluster,Age,Lineage), a[Columns]visibility menu, and container-responsive column folding when the detail panel opens. - All six sections in Signals > Reporting can be collapsed or expanded individually or together via the "Collapse all sections" / "Expand all sections" header action, with the three matrix and cohort deep-dive sections collapsed by default on initial load.
- The "Where the weight is" section in Signals > Reporting adds proportional mini breakdown bars and one-click filter buttons on all six diagnostic callouts, and reflows from three columns to two columns when the right-hand detail panel opens.
- KPI cards across the workspace place their 30-day sparklines in a dedicated band below description text so curves do not overlap multi-line copy, reflow into a 4x2 grid when the detail panel narrows the container, and match trend arrow direction (
↗for+,↘for-) to the numeric sign while keeping semantic green/red polarity. - The Signals > Reporting view replaces the legacy Empty Summaries KPI card with Resolved Signals, showing closed signal count, resolution share, a 30-day cumulative resolved sparkline, and one-click filtering for closed signals.
- The Signals > Reporting header consolidates the Search & Filter Bar inline with the clickable Age/Status legend, adds contextual mini Search & Filter toolbars below the title of every filterable section, and keeps Sort controls directly accessible on the main bar without counting sort changes as active filters or resetting sort order when clearing filters.
- In Signals > Reporting, the eight top KPI cards and their 30-day sparklines now recalculate dynamically when searching or filtering by cluster, source, matrix cell, monthly cohort, or age bucket, and reflect same-day Problem linking and S0/S1 triage transitions rather than applying today's state retroactively across all 30 days.
- Connected MCP clients with
contacts:writecan attach, update, and clear LinkedIn, X, Bluesky, Facebook, TikTok, GitHub, Website, and Email profiles (contact_accounts) on both Contacts and Companies viacontact_upsert,contact_create,contact_update,company_upsert,company_create, andcompany_update(linkedinUrl,linkedinProfileUrl,xUrl,xProfileUrl,xHandle,blueskyUrl,blueskyProfileUrl,blueskyHandle, andprofiles), and readprimaryProfileandprofiles([{ platform, handle?, url?, isPrimary }]) on Company and Contact reads and searches. Previously, onlycontact_upsertacceptedlinkedinProfileUrland Company tools did not expose or accept external profiles. - Connected MCP clients with
contacts:writecan add or mergetagson Contacts and Companies viacontact_upsertandcompany_upsertwithout supplying asourceLabel, and can log campaign interactions withsource: 'bluesky'. Previously,outcomet-mcprejectedtagsunlesssourceLabelwas also supplied and rejectedblueskyas an interaction source. - Connected MCP clients with
contacts:writecan remove a campaign member enrollment (and its stage-transition history) viacampaign_member_delete(delete_mcp_campaign_member) without deleting the underlying Contact, Company, or logged campaign interactions. Previously, no MCP tool existed to remove a campaign member enrollment.