Gabriel Brown
|
bce6769277
|
fix(convex): order spoonCommits by committedAt via index so bounding keeps newest
|
2026-07-11 14:41:31 -04:00 |
|
Gabriel Brown
|
9067d16734
|
perf(convex): bound unbounded owner-wide collects on hot paths
|
2026-07-11 14:41:31 -04:00 |
|
Gabriel Brown
|
e4a7f96633
|
fix(sync): don't misclassify plain 403 auth errors as rate limited
|
2026-07-11 14:28:02 -04:00 |
|
Gabriel Brown
|
4769a76274
|
feat(sync): add Octokit retry/throttle and rate-limited status
|
2026-07-11 14:28:02 -04:00 |
|
Gabriel Brown
|
f1dbf8cd50
|
feat(webhooks): add signature-verified GitHub webhook route
|
2026-07-11 14:18:55 -04:00 |
|
Gabriel Brown
|
68dc7bb4ee
|
feat(spoons): find owned spoons by pushed repo (indexed)
|
2026-07-11 14:12:30 -04:00 |
|
Gabriel Brown
|
f7c3aa6482
|
feat(github): index connections by installation + status mutation
|
2026-07-11 14:07:57 -04:00 |
|
Gabriel Brown
|
18cb424b99
|
feat(webhooks): add GitHub webhook signature verifier
|
2026-07-11 14:04:32 -04:00 |
|
Gabriel Brown
|
675d6b2316
|
fix(sync): use stable dedup key and skip threads when head unresolved
|
2026-07-11 14:00:16 -04:00 |
|
Gabriel Brown
|
0e894f8e67
|
refactor(threads): dedup maintenance threads by stable key via index
|
2026-07-11 14:00:16 -04:00 |
|
Gabriel Brown
|
c3f73ac656
|
feat(sync): add deterministic maintenance-thread dedup key
|
2026-07-11 13:48:49 -04:00 |
|
Gabriel Brown
|
4684617fed
|
fix(sync): paginate compare and resolve real head SHA
|
2026-07-11 13:44:10 -04:00 |
|
Gabriel Brown
|
c8200a6747
|
feat(sync): add resolveBranchHead to fetch branch tip SHA
|
2026-07-11 13:39:36 -04:00 |
|
Gabriel Brown
|
702e53a4ba
|
feat(web): per-thread/per-spoon runtime picker and Anthropic OAuth provider profile
|
2026-07-11 11:20:33 -04:00 |
|
Gabriel Brown
|
6ec2e51312
|
feat(backend): migration to retire openai_direct runtime
|
2026-07-11 11:05:12 -04:00 |
|
Gabriel Brown
|
c0f107c4cf
|
feat(backend): queue-time runtime/profile validation; job.runtime authoritative in worker
|
2026-07-11 10:58:05 -04:00 |
|
Gabriel Brown
|
70396feccc
|
feat(backend): add claude runtime, anthropic OAuth auth kind, and profile→runtime derivation
|
2026-07-11 10:42:48 -04:00 |
|
Gabriel Brown
|
613a6c8a2d
|
fix(agent-jobs): narrow recovery-cron guard so abandoned stops still recover
|
2026-07-10 18:34:15 -04:00 |
|
Gabriel Brown
|
697fb7286d
|
fix(agent-jobs): recovery cron skips already-terminal jobs
|
2026-07-10 18:27:53 -04:00 |
|
Gabriel Brown
|
60dd5d3836
|
fix(agent-jobs): stop heartbeat from resurrecting terminated jobs
|
2026-07-10 18:13:28 -04:00 |
|
Gabriel Brown
|
ac68484059
|
fix(worker): make cancellation teardown failure-safe
|
2026-07-10 18:04:40 -04:00 |
|
Gabriel Brown
|
470af043fa
|
fix(agent-jobs): add heartbeat cancel and stale recovery
|
2026-07-10 18:03:45 -04:00 |
|
Gabriel Brown
|
00f96a126e
|
fix(agent-jobs): close maintenance jobs after decision
|
2026-07-10 17:35:33 -04:00 |
|
Gabriel Brown
|
1e1435e656
|
fix(agent-jobs): recover failed claim decryption
|
2026-07-10 17:26:17 -04:00 |
|
Gabriel Brown
|
cf45404b7d
|
fix(agent-jobs): validate claims before claiming
|
2026-07-10 17:26:17 -04:00 |
|
Gabriel Brown
|
ed21126eea
|
fix(app): add friendly not-found handling
|
2026-07-10 17:24:32 -04:00 |
|
Gabriel Brown
|
906f906ad3
|
fix(backend): use generated import extension
|
2026-07-10 17:15:34 -04:00 |
|
Gabriel Brown
|
bdb2964e34
|
fix(sync): honor per-spoon auto-sync settings
|
2026-07-10 17:15:20 -04:00 |
|
Gabriel Brown
|
020ffbfb23
|
fix(worker-auth): unify token checks and bind job environment
|
2026-07-10 17:06:33 -04:00 |
|
Gabriel Brown
|
0a4461eaba
|
fix(agent-jobs): prevent terminal status resurrection
|
2026-07-10 16:55:43 -04:00 |
|
Gabriel Brown
|
683fc62129
|
Convex: per-user dotfiles + environment storage (encrypted)
- schema: userDotfiles (one encrypted row per file, HOME-relative path) and
userEnvironment (home username + optional public dotfiles repo + setup command)
- userDotfiles.ts: list/remove/removeDirectory/rename + internal upsert/getRaw
- userDotfilesNode.ts ('use node'): putFile/importFiles/getFileContent (encrypt
/decrypt via secretCrypto) + getEnvironmentForJob (worker-token, returns the
owner's decrypted dotfiles + repo/setup config)
- userEnvironment.ts: getMine/updateMine + getRawEnvironmentForJobInternal
- model.ts: deriveHomeUsername + normalizeDotfilePath helpers
|
2026-06-24 09:38:43 -04:00 |
|
Gabriel Brown
|
5567a4be95
|
allow users to delete threads from spoons details page
Build and Push Spoon Images / quality (push) Successful in 2m36s
Build and Push Spoon Images / build-images (push) Successful in 9m21s
|
2026-06-23 16:00:34 -04:00 |
|
Gabriel Brown
|
a6f7ea7f78
|
Clean up old stuff & fix ui errors
Build and Push Spoon Images / quality (push) Successful in 2m22s
Build and Push Spoon Images / build-images (push) Successful in 23m10s
|
2026-06-23 14:57:05 -04:00 |
|
Gabriel Brown
|
d207b8b0b8
|
Add features & update project
Build and Push Spoon Images / quality (push) Successful in 1m41s
Build and Push Spoon Images / build-images (push) Successful in 7m4s
|
2026-06-23 02:06:58 -04:00 |
|
Gabriel Brown
|
fe72fc2957
|
Add features & update project
|
2026-06-23 01:46:08 -04:00 |
|
Gabriel Brown
|
206b64176b
|
Move to threads based system.
|
2026-06-22 10:37:26 -04:00 |
|
Gabriel Brown
|
4114d5595c
|
Update stuff
Build and Push Next App / quality (push) Successful in 1m21s
Build and Push Next App / build-next (push) Successful in 3m34s
|
2026-06-22 00:41:51 -05:00 |
|
Gabriel Brown
|
2e13febfc7
|
Update stuff
Build and Push Next App / quality (push) Successful in 1m24s
Build and Push Next App / build-next (push) Successful in 3m36s
|
2026-06-21 23:49:08 -05:00 |
|
Gabriel Brown
|
b16cd9e2f7
|
Update stuff
Build and Push Next App / quality (push) Successful in 1m34s
Build and Push Next App / build-next (push) Successful in 3m22s
|
2026-06-21 23:22:05 -05:00 |
|
Gabriel Brown
|
112fd55ea7
|
Update stuff so we can pass build hopefully
Build and Push Next App / quality (push) Successful in 1m32s
Build and Push Next App / build-next (push) Successful in 42s
|
2026-06-21 22:32:02 -05:00 |
|
Gabriel Brown
|
b9c13b944f
|
Update stuff so we can pass build hopefully
Build and Push Next App / quality (push) Failing after 43s
Build and Push Next App / build-next (push) Has been skipped
|
2026-06-21 21:52:37 -05:00 |
|
Gabriel Brown
|
efb0237145
|
Update stuff so we can pass build hopefully
Build and Push Next App / build-next (push) Has been cancelled
Build and Push Next App / quality (push) Has been cancelled
|
2026-06-21 21:51:41 -05:00 |
|
Gabriel Brown
|
c33d3cc02d
|
Update stuff so we can pass build hopefully
Build and Push Next App / quality (push) Failing after 39s
Build and Push Next App / build-next (push) Has been skipped
|
2026-06-21 21:48:03 -05:00 |
|
Gabriel Brown
|
750c3e7923
|
Update stuff so we can pass build hopefully
Build and Push Next App / quality (push) Failing after 57s
Build and Push Next App / build-next (push) Has been skipped
|
2026-06-21 21:28:57 -05:00 |
|
Gabriel Brown
|
2dfa97ee4f
|
Add agent workflows & stuff
Build and Push Next App / quality (push) Failing after 48s
Build and Push Next App / build-next (push) Has been skipped
|
2026-06-21 21:15:15 -05:00 |
|
Gabriel Brown
|
cf7ff2ee4e
|
Initial commit for project Spoon!
Build and Push Next App / quality (push) Failing after 45s
Build and Push Next App / build-next (push) Has been skipped
|
2026-06-21 17:52:02 -05:00 |
|