Skip to content

Eason0729/copilot-db

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Copilot DB

Copilot DB is an educational DBMS, never use in production 😄

client screenshot

TLDR

I saw Building a C compiler with a team of parallel Claudes from antropic's blog. So I want to see if I can build and few-shot a plan.md with copilot.

So the workflow of Copilot DB is like:

  1. Generate a plan.md by discussing ChatGPT(I acutally use my ChatGPT Wrapper).
  2. Iteratively Improve `plan.md, either manually or tell ChatGPT to fix it(I use mixed of two).
  3. Open copilot cli, tell copilot Implement the whole project(@plan.md)

However, I cheat on it by telling copilot Modify cli client to have fancy DuckDB like tui. after the first shot. Its client tui is so ugly.

Improvement History

  1. I generate a plan to implement a more complete DBMS with MVCC/fuzzy checkpoint/common SQL, and it fail.
  2. I suspect it fail because fuzzy checkpoint is hard(MVCC seems fine), modify the plan to just use 2PL for transaction(abort later transaction on conflict), and it fail.
  3. Frustrated, I remove more feature from plan.md, don't use anything fancy, only support CREATE/INSERT/SELECT/DELETE

About

Copilot DB is an educational in-process relational database management system built in Rust using AI-assisted development.

Topics

Resources

Stars

Watchers

Forks

Contributors

Languages