Skip to content

Project Search Functions 2026 10 17

Anushka Wijesundara edited this page Oct 18, 2026 · 1 revision

Search history and reporting functions — 2026-10-17

B-450 continuation, accepted on local MicroK8s Helm 214. The complete Jira/JSM programme remains unfinished. The query contract documents exact semantics and outstanding functionality.

Implemented

  • CHANGED for supported single-valued fields, with FROM/TO/BY/BEFORE/AFTER/DURING qualifiers matched against one event. Time ranges normalize to UTC, reject reversed intervals and never reconstruct missing history.
  • All eight start/end day/week/month/year functions, optional calendar increments, real leap-year/month-end arithmetic and explicit invalid-argument errors. Weeks use Monday–Sunday UTC.
  • Personal watched/voted/viewed item collections, released/unreleased version collections, and configured-order latest released/earliest unreleased version selection.
  • Fixed existing offset-bearing date inputs: convert to UTC before reducing to a calendar date.
  • The shared parser powers saved filters, web search and REST. Collection subqueries are tenant-bound; current project access still wraps the whole expression. Tests cover private projects, user identity, wrong function fields/operators, SQL persistence and temporal boundary behavior.

Verification

Gate Evidence
Broad regression 2,071 passed, 170 opt-in skipped before the final scalar-version regression was added.
Final query and localization 130 passed, including all 36 new default cases; final collection is 2,242 tests. Combined runs cover 2,072 distinct passing default cases.
PostgreSQL 3 passed, including collection/history/scalar-version SQL, saved-filter persistence and disposable migration downgrade/upgrade.
Browser and accessibility 4 passed: existing search/save/export journeys at desktop/phone widths, light/dark, with axe. Query extension itself is also exercised through web and REST functional tests.
Static/docs/chart Ruff, compilation, whitespace, generated interface/catalog checks, wiki links and Helm lint pass.

This continuation adds no migration; head remains 20261017_0129. A 500-user/10,000-items-per-project load rehearsal was not run. Browser testing used disposable fixtures; deployed hashes/runtime are verified separately. No production work item or ticket was created for testing. Hosted CI is not claimed.

Live acceptance

  • Candidate cand-functions-20261017, base/chart 1.113.50; no new release or version edit.
  • Immutable image: localhost:32000/serviceops-server@sha256:1cf55f8eb3eb936b984af8c7cd7ea36cadbf7e34e337a8358200bf5e48da7e06.
  • All 32 changed runtime/model/template/migration source hashes match the running image.
  • Web, outbox, events and AI workers ready; health/readiness, schema, retained Helm test, public OpenAPI/API, website Cloudflare Access and recent pod logs pass.
  • 162 tables, at least 487 tickets; PostgreSQL/uploads/backups PVC identities preserved.
  • Fresh backup serviceops-functions-backup-20261017:/backups/serviceops-20261017T090255Z.dump restored 162 tables, 487 tickets and the current head into a scratch database, then removed the scratch database.
  • Existing unrelated code and infrastructure edits preserved. No GitHub commit, push, tag or pipeline execution.

Acceptance evidence · Source hashes

Clone this wiki locally