Skip to content

Commit 8fbc6cb

Browse files
authored
Merge pull request #140 from amikos-tech/feature/phase-05-cloud-integration-testing
Phase 5: Cloud Integration Testing (#139 follow-up)
2 parents c33af68 + ea5ff7e commit 8fbc6cb

16 files changed

Lines changed: 1835 additions & 335 deletions

.planning/REQUIREMENTS.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@ Requirements for the current milestone. Each maps to roadmap phases.
3535

3636
### Cloud Integration Testing
3737

38-
- [ ] **CLOUD-01**: Cloud search parity tests cover pagination, IDIn/IDNotIn, document filters, metadata projection, and combined filter scenarios.
38+
- [x] **CLOUD-01**: Cloud search parity tests cover pagination, IDIn/IDNotIn, document filters, metadata projection, and combined filter scenarios.
3939
- [x] **CLOUD-02**: Cloud schema/index tests cover distance space variants, HNSW/SPANN config paths, invalid transitions, and schema round-trip assertions.
4040
- [x] **CLOUD-03**: Cloud array metadata tests cover string/number/bool arrays, round-trip retrieval, and contains/not_contains filter behavior.
4141

@@ -71,7 +71,7 @@ Deferred to future milestones.
7171
| EMB-07 | Phase 4 | Pending |
7272
| EMB-08 | Phase 4 | Pending |
7373
| RERANK-01 | Phase 4 | Pending |
74-
| CLOUD-01 | Phase 5 | Pending |
74+
| CLOUD-01 | Phase 5 | Complete |
7575
| CLOUD-02 | Phase 5 | Complete |
7676
| CLOUD-03 | Phase 5 | Complete |
7777

.planning/ROADMAP.md

Lines changed: 27 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,9 @@ Decimal phases appear between their surrounding integers in numeric order.
1616
- [x] **Phase 2: Collection API Extensions** — Add Collection.fork, Collection.indexingStatus, and cloud feature parity audit.
1717
- [x] **Phase 3: Search API** — Implement the Search endpoint with ranking expressions, field projection, groupBy, and read levels. (completed 2026-03-22)
1818
- [ ] **Phase 4: Embedding Ecosystem** — Add sparse/multimodal interfaces, reranking, new providers, and embedding registry.
19-
- [ ] **Phase 5: Cloud Integration Testing** — Build cloud parity test suites for search, schema/index, and array metadata.
19+
- [ ] **Phase 5: Cloud Integration Testing** — Build cloud parity test suites for search, schema/index, and array metadata. (gap closure in progress)
20+
- [ ] **Phase 6: Documentation Site** — Build a rich documentation site with API surfaces, examples, and feature guides (similar to chroma-go docs).
21+
- [ ] **Phase 7: Working Examples** — Add full working examples for all major features (similar to chroma-go examples/).
2022

2123
## Phase Details
2224

@@ -93,11 +95,12 @@ Plans:
9395
2. Cloud schema/index tests cover distance space variants, HNSW/SPANN config, invalid transitions, round-trip assertions.
9496
3. Cloud array metadata tests cover string/number/bool arrays, round-trip retrieval, contains/not_contains filters.
9597
4. Test suite can run in CI with cloud credentials or be skipped gracefully without them.
96-
**Plans:** 1/2 plans executed
98+
**Plans:** 3/3 plans complete
9799

98100
Plans:
99101
- [x] 05-01-PLAN.md — Schema/index + array metadata cloud tests, mixed-type array client validation
100-
- [ ] 05-02-PLAN.md — Search parity cloud tests (KNN, RRF, GroupBy, batch, pagination, filters, projection, read levels)
102+
- [x] 05-02-PLAN.md — Search parity cloud tests (KNN, RRF, GroupBy, batch, pagination, filters, projection, read levels)
103+
- [x] 05-03-PLAN.md — Gap closure: fix embedding projection assertion and WAL read-level test target
101104

102105
## Progress
103106

@@ -111,4 +114,24 @@ Phase 4 can execute in parallel with Phases 1-3 (independent).
111114
| 2. Collection API Extensions | 2/2 | Complete | 2026-03-21 |
112115
| 3. Search API | 3/3 | Complete | 2026-03-22 |
113116
| 4. Embedding Ecosystem | 0/TBD | Pending ||
114-
| 5. Cloud Integration Testing | 1/2 | In Progress| |
117+
| 5. Cloud Integration Testing | 2/3 | In Progress| |
118+
119+
### Phase 6: Documentation Site
120+
121+
**Goal:** Build a rich documentation site (similar to amikos-tech/chroma-go) covering all library features, API surfaces, and usage examples.
122+
**Requirements**: TBD
123+
**Depends on:** Phases 1-5 (documents features built in earlier phases)
124+
**Plans:** 0 plans
125+
126+
Plans:
127+
- [ ] TBD (run /gsd:plan-phase 6 to break down)
128+
129+
### Phase 7: Working Examples
130+
131+
**Goal:** Add full working examples for all major features, organized by topic, runnable standalone — similar to amikos-tech/chroma-go examples/.
132+
**Requirements**: TBD
133+
**Depends on:** Phases 1-5 (examples demonstrate features built in earlier phases)
134+
**Plans:** 0 plans
135+
136+
Plans:
137+
- [ ] TBD (run /gsd:plan-phase 7 to break down)

.planning/STATE.md

Lines changed: 17 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -2,14 +2,14 @@
22
gsd_state_version: 1.0
33
milestone: v1.5
44
milestone_name: milestone
5-
status: "Phase 03 shipped — PR #139"
6-
stopped_at: Completed 03-search-api-03-03-PLAN.md
7-
last_updated: "2026-03-23T08:38:51.785Z"
5+
status: "Phase 05 shipped — PR #140"
6+
stopped_at: Completed 05-cloud-integration-testing-05-03-PLAN.md
7+
last_updated: "2026-03-23T13:51:04.103Z"
88
progress:
99
total_phases: 10
10-
completed_phases: 8
11-
total_plans: 23
12-
completed_plans: 22
10+
completed_phases: 9
11+
total_plans: 24
12+
completed_plans: 24
1313
---
1414

1515
# Project State
@@ -23,8 +23,8 @@ See: .planning/PROJECT.md (updated 2026-03-17)
2323

2424
## Current Position
2525

26-
Phase: 05 (cloud-integration-testing) — EXECUTING
27-
Plan: 2 of 2
26+
Phase: 05
27+
Plan: Not started
2828

2929
## Performance Metrics
3030

@@ -68,6 +68,8 @@ Plan: 2 of 2
6868
| Phase 03-search-api P01 | 4 | 2 tasks | 12 files |
6969
| Phase 03-search-api P02 | 3min | 2 tasks | 6 files |
7070
| Phase 03-search-api P03 | 90 | 2 tasks | 7 files |
71+
| Phase 05-cloud-integration-testing P02 | 4 | 2 tasks | 1 files |
72+
| Phase 05 P03 | 5 | 1 tasks | 1 files |
7173

7274
## Accumulated Context
7375

@@ -137,10 +139,15 @@ Recent decisions affecting current work:
137139
- [Phase 03-search-api]: SearchResultImpl stores Double scores internally, downcasts to Float on row access per SearchResultRow contract
138140
- [Phase 03-search-api]: RRF and text queryText skipped via Assume in integration tests — server returns 'unknown variant' for $rrf and rejects string values in $knn.query; tests document intended contract
139141
- [Phase 03-search-api]: Wire format keys corrected to '$knn'/'$rrf' (dollar-prefixed) — bare 'knn'/'rrf' keys rejected by Chroma server
142+
- [Phase 05-cloud-integration-testing]: CLOUD-01 search parity tests: GroupBy results via rows() only; ReadLevel WAL uses isolated collection without polling; RRF auto-skipped with Assume.assumeTrue false documenting server limitation; filter matrix 8 sub-scenarios inline; pagination client validation throws IllegalArgumentException before HTTP
143+
- [Phase 05-cloud-integration-testing]: Embedding projection assertion loosened to accept null or [[null]]: server returns [[null]] for unselected embeddings
144+
- [Phase 05-cloud-integration-testing]: WAL read-level test uses isolated 3D collection (col) instead of 4D seedCollection to avoid dimension mismatch
140145

141146
### Roadmap Evolution
142147

143148
- Phase 6 added: Tech Debt Cleanup (DOC-BUG-1, DOC-BUG-2, INFRA-1, INFRA-2, inert assumeMinVersion removal)
149+
- Phase 6 added: Documentation Site — rich docs with API surfaces, examples, and feature guides (similar to chroma-go)
150+
- Phase 7 added: Working Examples — full runnable examples for all major features (similar to chroma-go examples/)
144151

145152
### Pending Todos
146153

@@ -152,6 +159,6 @@ None.
152159

153160
## Session Continuity
154161

155-
Last session: 2026-03-22T18:35:36.178Z
156-
Stopped at: Completed 03-search-api-03-03-PLAN.md
162+
Last session: 2026-03-23T13:27:48.062Z
163+
Stopped at: Completed 05-cloud-integration-testing-05-03-PLAN.md
157164
Resume file: None

0 commit comments

Comments
 (0)