Skip to content

feat:Time-Travel History and Commit Explorer (Prototype)#17

Open
Bodeayman wants to merge 2 commits into
istSOS:mainfrom
Bodeayman:prototype/commit-explorer
Open

feat:Time-Travel History and Commit Explorer (Prototype)#17
Bodeayman wants to merge 2 commits into
istSOS:mainfrom
Bodeayman:prototype/commit-explorer

Conversation

@Bodeayman
Copy link
Copy Markdown

@Bodeayman Bodeayman commented Mar 23, 2026

Hello, I have made a small prototype that shows my understanding for Idea 3 implementation

Features

1. New History Page

I created a new page at /history where you can see the history of everything in the system. I also added a link to it from the Home page so it's easy to find.

2. Time-Travel Querying

You can now check how things looked in the past. There are three modes:

  • Current: See the state of a group of entities in the current time
  • As-Of: See the state of a group of entities (like all Sensors) at a specific date and time.
  • Range (Versions): See a list of all changes (commits) that happened between two dates, therefore showing how its meta data changed over time. "It shows currently the commits and the snapshot of each entity at that time, cause the one entity could have multiple versions and multiple snapshots"

3. Support for all STA Entities

The explorer works with all the main SensorThings entities:

  • Things
  • Sensors
  • Datastreams
  • Locations
  • Observed Properties
  • FOIs

4. Commit History

Each entity has a commit history that shows all changes made to it over time, including the author, action type, commit message, field-level diff between versions, and an activity graph similar to Github's contriubtion view.

Technical Details

  • Added the feature under ui/features/history/.
  • Created a new route in ui/app/history/page.tsx.

Add at the end:

"Note: This prototype uses mock data.
During the process of the development for GSoC the real integration will use

  • GET /Entity(id)?$as_of=....&$expand=Commit
  • GET /Entity(id)?$from_to=...&$expand=Commit
  • GET /Entity(id)/activity?period=week
    That's not all Endpoints that will be used
    "

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.

1 participant