Skip to content

Sync upstream paradigmxyz/centaur main → darkmatter/centaur main - #60

Open
darkmatter[bot] wants to merge 24 commits into
mainfrom
sync/upstream-main
Open

Sync upstream paradigmxyz/centaur main → darkmatter/centaur main#60
darkmatter[bot] wants to merge 24 commits into
mainfrom
sync/upstream-main

Conversation

@darkmatter

@darkmatter darkmatter Bot commented Sep 7, 2026

Copy link
Copy Markdown

⚠️ MERGE BY HUMAN ONLY — no automation may merge this PR. Merge-commit ancestry is required (use a merge commit, not squash/rebase); the image/GitOps stage validates the resulting merge commit.

Upstream sync conflict repair completed in place on sync/upstream-main.

  • Product base parent: dc84e632cf7f909b5f36c6f5508e3f63143da107
  • Upstream tip parent: e5d3cb71f8de619e7e26905ecfb10df487ca459e
  • Resolved merge head: b6d9b91aa7c188dc14d808cb274a46d5d21c2fa0
  • Branch: sync/upstream-main
  • Conflicts: none; the real --no-ff three-way merge completed cleanly.
  • Files requiring semantic-overlap review: API/session/runtime, harness-server, sandbox, console, Slackbot, GitHubbot, chart/workflow, and SQLx migration paths. Fork-only OMP, sandbox, chart, workflow, and migration files were retained.

Validation:

  • git diff --check HEAD^1..HEAD: passed
  • Conflict-marker scan: passed
  • SQLx lock/hash and migration-order checks: passed
  • cargo +stable check --workspace --locked in services/api-rs: passed
  • cargo +stable check --locked in crates/harness-server: passed
  • bun test: 753 passed, 1 skipped, 0 failed
  • Python compile: passed
  • Sandbox Python tests: 11 passed, 4 subtests passed
  • Rails targeted tests: not runnable in the repair sandbox because Ruby is unavailable; CI was dispatched for the full repository validation.

Source: paradigmxyz/centaur:mainsync/upstream-main. This PR is updated in place; it must be merged by a human only.

dependabot Bot added 3 commits September 7, 2026 19:57
…z#1613)

Bumps the github-actions group with 2 updates: [actions/checkout](https://github.com/actions/checkout) and [actions/setup-python](https://github.com/actions/setup-python).


Updates `actions/checkout` from 4 to 7
- [Release notes](https://github.com/actions/checkout/releases)
- [Commits](actions/checkout@v4...v7)

Updates `actions/setup-python` from 5 to 7
- [Release notes](https://github.com/actions/setup-python/releases)
- [Commits](actions/setup-python@v5...v7)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-version: '7'
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: github-actions
- dependency-name: actions/setup-python
  dependency-version: '7'
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: github-actions
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
…ith 3 updates (paradigmxyz#1612)

chore(deps): bump the api-rs-dependencies group

Bumps the api-rs-dependencies group in /services/api-rs with 3 updates: [aws-smithy-types](https://github.com/smithy-lang/smithy-rs), [toml](https://github.com/toml-rs/toml) and [tower-http](https://github.com/tower-rs/tower-http).


Updates `aws-smithy-types` from 1.6.2 to 1.6.3
- [Release notes](https://github.com/smithy-lang/smithy-rs/releases)
- [Changelog](https://github.com/smithy-lang/smithy-rs/blob/main/CHANGELOG.md)
- [Commits](https://github.com/smithy-lang/smithy-rs/commits)

Updates `toml` from 1.1.4+spec-1.1.0 to 1.1.5+spec-1.1.0
- [Commits](toml-rs/toml@toml-v1.1.4...toml-v1.1.5)

Updates `tower-http` from 0.7.0 to 0.7.1
- [Release notes](https://github.com/tower-rs/tower-http/releases)
- [Commits](tower-rs/tower-http@tower-http-0.7.0...tower-http-0.7.1)

---
updated-dependencies:
- dependency-name: aws-smithy-types
  dependency-version: 1.6.3
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: api-rs-dependencies
- dependency-name: toml
  dependency-version: 1.1.5+spec-1.1.0
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: api-rs-dependencies
- dependency-name: tower-http
  dependency-version: 0.7.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: api-rs-dependencies
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
…th 4 updates (paradigmxyz#1611)

chore(deps): bump the ruby-dependencies group

Bumps the ruby-dependencies group in /services/console with 4 updates: [sentry-ruby](https://github.com/getsentry/sentry-ruby), [sentry-rails](https://github.com/getsentry/sentry-ruby), [bootsnap](https://github.com/rails/bootsnap) and [image_processing](https://github.com/janko/image_processing).


Updates `sentry-ruby` from 6.7.0 to 7.0.0
- [Release notes](https://github.com/getsentry/sentry-ruby/releases)
- [Changelog](https://github.com/getsentry/sentry-ruby/blob/master/CHANGELOG.md)
- [Commits](getsentry/sentry-ruby@6.7.0...7.0.0)

Updates `sentry-rails` from 6.7.0 to 7.0.0
- [Release notes](https://github.com/getsentry/sentry-ruby/releases)
- [Changelog](https://github.com/getsentry/sentry-ruby/blob/master/CHANGELOG.md)
- [Commits](getsentry/sentry-ruby@6.7.0...7.0.0)

Updates `sentry-rails` from 6.7.0 to 7.0.0
- [Release notes](https://github.com/getsentry/sentry-ruby/releases)
- [Changelog](https://github.com/getsentry/sentry-ruby/blob/master/CHANGELOG.md)
- [Commits](getsentry/sentry-ruby@6.7.0...7.0.0)

Updates `bootsnap` from 1.25.0 to 1.26.0
- [Release notes](https://github.com/rails/bootsnap/releases)
- [Changelog](https://github.com/rails/bootsnap/blob/main/CHANGELOG.md)
- [Commits](rails/bootsnap@v1.25.0...v1.26.0)

Updates `image_processing` from 2.0.3 to 2.1.0
- [Changelog](https://github.com/janko/image_processing/blob/master/CHANGELOG.md)
- [Commits](janko/image_processing@v2.0.3...v2.1.0)

---
updated-dependencies:
- dependency-name: sentry-ruby
  dependency-version: 7.0.0
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: ruby-dependencies
- dependency-name: sentry-rails
  dependency-version: 7.0.0
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: ruby-dependencies
- dependency-name: sentry-rails
  dependency-version: 7.0.0
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: ruby-dependencies
- dependency-name: bootsnap
  dependency-version: 1.26.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: ruby-dependencies
- dependency-name: image_processing
  dependency-version: 2.1.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: ruby-dependencies
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
@darkmatter
darkmatter Bot marked this pull request as ready for review September 7, 2026 20:08
* chore(slackbotv2): upgrade Chat SDK to 4.40.0

* docs: remove Chat SDK upgrade notes

* fix(slackbotv2): preserve delivery state and stream batching
@darkmatter
darkmatter Bot force-pushed the sync/upstream-main branch from b5a40a2 to 0715475 Compare September 8, 2026 03:01
@darkmatter
darkmatter Bot marked this pull request as draft September 8, 2026 03:01
@darkmatter darkmatter Bot changed the title Sync upstream main (867c0542) Sync upstream paradigmxyz/centaur main (0715475f) Sep 8, 2026
@darkmatter
darkmatter Bot marked this pull request as ready for review September 8, 2026 03:18
* feat(api-rs): retention for session_events

Every event the control plane records lands in session_events, including one
row per harness stdout line, and nothing ever removed them: no TTL, no
partitioning, and no delete anywhere in api-rs. Rows only went via the
cascade from sessions, and sessions are not deleted in normal operation, so
the table grew monotonically for the life of the deployment -- order 1.1M
rows and 450MB a day on a modest single node, against a 20Gi default volume.

SESSION_EVENTS_RETENTION_DAYS deletes events past the window on the existing
cleanup sweep. Off by default: session_events is durable history and dropping
it is not something to start doing to an existing deployment unasked.

Events of a queued or running execution are never deleted, whatever their
age. A long-running turn's early output is still needed to replay it, and age
alone does not distinguish old from still-in-use.

Deletes are batched and each sweep is bounded at 100k rows. Switching
retention on for the first time can face millions of rows, and one unbounded
delete would hold locks and bloat the table for the duration; successive
sweeps drain the backlog instead.

Migration 0054 adds the created_at index the sweep needs -- the table had
only (thread_key, event_id) and (execution_id, event_type), so an age-keyed
delete would seq-scan the largest table in the schema on every pass.

* refactor(api-rs): separate session event retention cleanup

* fix: limit session event retention to stdout rows

* chore: bump chart version to 0.1.137

* fix: expire stdout after execution retention window

* refactor: return retention deletion count directly

* fix: install retention index outside startup migrations

---------

Co-authored-by: Matthew Slipper <me@matthewslipper.com>
@darkmatter
darkmatter Bot force-pushed the sync/upstream-main branch from a106e21 to 59ffe5e Compare September 8, 2026 16:01
@darkmatter
darkmatter Bot marked this pull request as draft September 8, 2026 16:01
@darkmatter darkmatter Bot changed the title Sync upstream paradigmxyz/centaur main (0715475f) Sync upstream paradigmxyz/centaur main (2026-09-08) Sep 8, 2026
@darkmatter darkmatter Bot changed the title Sync upstream paradigmxyz/centaur main (2026-09-08) chore: sync upstream main (59ffe5eb) into darkmatter/centaur Sep 8, 2026
@darkmatter
darkmatter Bot force-pushed the sync/upstream-main branch from 272f5eb to 59ffe5e Compare September 8, 2026 17:02
@darkmatter
darkmatter Bot marked this pull request as ready for review September 8, 2026 17:15
…1616)

* feat(slackbotv2): add toggleable Slack agent experience

* fix(slackbotv2): make native agent stops recoverable

* chore(chart): bump version to 0.1.138

* refactor(slackbotv2): defer native stop support
@darkmatter
darkmatter Bot force-pushed the sync/upstream-main branch from d10382d to 160baf5 Compare September 8, 2026 18:01
@darkmatter
darkmatter Bot marked this pull request as draft September 8, 2026 18:01
@darkmatter darkmatter Bot changed the title chore: sync upstream main (59ffe5eb) into darkmatter/centaur chore: sync upstream main (160baf5b) into darkmatter/centaur Sep 8, 2026
@darkmatter
darkmatter Bot marked this pull request as ready for review September 8, 2026 18:20
* feat: add durable Slack button callbacks to workflows

* refactor: simplify workflow button lifecycle

* refactor: start a workflow for each Slack button click

* feat: support Slack workflow button styles

* fix: authenticate workflow button targets before invocation

* docs: clarify Slack button replay semantics
@darkmatter
darkmatter Bot force-pushed the sync/upstream-main branch from e2c4440 to b3fd35e Compare September 8, 2026 20:01
@darkmatter
darkmatter Bot marked this pull request as draft September 8, 2026 20:01
@darkmatter darkmatter Bot changed the title chore: sync upstream main (160baf5b) into darkmatter/centaur Sync upstream paradigmxyz/centaur main (b3fd35e) Sep 8, 2026
@darkmatter darkmatter Bot changed the title Sync upstream paradigmxyz/centaur main (b3fd35e) chore: sync upstream main (b3fd35e) into darkmatter/centaur Sep 8, 2026
@darkmatter
darkmatter Bot marked this pull request as ready for review September 8, 2026 20:32
* fix: show workflow button processing state

* docs: remove workflow button documentation changes

* refactor: simplify workflow button feedback lifecycle

* fix: keep workflow button feedback best effort

* refactor: clarify workflow button feedback lifecycle
@darkmatter
darkmatter Bot force-pushed the sync/upstream-main branch from c9376bb to 2c23d3e Compare September 9, 2026 04:45
@darkmatter
darkmatter Bot marked this pull request as draft September 9, 2026 04:45
@darkmatter
darkmatter Bot marked this pull request as draft September 9, 2026 23:06
@darkmatter darkmatter Bot changed the title Sync upstream paradigmxyz/centaur main (127ac4d7) Sync upstream paradigmxyz/centaur main (8b557d4) Sep 9, 2026
@darkmatter
darkmatter Bot marked this pull request as ready for review September 10, 2026 01:03
@darkmatter
darkmatter Bot force-pushed the sync/upstream-main branch from b250035 to 0c97b1a Compare September 10, 2026 01:18
@darkmatter
darkmatter Bot marked this pull request as draft September 10, 2026 01:28
@darkmatter
darkmatter Bot marked this pull request as ready for review September 10, 2026 03:41
@darkmatter
darkmatter Bot force-pushed the sync/upstream-main branch from 0c97b1a to 33228fe Compare September 10, 2026 06:01
@darkmatter
darkmatter Bot marked this pull request as draft September 10, 2026 06:02
@darkmatter darkmatter Bot changed the title Sync upstream paradigmxyz/centaur main (8b557d4) chore: sync upstream paradigmxyz/centaur main (33228fe) into darkmatter/centaur Sep 10, 2026
@darkmatter
darkmatter Bot marked this pull request as ready for review September 10, 2026 06:16
* feat: add info command to centaur MCP tool

* fix: preserve legacy MCP skill guidance

* refactor: remove centaur info cache

* fix: correct centaur info command discovery

* fix: reject non-typer info entrypoints clearly

* fix: complete centaur info discovery metadata

* docs: fix centaur run example

* refactor: use CLI help for tool discovery
@darkmatter
darkmatter Bot force-pushed the sync/upstream-main branch from 948d99e to 33228fe Compare September 10, 2026 19:02
@darkmatter
darkmatter Bot marked this pull request as draft September 10, 2026 19:03
@darkmatter darkmatter Bot changed the title chore: sync upstream paradigmxyz/centaur main (33228fe) into darkmatter/centaur chore: sync upstream main (33228fe) into darkmatter/centaur Sep 10, 2026
@darkmatter darkmatter Bot changed the title chore: sync upstream main (33228fe) into darkmatter/centaur chore: sync upstream main (0abcee5) into darkmatter/centaur Sep 10, 2026
@darkmatter darkmatter Bot changed the title chore: sync upstream main (0abcee5) into darkmatter/centaur Sync upstream paradigmxyz/centaur main (0abcee5f) Sep 10, 2026
@darkmatter
darkmatter Bot marked this pull request as ready for review September 10, 2026 20:22
@darkmatter
darkmatter Bot force-pushed the sync/upstream-main branch from a40eb04 to 22a94df Compare September 10, 2026 21:02
@darkmatter
darkmatter Bot marked this pull request as draft September 10, 2026 21:02
@darkmatter darkmatter Bot changed the title Sync upstream paradigmxyz/centaur main (0abcee5f) chore: sync upstream main (22a94dfe) into darkmatter/centaur Sep 10, 2026
* feat: default company context output to JSON

* test: remove broad company context output test
* feat: advertise tool skill associations

* feat: merge repository and console skill catalogs

* fix: tolerate malformed tool skill metadata

* chore: restore sandbox system prompt

* fix: preserve shadowed console skills

* refactor: simplify merged skill catalog

* refactor: move skill guidance into tool help

* feat: add skill lookup guidance to MCP instructions

* docs: link tool help to relevant skills

* docs: leave vlogs help unchanged
* fix: steer active codex block turns

* test: reuse codex app-server fixture

* test: cover queued codex block turns
* fix: require MCP catalog search

* refactor: split MCP v2 bootstrap tools

* refactor: make MCP builtin dispatch explicit
* fix: clarify MCP catalog discovery guidance

* test: remove MCP catalog guidance test
* feat: default Granola output to JSON

* test: remove unrelated Granola raw output coverage

* test: remove Granola CLI coverage
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants