Skip to content

Phase 17/18: reliability + observability pass#33

Merged
keithah merged 2 commits intomainfrom
feat/reliability-observability-pass
Feb 11, 2026
Merged

Phase 17/18: reliability + observability pass#33
keithah merged 2 commits intomainfrom
feat/reliability-observability-pass

Conversation

@keithah
Copy link
Copy Markdown
Member

@keithah keithah commented Feb 11, 2026

Summary

  • re-scope planning from overengineered durability wording to pragmatic single-replica reliability + observability, including 17-02 and 18-02 execution artifacts
  • reduce write-mode secret-scan false positives by scanning staged additions per file (so removing existing secret-like lines is allowed)
  • improve operator evidence UX with normalized evidence fields and deliveryId-oriented runbook/smoke templates

Verification

  • bun test
  • bunx tsc --noEmit

Rename Phase 17/18 around write-mode reliability and observability, add 17-02/18-02 plans and summaries, and align state/project focus to single-replica pragmatic hardening.
Scan regex secrets against staged additions per file to allow safe secret removals, improve no-change refusal guidance, and normalize evidence/runbook fields for easier deliveryId-based operations.
Copilot AI review requested due to automatic review settings February 11, 2026 17:09
@kodiai kodiai Bot requested a review from a team February 11, 2026 17:09
@keithah keithah merged commit b26b12b into main Feb 11, 2026
5 checks passed
@keithah keithah deleted the feat/reliability-observability-pass branch February 11, 2026 17:12
Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR focuses on improving write-mode reliability (fewer secret-scan false positives) and strengthening observability/operational verification by standardizing evidence log fields and enhancing runbooks/smoke templates.

Changes:

  • Secret scanning now evaluates staged additions per file (allowing removal of existing secret-like content without refusals).
  • Evidence bundle logs now include consistent repo context fields (owner, repoName, repo) for easier correlation.
  • Updated runbooks/smoke docs and added planning artifacts for phases 17/18 execution.

Reviewed changes

Copilot reviewed 16 out of 16 changed files in this pull request and generated 2 comments.

Show a summary per file
File Description
src/jobs/workspace.ts Changes secret-scan implementation to scan staged additions per file; refactors added-line extraction.
src/handlers/review.ts Adds owner/repoName to review evidence bundle logs for better correlation.
src/handlers/mention.ts Adds owner/repoName to write-mode evidence logs; improves refusal UX for write-policy-no-changes.
src/handlers/mention.test.ts Adds regression test ensuring removal of existing secret-like content is allowed.
docs/smoke/xbmc-kodiai-write-flow.md Adds a release evidence capture template for smoke runs.
docs/runbooks/mentions.md Updates evidence bundle fields/outcomes and adds operator query snippets + quick map.
.planning/phases/18-observability-verification/18-02-SUMMARY.md Records Phase 18 Plan 02 execution summary and verification.
.planning/phases/18-observability-verification/18-02-PLAN.md Adds Phase 18 Plan 02 execution plan definition.
.planning/phases/18-observability-verification/18-01-SUMMARY.md Renames Phase 18 naming/summary to observability-verification framing.
.planning/phases/18-observability-verification/18-01-PLAN.md Renames Phase 18 plan metadata and updates dependencies/objective wording.
.planning/phases/17-write-mode-reliability/17-02-SUMMARY.md Records Phase 17 Plan 02 execution summary and verification.
.planning/phases/17-write-mode-reliability/17-02-PLAN.md Adds Phase 17 Plan 02 execution plan definition.
.planning/phases/17-write-mode-reliability/17-01-SUMMARY.md Renames Phase 17 naming/summary to reliability framing.
.planning/phases/17-write-mode-reliability/17-01-PLAN.md Renames Phase 17 plan metadata and updates objective wording.
.planning/STATE.md Updates current phase/progress and completed plan counts to reflect phases 17/18 completion.
.planning/PROJECT.md Updates active milestone wording to emphasize reliability + observability scope.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread src/jobs/workspace.ts
function extractAddedLines(patch: string): string[] {
return patch
.split("\n")
.filter((l) => l.startsWith("+") && !l.startsWith("+++"))
Copy link

Copilot AI Feb 11, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

extractAddedLines filters out any added line starting with +++, which is broader than the diff header it’s trying to exclude (+++ b/<path>). This can drop legitimate added content lines that begin with +++ and potentially let a secret bypass the staged-additions scan. Consider filtering only diff headers (e.g., l.startsWith('+++ ')) or parsing the patch format more robustly.

Suggested change
.filter((l) => l.startsWith("+") && !l.startsWith("+++"))
.filter((l) => l.startsWith("+") && !l.startsWith("+++ "))

Copilot uses AI. Check for mistakes.
Comment thread docs/runbooks/mentions.md
@@ -190,6 +212,22 @@ Common refusal reasons:
- `write-policy-secret-detected`: suspected secret present in staged diff
Copy link

Copilot AI Feb 11, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The runbook still says write-policy-secret-detected is for a “suspected secret present in staged diff”, but the implementation now scans staged additions only (and the error message says “staged additions”). Update this description to avoid misleading operator guidance.

Suggested change
- `write-policy-secret-detected`: suspected secret present in staged diff
- `write-policy-secret-detected`: suspected secret present in staged additions

Copilot uses AI. Check for mistakes.
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