Improve collaborator setup UX
This commit is contained in:
@@ -30,6 +30,17 @@ git push
|
||||
The operator keeps a separate checkout so projection never depends on a
|
||||
collaborator's dirty working tree.
|
||||
|
||||
Nice wrapper:
|
||||
|
||||
```sh
|
||||
/Users/virgil/Developer/rta/tmp/markdown-projection-gitea/collaborator-checkout/rta-mock-docs/scripts/project-rta-mock-docs.sh
|
||||
```
|
||||
|
||||
It pulls the projector checkout, checks it is clean, and runs the AFFiNE
|
||||
projection command.
|
||||
|
||||
Manual equivalent:
|
||||
|
||||
```sh
|
||||
git -C /Users/virgil/Developer/rta/tmp/markdown-projection-gitea/projector-checkout/rta-mock-docs pull --ff-only
|
||||
```
|
||||
@@ -52,14 +63,34 @@ nix develop --command bash -lc 'scripts/ops/sync-obsidian-affine.rb \
|
||||
--apply'
|
||||
```
|
||||
|
||||
Expected healthy result:
|
||||
Expected healthy result currently includes five docs:
|
||||
|
||||
```text
|
||||
docs: 3
|
||||
docs: 5
|
||||
mark stale: 0
|
||||
mode: one-way read-only AFFiNE docs
|
||||
```
|
||||
|
||||
## Push-To-Projection Automation
|
||||
|
||||
Pushing to `main` can trigger sync, but it should be implemented as a small
|
||||
projection worker, not as a Gitea container hook.
|
||||
|
||||
Preferred shape:
|
||||
|
||||
```text
|
||||
Gitea push webhook
|
||||
-> RTA projection worker endpoint
|
||||
-> pull projector checkout
|
||||
-> validate clean source
|
||||
-> run projection
|
||||
-> emit logs/receipt
|
||||
```
|
||||
|
||||
This keeps Gitea as Git infrastructure and keeps projection policy in RTA. A
|
||||
server-side Git hook inside the Gitea container would be harder to observe,
|
||||
harder to recover, and too tightly coupled to the packaged app internals.
|
||||
|
||||
## Rule Of Thumb
|
||||
|
||||
If the source repo changes, pull the projector checkout and run projection.
|
||||
|
||||
Reference in New Issue
Block a user