Thanks to visit codestin.com
Credit goes to github.com

Skip to content

docs: fix chat status names and auto-archive behavior claims - #28570

Merged
nickvigilante merged 2 commits into
mainfrom
vigilante/docs-722-fix-nonexistent-chat-statuses-and-auto-archive
Aug 26, 2026
Merged

docs: fix chat status names and auto-archive behavior claims#28570
nickvigilante merged 2 commits into
mainfrom
vigilante/docs-722-fix-nonexistent-chat-statuses-and-auto-archive

Conversation

@nickvigilante

Copy link
Copy Markdown
Contributor

Two Coder Agents pages describe chat statuses that no longer exist and attribute auto-archive to the wrong subsystem. The valid status set is waiting, running, error, requires_action, interrupting.

  • architecture.md: a submitted prompt marks the chat running, not pending; there is no queued state.
  • chat-auto-archive.md: the excluded status set is running, interrupting, requires_action.
  • chat-auto-archive.md: the job runs in the chatd chat worker on an hourly tick, not in dbpurge.
  • chat-auto-archive.md: documents the dashboard control at AI Settings > Coder Agents > Lifecycle, and the 25-title cap on the digest notification.

API paths on the auto-archive page are intentionally untouched; a separate PR fixes the /api/v2 to /api/experimental drift.

Linear: DOCS-722 https://linear.app/codercom/issue/DOCS-722

Analysis evidence
  • codersdk/chats.go: ChatStatus constants are waiting, running, error, requires_action, interrupting. No pending, paused, or completed.
  • coderd/x/chatd/chatstate/transitions.go: sendMessageQueueAndSetStatus and the send paths apply database.ChatStatusRunning, so a submitted prompt is running immediately. docs/ai-coder/agents/tasks-to-chats-migration.md already states that chats have no separate queued state.
  • coderd/database/queries/chats.sql, GetAutoArchiveInactiveChatCandidates: status NOT IN ('running', 'interrupting', 'requires_action'), plus archived = false, pin_order = 0, parent_chat_id IS NULL.
  • coderd/x/chatd/auto_archive.go: archiveLoop runs from coderd/x/chatd/worker.go on opts.ArchiveInterval; coderd/x/chatd/options.go sets defaultArchiveInterval = time.Hour. Nothing in dbpurge performs chat auto-archive.
  • coderd/x/chatd/auto_archive.go: chatAutoArchiveDigestMaxChats = 25; buildAutoArchiveDigestData truncates to 25 titles and reports the remainder as additional_archived_count.
  • coderd/x/chatd/options.go: defaultArchiveBatchSize = int32(1000), so the existing "up to 1,000 root chats" claim stands.
  • site/src/pages/AISettingsPage/LifecyclePage/LifecyclePageView.tsx mounts AutoArchiveSettings; site/src/modules/management/AISettingsSidebarView.tsx places the Lifecycle sub-nav item under Coder Agents.

Validation: pnpm run format-docs (no changes) and pnpm run lint-docs (0 errors).

Generated by Coder Agents on behalf of @nickvigilante.

@linear-code

linear-code Bot commented Aug 25, 2026

Copy link
Copy Markdown

DOCS-722

@github-actions

github-actions Bot commented Aug 25, 2026

Copy link
Copy Markdown
Contributor

Docs preview

Check off each page once it's been reviewed. If a page changes in a later push, its checkbox clears automatically so it gets a fresh look. Pages not yet wired into the docs navigation aren't listed here.

@nickvigilante
nickvigilante marked this pull request as ready for review August 25, 2026 16:42

Copy link
Copy Markdown
Contributor Author

CI note for @nickvigilante: Pixel / Review reports 1 failed visual test (https://pixel.coder.com/@coder/coder/builds/11425). This check runs on the changed paths (rendered docs), so the diff likely reflects this PR's intended text changes and needs a human approval on the Pixel dashboard rather than a code fix. Generated by Coder Agents on behalf of @nickvigilante.

Comment thread docs/ai-coder/agents/platform-controls/chat-auto-archive.md Outdated
Comment thread docs/ai-coder/agents/platform-controls/chat-auto-archive.md Outdated
Comment thread docs/ai-coder/agents/platform-controls/chat-auto-archive.md Outdated
Comment thread docs/ai-coder/agents/architecture.md
Clarify language regarding chat auto-archive eligibility and behavior.
@nickvigilante
nickvigilante merged commit 8afd002 into main Aug 26, 2026
29 checks passed
@nickvigilante
nickvigilante deleted the vigilante/docs-722-fix-nonexistent-chat-statuses-and-auto-archive branch August 26, 2026 15:36
nickvigilante added a commit that referenced this pull request Sep 8, 2026
…le (#28594)

Agent-authored docs PRs kept leaking implementation detail into
user-facing pages: chat status enum values and `root_chat_id` on the
auto-archive page (#28570, flagged by reviewers), and RBAC resource
names and response fields in the first revision of #28482. The
correction pattern was the same each time: state the behavior in the
reader's terms.

This encodes that pattern as one canonical rule with citations in every
file that carries the exact-values instruction:

- `docs/.style/content-guidelines.md`: new guiding principle "Evidence
justifies a claim; it does not belong in the claim". The test is scoped
to the task the page documents, with a first-match ladder: exact value
where the reader types or receives it, visible product wording where the
screen shows it, plain reader's-terms prose otherwise. An identifier set
described as a set resolves at the lowest rung any member reaches.
Stripped identifiers are named (file and symbol) in the PR discussion as
a best-effort pointer for the reviewer. Cross-linked with
verify-exact-values, describe-current-version, the routing table, and
word-choice. Also repairs a pre-existing broken feature-stages link.
- `docs/.style/style-guide/word-choice.md`: the internal-references
section notes that implementation identifiers follow the (conditional)
canonical rule, covering the prose-edit route that AGENTS.md sends to
the prose style guide.
- `.claude/docs/DOCS_STYLE_GUIDE.md`: the Accuracy Standards section
head and Key Principles item 2 carry the same qualifier, since this
always-loaded file is where agents get the unqualified exact-values
instruction.
- `.claude/skills/write-docs/SKILL.md`: workflow step 1 marks copied
identifiers as verification inputs with a forward link; citation-only
"Evidence versus claim" section; matching anti-pattern bullet and a
checklist item that defers the stripped-identifier disclosure to the
canonical rule.
- `.claude/skills/doc-check/SKILL.md`: "Evidence versus claim" check
scoped to identifiers the change adds or touches, working from the diff
(doc-check does not police the disclosure, which it cannot see);
pre-existing violations on untouched pages are informational only.

The motivating page (`chat-auto-archive.md`) was fixed separately in
#28570 (DOCS-722, merged). Corpus sweep for other violations: DOCS-730.
Lint and link coverage for the `.claude` and `docs/.style` trees:
DOCS-729.

Linear: DOCS-728 https://linear.app/codercom/issue/DOCS-728

<details>
<summary>CI note (docs-only PR)</summary>

This PR changes only Markdown under `docs/.style/` and `.claude/` (no
`site/src` or other product code).

- The `ci` workflow's docs-relevant jobs pass on the head commit:
`changes`, `gen`, `lint`, `lint-docs`, `fmt`, `offlinedocs`, `required`.
Heavy build/test jobs are correctly skipped for a docs-only change.
(Run: https://github.com/coder/coder/actions/runs/32986743037)
- `Pixel / Review` (frontend visual snapshots) is unrelated to the
changed paths and is treated as an unrelated flake.

</details>

> This PR was created with AI assistance (Coder Agents).
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.

2 participants