logging m1.
This commit is contained in:
parent
88d0fc3642
commit
d528613fef
|
@ -0,0 +1,5 @@
|
|||
Title: Milestones
|
||||
|
||||
The milestone pages track the work done on each milestone.
|
||||
|
||||
* [Milestone 1](/milestones/m1.html)
|
|
@ -0,0 +1,25 @@
|
|||
Title: M1: Basic artifact storage
|
||||
|
||||
### Blobs
|
||||
|
||||
- [X] Proto definition for archive blobs
|
||||
- [X] Database schema for archive blobs
|
||||
- [X] SQL migration (using [sql-migrate](https://github.com/rubenv/sql-migrate))
|
||||
- [X] Go package for archive blobs
|
||||
- [ ] blob store
|
||||
- [ ] syncq
|
||||
- [ ] CLI tool for inserting blobs
|
||||
|
||||
### Artifacts
|
||||
- [ ] What does an artifact look like? Develop the data model.
|
||||
- [ ] Proto definitions for an archive entry
|
||||
- [ ] Database schema for archive entries
|
||||
- [ ] SQL migration
|
||||
|
||||
### Web service
|
||||
- [ ] gRPC service
|
||||
- [ ] HTTP backend that talks to the gRPC service
|
||||
- [ ] HTML frontend with authentication
|
||||
- [ ] (Bonus) CLI tool to interact with the webserver
|
||||
|
||||
|
|
@ -1,12 +1,14 @@
|
|||
Title: 20220223
|
||||
Slug: 20220223
|
||||
Date: 2022-02-23 22:22 PST
|
||||
Modified: 2022-02-23 22:25 PST
|
||||
Modified: 2022-02-23 23:24 PST
|
||||
Category:
|
||||
Tags: journal
|
||||
Authors: kyle
|
||||
Summary: Design work on blobs.
|
||||
|
||||
## Blob structures
|
||||
|
||||
I finished writing out the basic blob database and structure types. The
|
||||
blob was a structure like
|
||||
|
||||
|
@ -30,3 +32,36 @@ type Blob struct {
|
|||
r io.Reader
|
||||
}
|
||||
```
|
||||
|
||||
## Syncing questions
|
||||
|
||||
I have a problem that I'm having difficult reconciling and I'll need
|
||||
to revisit. Let me try to talk my way through it: I plan on running
|
||||
`exod` on my laptop, or rather, I plan on having the ability to run it
|
||||
offline. However, if I want to stash something while my laptop is asleep,
|
||||
that breaks. If I store the repo remotely but make local changes offline,
|
||||
how do I sync it?
|
||||
|
||||
I think the answer to this is to set up a buffer server, something like
|
||||
another sync queue. If a connection fails, I'll add a task on phobos
|
||||
to keep retrying occasionally (with a daily report), this should work.
|
||||
|
||||
The use case I'm thinking of is adding to my exocortex from my phone
|
||||
while traveling, for example. The two modes that I think will work well
|
||||
with this are adding artifacts and adding quick notes.
|
||||
|
||||
A quick note would be a node named something like
|
||||
|
||||
```
|
||||
quick =>
|
||||
2022 =>
|
||||
02 =>
|
||||
23
|
||||
```
|
||||
|
||||
The quick note function will add a new cell to the existing quick note
|
||||
for the day. The idea is that I'll revisit that the next day, or at the
|
||||
end of the day, and integrate those notes into the rest of the exocortex.
|
||||
|
||||
I'm satisfied with this approach for now.
|
||||
|
||||
|
|
|
@ -0,0 +1,29 @@
|
|||
Title: Milestone 1
|
||||
Slug: milestone-1
|
||||
Date: 2022-02-23
|
||||
Modified: 2022-02-23
|
||||
Category:
|
||||
Tags: milestones
|
||||
Authors: kyle
|
||||
Summary: Describe a path to the first "deliverable."
|
||||
|
||||
I'm going to identify milestones for this project. A milestone should
|
||||
provide an incremental, concrete step in the right direction. The end
|
||||
result will be an additional way to interact with the exocortex. For
|
||||
example, the first milestone is an HTTP interface for remotely adding
|
||||
URLs to the exocortex.
|
||||
|
||||
## Goal
|
||||
|
||||
Build a web server that lets me stash URLs (links and PDFs, primarily) to an
|
||||
artifact store.
|
||||
|
||||
## How do I get there?
|
||||
|
||||
I'll split this into three stages: first, developing the blob
|
||||
data structure and management. Then I'll add in support for
|
||||
artifacts. Finally, I can build out the APIs. Following the
|
||||
[functional spec](/specs/functional.html), this will start with a gRPC
|
||||
interface. I can build a web interface on top of this.
|
||||
|
||||
The work is tracked under [M1](/milestones/m1.html).
|
|
@ -0,0 +1,13 @@
|
|||
#!/bin/sh
|
||||
|
||||
set -eux
|
||||
|
||||
MILESTONE_POST="content/pages/milestones/m${1}.md"
|
||||
if [ ! -e "${MILESTONE_POST}" ]
|
||||
then
|
||||
echo "Milestone not found."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
EDITOR="${EDITOR:-gvim}"
|
||||
$EDITOR "${MILESTONE_POST}"
|
2
today
2
today
|
@ -4,7 +4,6 @@ set -eux
|
|||
|
||||
TODAY="$(date +'%Y%m%d')"
|
||||
DATETIME="$(date +'%F %H:%M')"
|
||||
POSTPATH="content/posts/${TODAY}.md"
|
||||
PUBDATE="$(date +'%F %H:%M %Z')"
|
||||
TITLE="$@"
|
||||
if [ -z "$TITLE" ]
|
||||
|
@ -16,6 +15,7 @@ else
|
|||
SLUG="$(echo ${TITLE}|tr [A-Z] [a-z]|tr ' ' '-')"
|
||||
fi
|
||||
|
||||
POSTPATH="content/posts/${SLUG}.md"
|
||||
if [ ! -e "${POSTPATH}" ]
|
||||
then
|
||||
cat <<EOF > ${POSTPATH}
|
||||
|
|
Loading…
Reference in New Issue