@random-guys/pro-vcs
v0.25.2
Published
Repo for implementing review requests
Downloads
12
Readme
pro-vcs
Database abstraction to simplify review request workflow
How to install
Run yarn add @random-guys/pro-vcs
How it works
TODO
- [x] Less complex code
- [x] Timestamps
- [ ] Introduction of transactions for better concurrency guarantees
- [ ] Arrange tests
- [ ] True data uniqueness by taking
object_state
into consideration - [ ] proxy
ModelNotFound
errors frominplace
methods toInconsistentState
error
Pending Tests
event.repo
create
- [x] object is in
created
state - [ ]
prohub
is notified - [ ] DB constraints are held
- [x] object is in
createApproved
- [ ] object is in
stable
state
- [ ] object is in
assertExists
- [ ] throws
DuplicateModelError
only when duplicate exists
- [ ] throws
get
- [x] return
frozen
forcreated/updated/deleted
when request is not from owner - [ ] return
stable
objects as is - [ ] patches objects for
updated
owners
- [x] return
byQuery
- same as
get
- [ ] hides
created
objects by default - [ ] shows
created
objects onallowNew
- same as
all
- [ ] same as
get
- [x] same as
byQuery
- [ ] same as
list
- [ ] same as
all
- [ ] same as
update
- [x] updates
created
objects - [x] updates
updated
objects - [x] returns patched object
- [ ] sends patches to
prohub
forcreated
objects - [ ] sends patches to
prohub
forupdated
objects - [ ] throws
InvalidOperation
fordeleted
objects - [x] create a new update for a
stable
object - [ ] send a new event for
stable
objects - [ ] throws
InvalidOperation
for objects not owner by user
- [x] updates
delete
- [ ] sends close event to
prohub
forcreated
objects - [ ] sends close event to
prohub
forupdated
objects - [ ] sends close event to
prohub
fordeleted
objects - [x] undo
updated
objects - [x] undo
deleted
objects - [x] deletes
created
events - [x] creates new
deleted
event forstable
objects - [ ] throws
InvalidOperation
for objects not owner by user
- [ ] sends close event to
merge
- [ ] stabilises
created
objects - [ ] stabilises
updated
objects with the new data. i.e other users can now see the changes - [ ] obliterates
deleted
objects - [ ] throws
InvalidOperation
forstable
objects - [ ] stabilises
created
with additional updates - [ ] stabilises
updated
with additional updates
- [ ] stabilises
reject
- [ ] cleans up
created
objects - [ ] reverts
updated/deleted
objects - [ ] throws
InvalidOperation
forstable
objects - [ ] reverts
updated
with additional updates
- [ ] cleans up
merge.app
- [ ]
onApprove
- [ ]
onReject
- [ ]
onChecks
- [ ]