Skip to content

docs: add CLAUDE.md, architecture docs, and /sesh-mode skill#6247

Merged
g-talbot merged 79 commits intomainfrom
gtt/docs-claude-md
Apr 13, 2026
Merged

docs: add CLAUDE.md, architecture docs, and /sesh-mode skill#6247
g-talbot merged 79 commits intomainfrom
gtt/docs-claude-md

Conversation

@g-talbot
Copy link
Copy Markdown
Contributor

Summary

  • Adds CLAUDE.md with development guide, coding standards, known pitfalls, and repo layout
  • Adds docs/internals architecture documentation: ADRs (4 decisions + 10 gap analyses), TLA+ formal specs (ParquetDataModel, SortSchema, TimeWindowedCompaction), verification guides, style references, and compaction architecture
  • Splits CLAUDE.md into universal repo context (auto-loaded) + opt-in /sesh-mode skill for verification-first workflow (TLA+, DST, Stateright)

Combines pomsky PRs #468 and #474.

Stacks on gtt/phase-31-execute (PR #6246).

The split logic (from PR #474)

Stays in CLAUDE.md Moves to /sesh-mode
What CI already enforces What requires human buy-in
Factual repo structure Workflow sequencing
"Don't do X" (pitfalls) "You must do X before Y" (process)
Coding conventions Formal verification requirements
Defensive Rust patterns TLA+, Stateright, DST

Test plan

  • Verify CLAUDE.md references correct paths for this repo
  • Verify docs/internals files are present and readable
  • /sesh-mode skill contains the full verification workflow
  • No code changes — documentation only

🤖 Generated with Claude Code

@g-talbot g-talbot force-pushed the gtt/docs-claude-md branch from 0ee18f5 to b077bf3 Compare March 31, 2026 20:41
@g-talbot g-talbot force-pushed the gtt/phase-31-execute branch from ae409ac to 3eb3316 Compare March 31, 2026 20:41
@g-talbot g-talbot force-pushed the gtt/docs-claude-md branch from 70a48be to d225cc7 Compare March 31, 2026 20:55
@g-talbot g-talbot force-pushed the gtt/phase-31-execute branch 2 times, most recently from c4418dd to aa5ff45 Compare March 31, 2026 21:03
@g-talbot g-talbot force-pushed the gtt/docs-claude-md branch 2 times, most recently from 8d701de to bcdda05 Compare March 31, 2026 21:08
@g-talbot g-talbot force-pushed the gtt/phase-31-execute branch 2 times, most recently from 142ddd6 to 972bd20 Compare March 31, 2026 21:26
@g-talbot g-talbot force-pushed the gtt/docs-claude-md branch from bcdda05 to 0fd7087 Compare March 31, 2026 21:26
@g-talbot g-talbot force-pushed the gtt/phase-31-execute branch 2 times, most recently from 73c90c4 to 44bd6bb Compare March 31, 2026 21:31
@g-talbot g-talbot force-pushed the gtt/docs-claude-md branch from 468ac45 to 1e5722d Compare March 31, 2026 21:31
@g-talbot g-talbot force-pushed the gtt/phase-31-execute branch from 44bd6bb to add1902 Compare March 31, 2026 21:33
@g-talbot g-talbot force-pushed the gtt/docs-claude-md branch from 1e5722d to 9b6c961 Compare March 31, 2026 21:33
@g-talbot g-talbot force-pushed the gtt/phase-31-execute branch from add1902 to d88f67f Compare March 31, 2026 21:40
@g-talbot g-talbot force-pushed the gtt/docs-claude-md branch 2 times, most recently from 06a6296 to 8f1cbde Compare March 31, 2026 21:50
g-talbot and others added 13 commits April 8, 2026 08:02
- Resolve Cargo.lock/Cargo.toml merge conflicts
- P1 (sort column lookup): Already addressed by sort fields tag_ prefix
  fix — sort field names now match Parquet column names
- P2 (window_start at epoch 0): Remove time_range.start_secs > 0 guard
  so window_start is computed for all batches when window_duration > 0

Co-Authored-By: Claude Opus 4.6 (1M context) <[email protected]>
- Resolve writer.rs conflict: keep META-07 self-describing roundtrip test
- P1 (create_timestamp serde): Add #[serde(default)] to
  StoredMetricsSplit.create_timestamp for backward-compatible reads
  of pre-existing file-backed index JSON
- P1 (compaction window overlap): No change needed — Bound::Included
  vs Bound::Excluded already handles half-open interval semantics
  correctly, and the edge case (zero duration) is impossible
- fields.rs: No change — Matt noted it resolves with wide schema rebase

Co-Authored-By: Claude Opus 4.6 (1M context) <[email protected]>
- Resolve postgres.rs conflict: keep check_invariant! macros, add
  window_duration_secs consistency check
- Group setup_dogstatsd_exporter + setup_invariant_recorder into
  single setup_metrics() function (fulmicoton-dd review)
- Rename `id` to `invariant_id` in invariant_recorder (fulmicoton-dd review)

Co-Authored-By: Claude Opus 4.6 (1M context) <[email protected]>
Co-Authored-By: Claude Opus 4.6 (1M context) <[email protected]>
Base automatically changed from gtt/phase-31-execute to main April 8, 2026 19:02
g-talbot and others added 8 commits April 8, 2026 16:22
Reverts c8bf8d7, cafcac5, a088f53 — these are code changes
(delete_metrics_splits error handling, doc comment tweaks) that
don't belong in a docs-only PR. They will land in a separate PR.

Co-Authored-By: Claude Opus 4.6 (1M context) <[email protected]>
This ADR contains company-specific information and should live
in the private fork, not in the upstream quickwit-oss repo.

Co-Authored-By: Claude Opus 4.6 (1M context) <[email protected]>
- Rewrite CLAUDE.md as generic Quickwit AI development guide
- Replace Quickhouse-Pomsky -> Quickwit branding across all docs
- Replace "Datadog" observability references with generic
  "production observability" language
- Remove "Husky (Datadog)" qualifier from gap docs (keep Husky
  citations — the blog post is public)
- Generalize internal knowledge (query rate numbers, product-specific
  lateness guarantees)
- Remove PomChi reference, private Google Doc link
- Add docs/internals/UPSTREAM-CANDIDATES.md for pomsky tracking

Co-Authored-By: Claude Opus 4.6 (1M context) <[email protected]>
- Remove all ClickHouse/ClickStack references from gap docs and ADRs
  (keep Prometheus, Mimir, InfluxDB, Husky as prior art)
- Restore gap-005 Option C (compaction-time dedup) without ClickHouse citation
- Mark /sesh-mode reference in CLAUDE.md as aspirational
- Add aspirational items section to UPSTREAM-CANDIDATES.md tracking
  items described in docs but not yet implemented (TLA+ specs, DST,
  Kani, Bloodhound, performance baselines, benchmark binaries)

Co-Authored-By: Claude Opus 4.6 (1M context) <[email protected]>
UPSTREAM-CANDIDATES.md incorrectly stated TLA+ specs and Stateright
models don't exist. They do (contributed in #6246): ParquetDataModel.tla,
SortSchema.tla, TimeWindowedCompaction.tla, plus quickwit-dst invariants
and Stateright model tests. Updated to accurately reflect that the
remaining aspirational piece is the simulation infrastructure (SimClock,
FaultInjector, etc.).

Also removed the /sesh-mode aspirational entry — it's actively being
used and the underlying specs/models are real.

Co-Authored-By: Claude Opus 4.6 (1M context) <[email protected]>
Prevents GSD planning artifacts from being committed to the repository.

Co-Authored-By: Claude Opus 4.6 (1M context) <[email protected]>
Reverts test env vars (CP_ENABLE_REVERSE_CONNECTION) and
load-cloudprem-ui target — these are pomsky-specific and
don't belong in upstream.

Co-Authored-By: Claude Opus 4.6 (1M context) <[email protected]>
@g-talbot g-talbot force-pushed the gtt/docs-claude-md branch from cc4492e to 4006b20 Compare April 10, 2026 14:18
@g-talbot g-talbot merged commit a92e744 into main Apr 13, 2026
8 checks passed
@g-talbot g-talbot deleted the gtt/docs-claude-md branch April 13, 2026 23:16
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.

4 participants