GSoC 2026 - Week 7: Refining the As-Of Experience and Backend Validation

Project: Time-Travel Data Access and Versioning UI for istSOS Web Administration
Organization: OSGeo / istSOS4
Contributor: Bhudev Bhanpuriya
Mentors: Massimiliano Cannata, Daniele Strigaro, Claudio Primerano

I performed the following tasks during this week:

  • Refined the As-Of Observation Graph by making it fully reactive to snapshot changes. The chart now updates correctly when navigating through snapshots using the timeline scrubber, calendar picker, or existence dialog, while using a debounced refetch to avoid unnecessary API requests during continuous scrubbing.

  • Improved the Snapshot chart experience by enforcing a default 7-day observation window, resetting persisted chart state when switching between live and snapshot modes, preserving multi-datastream comparisons across snapshot changes, and providing informative feedback when the selected snapshot window contains no observations.

  • Enhanced the Observation Graph rendering by pinning the x-axis to the queried time window in Snapshot mode and ensuring the snapshot marker is rendered only once, resulting in more consistent visualization for sparse or empty datasets.

  • Identified and fixed a correctness issue in the As-Of existence-state logic, replacing phenomenon-time based checks with transaction-time (commit history) based validation. The implementation now correctly distinguishes between entities that have not yet been created and those that have been deleted, while directing users to the appropriate recovery snapshot.

  • Migrated testing from the local mock adapter to the live istSOS4 backend, validating the complete As-Of workflow against the real API, verifying snapshot behavior, observation retrieval, commit history handling, and existence-state transitions.

  • Performed a complete audit of the As-Of functionality after backend integration and committed all improvements to the existing Pull Request.

Details can be found in:

What do I plan to do next week?

  • Address review comments and feedback received on the As-Of pull request.

  • Continue the frontend implementation of the from_to temporal navigation workflow.

  • Integrate the from_to interface with the backend APIs and refine the user experience based on mentor feedback.

Am I blocked on anything?

No, currently I do not have any blocking issues.

--

Regards,

Bhudev Bhanpuriya (GitHub)