Skip to content

Project Sprints 2026 10 17

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

Sprint planning delivery — 2026-10-17

The sprint/backlog lifecycle and core reporting implementation is accepted on MicroK8s Helm 217. B-451/B-452 and the full Jira/JSM programme remain in progress. User and API guide.

Delivered

  • Persistent planned/active/closed sprint lifecycle; names, goals and UTC windows; parallel sprints; transactional carry-over to backlog or another sprint.
  • Paged backlog and sprint history; bulk assignment, drag ranking and keyboard Move up; restore originating view/page after save. Sprint-filtered existing board/list and REST work-item search.
  • Snapshot-backed burndown, burnup, work breakdown, scope history and last-ten-sprint velocity. Units remain separate; missing estimates are disclosed; pre-completed work does not inflate delivered velocity.
  • Parent/subtask inheritance without duplicate estimates; finished parents with open subtasks block sprint closure.
  • Closed snapshots survive later item edits, moves and deletion. API membership/events/report/velocity interfaces follow tenant/project scopes and permissions, with idempotent creation and explicit bounds.
  • sprint, openSprints(), closedSprints() and futureSprints() in the shared query engine, including nested subtasks through the current hierarchy.
  • Fixed dark-theme select arrows tiling across controls: generated dark rules now preserve background image layout. Mobile chart labels remain outside scaled SVGs; overflowing tables are keyboard-focusable.
  • Reproduced and fixed stale-request authorization after a private-project move. Update, deletion and work-log commands reject the stale project after locking; sprint mutations recheck permissions under that lock. Scalar refresh preserves pending version links.

Verification

Gate Result
Final full default suite 2,095 passed, 179 opt-in skipped, followed only by syntax-equivalent whitespace cleanup.
PostgreSQL 16 passed, including existing approval/MFA/work-log/search transactions, sprint reassignment/start/closure races, the update/delete/worklog private-project move interleaving and migration downgrade/upgrade.
Browser/accessibility 14 project/search/sprint cases passed; final sprint-only 4 cases rerun after final changes. Desktop/phone, light/dark; creation, assignment, ranking, start, report, completion, history browsing, exact labels and no script/axe/reflow failures.
Focused functional/localization 188 passed before the last return-page refinement; the full final suite covers the final source.
Static/configuration Ruff, JavaScript syntax, migration expand policy, generated locale/interface catalogs, generated dark-theme check, Helm lint, whitespace and wiki link checks pass.

The first combined PostgreSQL run exposed pending version links discarded by a broad refresh; explicit scalar refresh corrected it and has SQLite/PostgreSQL regressions. Browser checks exposed implicit select naming and a non-focusable mobile scroll region; explicit labels and focusable regions corrected both. Visual inspection exposed tiled dark select arrows. The wide API-coverage gate rejected a generic action path; lifecycle routes are now explicit and documented. All final gates pass.

A fresh-install schema and a real PostgreSQL downgrade to 0129 then upgrade to 0130 passed. No 500-user/10,000-item sprint/report load rehearsal was run, and new native iOS sprint screens remain outside this implementation. Commercial availability/support/storage guarantees are not implied.

Live acceptance

  • Candidate cand-sprint-final-20261017, base/chart 1.113.50; no version edit, GitHub publication or hosted pipeline.
  • Immutable image localhost:32000/serviceops-server@sha256:27130bd77a8fbf7e18347687c48ccb59cd0702c1792c91ae0c3aa0afacaabe9b.
  • All 44 changed runtime/model/template/static/migration source hashes match the tested source in the running image.
  • Schema 20261017_0130, 165 public tables, at least 487 tickets and preserved database/uploads/backups PVC identities.
  • Original pre-migration backup serviceops-sprint-backup-20261017:/backups/serviceops-20261017T092814Z.dump restored 162 tables, 487 tickets and 0129 into a scratch database before migration, then removed the scratch database.
  • Web, outbox, events and AI workers ready; retained Helm health test, health/readiness, public OpenAPI/API, protected website Access redirect and recent new-pod logs pass.
  • UI and concurrency tests use disposable fixtures. Live acceptance verifies runtime/source/schema/storage; no production ticket or work item was created for QA.

Acceptance evidence · Source hashes

Interface previews

Sprint planning

Daily sprint report

Phone planning / dark · Phone report / dark

The final source cleanup changed only trailing whitespace in the API specification. The Python syntax-tree hash is identical to the tested candidate; Ruff, compilation and whitespace checks pass. Final Helm 217 used a second fresh backup serviceops-sprint-clean-backup-20261017:/backups/serviceops-20261017T095433Z.dump, restored 165 tables/487 tickets/head 0130, and repeated live acceptance. Formatting equivalence.

Clone this wiki locally