Repository navigation
DO NOT MERGE — merge train: 3176,3149,3171,3148 - #3179
Closed
trinity-ability wants to merge 13 commits into
Closed
trinity-ability wants to merge 13 commits into
trinity-ability wants to merge 13 commits into
Conversation
…ive activity line (#3001) The Work card's steps sentence was ruled for ent#525, before #620 put the agent's live activity line on the same card. So an agent that publishes no pipeline showed "Thinking" / "Reading …" with "<agent> doesn't report steps." directly beneath it, and the card contradicted itself. stepsLine() gains `{ activitySeen }`. Once PortalWorkCard has shown a live line on this run, the `none` sentence is withheld (kind `activity`, no text). This is sticky across the 15 s beat gaps and resets for a new run. "Could not be read right now" is unchanged, since it stays true either way, and the sentence still shows for an agent that reports neither stages nor activity. This re-lands the closed #3002 on top of #2972, which rewrote the same row for the chat's one-line card (`reserveLiveRows`, #2964). There, `activity` is silent like `pending`: the reserved row stays, blank and aria-hidden, so the card keeps its shape. stepsLine still returns `who` for the `none` sentence. workStepsActivity.spec.js (mounted): 4 of 8 fail on dev and all pass with the fix. It covers the rule, a live line beside the sentence, suppression between beats with a reset for the next run, and the chat card's reserved row staying blank at h-4. Fixes #3001 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…d pytest jobs as failures dependabot-auto-merge.yml waits on every check-run named build or pytest* and treated any completed non-success conclusion as a failed gate. Since the #2945 tiering every PR carries 'pytest (base, inline fallback)' and 'pytest (push, absolute failures)' as completed/skipped — they run on other events — so the gate answered 'a gating check failed' on every Dependabot PR from mid-September on, with build and pytest (head) green beside them, and the queue filled with unreviewed green patch/minor bumps (3100, 2967, 2965, 2830 merged by hand today). Exempt 'skipped' only. A behavioural test executes the step's script under bash with gh stubbed: skipped+success passes, failure/cancelled/ timed_out/action_required still block. The test skips on a bash without mapfile (macOS /bin/bash 3.2); ubuntu-latest runs it. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Ruled 2026-10-01: the sentence goes, not only beside a live activity line.
Before the first line it read as a fault, and beside "Thinking" / "Reading …"
as the card contradicting itself. A running card now shows the live activity
line, or the stages when the agent publishes them, or nothing.
- stepsLine(steps) returns { kind: 'none', text: '' } for an agent with no
stages. The `activitySeen` option and the name/claim split (`who`), which
existed only for the sentence, are gone.
- PortalWorkCard treats `none` like `pending`. It renders nothing outside the
chat. In the chat's one-line card (`reserveLiveRows`, #2964) the reserved
row stays, blank and aria-hidden, so the card keeps its shape.
- "Steps could not be read right now." stays, since it reports a real failure.
Tests: workStepsActivity.spec.js covers the card before the first line, beside
a live line, between heartbeats, the unknown sentence, and the chat card's
blank h-4 row. Four #2964 and ent#525 tests that asserted the sentence now
assert its absence, with the shape guarantees they protect kept. Restoring
the sentence in stepsLine turns the spec red. Full suite: 244 files, 4,484
tests.
Docs: architecture, feature flow, requirement and user doc updated.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…NTEND_URL is unset (#3170) The backend builds a public link's `url` as `${FRONTEND_URL}/chat/<token>`, and FRONTEND_URL defaults to empty, so the Sharing panel showed and copied a bare `/chat/<token>` path. Resolve it against the page origin in the panel. An absolute `url` or `external_url` passes through unchanged. Closes #3170 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
pytest (head) runs its suite with '|| true' and is green whatever the tests do; the unit verdict is the 'regression diff' job, which the ^build$|pytest filter never selected. With skipped rows no longer failing the gate, a patch/minor bump that breaks unit tests would have auto-merged. New test runs the workflow's own jq filter under real jq. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
`regression diff` needs the pytest jobs, so GitHub creates its check-run only after `pytest (head)` finishes. In that window every gating row is green or skipped, and the gate read "nothing pending" and passed without the unit verdict. A missing `regression diff` row is now pending, and a poll where every row is skipped no longer counts as green. merge-train: mechanical fix on our own PR, per the merge-train note. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
`\s*[:=]?\s*` lets the two adjacent `\s*` split a run of whitespace every way, so classification was quadratic in stderr length (~47s on 200k spaces, inline on the agent server's event loop). `\s*(?:[:=]\s*)?` matches the same strings in linear time. merge-train: mechanical, per the merge-train note on the PR. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
The feature-flow and three code comments still described the removed sentence (the agent-name truncation, "the card says ..."). Comment and doc text only; no behaviour change. merge-train: mechanical, per the merge-train note on the PR. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This was referenced Oct 2, 2026
Merged
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Integration surface for #3176, #3149, #3171, #3148. Never merged; members merge individually once green.
🤖 Generated with Claude Code