0
2
grain runs on a Rust server modelled on knotless, without hatk
Draftchadtmiller.com added 250 commits
- 9272691
- 293a885
- fe819be
- 3f01004
- 65710ba
- 7004708
- 295b831
- fdd3523
- 4fad0e6
- 91b0b1c
- 311206f
- 434954c
- 7f472ad
- bb45374
- bcf8f1c
- 1345063
- da947b7
- d7d2ab1
- b981589
- ea052f5
- eb918e9
- 3dce374
- 4fc425c
- cc3e40f
- 801cc65
- 8042129
- 517cde0
- 9aa342e
- 0b1acfa
- d658e39
- cc27c5c
- 09cbafc
- 014f659
- d34481d
- 6855fc6
- 842e047
- e5c697f
- 06fcdf7
- cd804ba
- 1820781
- c3d387d
- 3382059
- a5130fe
- 8707ce6
- 496228d
- 178aa38
- 148d95f
- 97fdfc4
- e34cd53
- ba2916a
- 6afff98
- 4271ae5
- 75f73e6
- 3349f20
- 9144da3
- 98e27d3
- b1cd8c8
- 30c0525
- ca043b0
- e8beadd
- 53ecb2e
- 1a9acf4
- a8136db
- 775480d
- bc8ad41
- b43a3ba
- 3b36741
- 62d922d
- 63a4278
- 8dc5059
- 688ec14
- 7536901
- ac4f109
- 63dc79f
- 8bd6364
- 4909047
- 5b94549
- 62b8e16
- c1132da
- b76c2f8
- 2ce916f
- 11fe40f
- fabd19c
- 45921cd
- ca53899
- e52dbcc
- 16f3b73
- f8f4bb0
- af38c5e
- 59c2388
- 0581bfa
- 92f7c8c
- ff6be0d
- ab3fa56
- 9ab9cdd
- 586d387
- a5b0767
- 7d2bbba
- be67d4b
- 839bd50
- e04e14b
- 103aebd
- f845866
- 9d4b541
- 5b41fdd
- a7a8ce7
- 270ad01
- 852e9b1
- 32b56f7
- 3c2008a
- 8bef4a6
- eea1c93
- da30f44
- 66ad04c
- 1e8d010
- 2f4d04c
- c3bfce3
- d2f1ead
- 3309e01
- bac3050
- aa9c9f7
- 8eed7cc
- 54d51e5
- b3a8785
- 3ee073d
- 06e8bc6
- 091e964
- c385e04
- f70e6a6
- e6eb865
- c3eaf72
- 7761fec
- 6df7d49
- fc5f686
- ccb3d8d
- b74fd63
- e0f3fc5
- 8ec5991
- 9162fb8
- 3af15d9
- a5a9c85
- e2d904a
- c365353
- ea7a7df
- a4376d8
- 1f4da22
- 40b13ea
- f43bd9b
- db0e62d
- 0020382
- 164794a
- f59172c
- ee083ea
- df95ac7
- dba7c9c
- f086377
- 6210e92
- a3dac06
- 421b83b
- 7162529
- 8711907
- d5dc392
- f63abbe
- 865042d
- 42065d0
- 9ba88a1
- 2e66775
- 1caa934
- 67d8d95
- b45225e
- d0b3ee4
- 92c202b
- 2b27db8
- e9fb496
- 5618b72
- 521183a
- 7197135
- d659745
- a196eff
- 66fa278
- 2fabe11
- d071e0b
- 48472f4
- 7d031dc
- c415344
- 4de8a68
- 21e922e
- 8f2a2ce
- b901429
- 4060fd1
- a1884f1
- 6797ea7
- 5be6e69
- 5f5fddc
- bd8a3a0
- 236806f
- 2db06b7
- de6dd09
- bc600f6
- 0362694
- fc53a26
- 6d83971
- 785dbe4
- 678efc7
- 12bc6ea
- 93e66cb
- 7482d4b
- 96c9c58
- aceca64
- cafedc5
- 612a536
- 03a7f0e
- 37667dc
- 427fee0
- 8671056
- 97abdb8
- e270790
- 35d4a6c
- ea6fba3
- 1ebfeab
- 332f80f
- 2c2d8a8
- 7940011
- c5375ff
- 62906a1
- c9bc218
- 9fdd8a5
- c9b7fb4
- 8e53b84
- 8a2e131
- 59ff347
- 54571d1
- 4a82c5b
- 98e1b24
- fde30fe
- 3c1bbc3
- 305319e
- 682d56b
- 20c6a3e
- 64963a7
- d952aa5
- 44539eb
- c2db22d
- 8e73900
- 615d92a
- d4cd85e
- adaa85d
- 7288cc6
- e2347d8
- 2505b65
Some checks were not successful
6 failed
6 failed checks
checkthe head, 2505b6574ef1, conflicts with main at 5ffaad5f85b7 in AGENTS.md, web/static/app-version.json: merge main into it, or rebase it onto main in 0se2ethe head, 2505b6574ef1, conflicts with main at 5ffaad5f85b7 in AGENTS.md, web/static/app-version.json: merge main into it, or rebase it onto main in 0sharnessthe head, 2505b6574ef1, conflicts with main at 5ffaad5f85b7 in AGENTS.md, web/static/app-version.json: merge main into it, or rebase it onto main in 0slexiconsthe head, 2505b6574ef1, conflicts with main at 5ffaad5f85b7 in AGENTS.md, web/static/app-version.json: merge main into it, or rebase it onto main in 0srustthe head, 2505b6574ef1, conflicts with main at 5ffaad5f85b7 in AGENTS.md, web/static/app-version.json: merge main into it, or rebase it onto main in 0stestthe head, 2505b6574ef1, conflicts with main at 5ffaad5f85b7 in AGENTS.md, web/static/app-version.json: merge main into it, or rebase it onto main in 0sPart of a stack of 2
- grain runs on a Rust server modelled on knotless, without hatk
- main

What changes
The standing pull for
feature/rust, kept open as a draft and never queued until the move is done: its checks say whether the whole branch still passes against main as main is now. Each step lands on the branch as a reviewed pull of its own.The plan: a Cargo workspace (
graincore library and CLI,grain-serve,grain-mcp) taking knotless's shape, the SvelteKit app moved toweb/,social.grain.*lexicons in place ofdev.hatk.*, web sessions held by the server and the apps signing in with their own PDS, backfill from hubble's STAR-lite archives, a one-shot import from the old database, and admin through the CLI and MCP.Why
To take hatk out of grain entirely, and run it the way knotless runs.
Shortcomings
Draft until the cutover is ready; the app update gates and
/app-version.jsonship separately, from main, ahead of it.🤖 Generated with Claude Code