Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Basic Local Recording #2

Closed
schacon opened this issue Feb 6, 2023 · 0 comments
Closed

Basic Local Recording #2

schacon opened this issue Feb 6, 2023 · 0 comments
Assignees

Comments

@schacon
Copy link
Member

schacon commented Feb 6, 2023

The client needs to record everything happening in the working directory. We decided this would be via git commits of the state of the working tree (tracked and untracked files) along with metadata of the crdt deltas from the last tree to this one.

Each commit will happen when there is at least 5 minutes of no changes, or every hour at maximum. We will also record metadata about the session.

The tree structure linked to by each commit will look like this:

- wd/
   - README.md
   - lib/
     - config.rb
   [etc]
- session/
  - meta/
    - session-start (timestamp)
    - session-last (timestamp)
    - branch (branch name)
    - commit (last commit sha) 
  - deltas/
    - README.md (crdt data, with git blob SHA as base)
    - lib/
      - config.rb (crdt data)  

This should be done by a Rust watcher process per project, spawned and managed by the client.

@schacon schacon added this to the MVP - Internal Daily milestone Feb 6, 2023
@schacon schacon changed the title Local Sync Basic Local Recording Feb 6, 2023
@schacon schacon assigned schacon and ngalaiko and unassigned schacon and ngalaiko Feb 6, 2023
@schacon schacon closed this as completed Feb 21, 2023
mtsgrd added a commit that referenced this issue Mar 10, 2024
- converts remaining arrow functions to named functions
mtsgrd added a commit that referenced this issue Mar 10, 2024
- converts remaining arrow functions to named functions
Caleb-T-Owens pushed a commit that referenced this issue May 16, 2024
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

No branches or pull requests

2 participants