{"number":339,"title":"Landed proposals listed as recorded; the list pages (#331)","body":"Closes #331 (from the metalgear feedback). `oh proposal list --state landed` timed out on a repository with ~350 proposals because the API projected every proposal again. Landed and closed ones now come from what the row recorded (changes, heads, state, sealing keys), via `load_for_api`, used by the list, the single GET and the PATCH answer; endpoints that need a live projection (file at side, comment placement) still project. The API takes `limit` (newest first) and `oh proposal list --limit N` defaults to 30. Gate: fmt, clippy -D warnings, tests all pass.","author":"andymccall","state":"landed","target":"main","source":{"kind":"bookmark","bookmark":"proposal-list-fast"},"changes":[{"hash":"d7e2c27548078f2ce2a76373feabfe92c097ba0cedb6d6ed76a0e1f4d204f57a","message":"Landed and closed proposals are listed as recorded, not projected again; the list takes a limit (closes #331)","author":{"name":"Andy McCall","email":"mailme@andymccall.co.uk","key":"4cd9916c150f426895a390868c6999314e0ef4955d657f30d2805647c747fc65","account":null,"note":"signed by a key not linked to any account; its owner links it under Settings → Keys (/settings/keys)"},"when_ms":1793033833199,"deps":["0b20f1ec4007b9c864a8cebcb8945898b88c391cc0c6d85f8f58aeb60f685b47","34388e6129637c460252d3a72a4f6baf82b3e9a3bb312c4aead484e1fa8a5756","3571c519ada6813623c872d81fafd38b4c2450e395a10bc5e53c7b6195b2ce03","46b5e2c59c6be7cf63ceafffe1e15a75044144a7bba40e6e48058a91ccccbc80","5c6e92fd8d71f940f4769a1bc71d9461eb4f7f3b3cf118374a62f3b53eab4d09","739a763a558c04cb6e59e66ed47efa071fa5e97b75c38648dfd040da6c249098","a7e6e8e6094c0a836ddde37499e7b44d64db9db4a3404d871eaa92682aea12c6","b5668108487f12dd7f03ba9c52f7b95f82e8aab92c8c14f75cb949e7398a68c2","b64e2537d7028806bc3d1da95b489e1071f40abda62dfbe43d1d038a65115d13","d23464c0ac60f60775ae362f92fa08a4b1413e8b1d89e146c1699944bc109c19","de505df5cf8d527f25f81c64938d8e4ec9a6a631b9eefdf2c335abf7204f8046"],"head":false,"signature":{"status":"valid","key":"f3553ca5b43c392756c46f8b9154b1cc1258ef9d8e239e2f3bfc5a4e11f49914","sealed":true,"revoked":false},"via":{"name":"agent:claude@andymccall","key":"f3553ca5b43c392756c46f8b9154b1cc1258ef9d8e239e2f3bfc5a4e11f49914","scope":"changes,refs,seal","expires_ms":1793034435312,"revoked":false}}],"projected_heads":["021f36a627f32602d06536c414c44f9c7448e2424a05286b46da4804baa53591","0cd118748131b9e7e98a2c9b7b50df8ebcbda337097e6b2d61110408cc4d9b33","1966661b1880eb65b7662730b9e609f06d0cbe16dddba1e9a8be8599f5296079","19c71c828f86cc7dbcdd8d0c8d34d9f470b90a45d4bc384686498305b0f6b33e","1b770a1fecf00ba25f4dec05fffd399e8805234618e48ded335d64c955bb5374","1d9702887eee79babadd1a7aa8314ef4500def25217c5137a4ee5587f8be3db0","20c36ed92b6b052a02ef585998dc7e42b857a014d92920c913f3507ba345a620","260c33b4b6c4d8d23000b3d146fed71ec748a95dc6fc058119ed2a7c1627d31f","2bbdc0268c23bb07c0fd0ea8922eb70e8bfa18da6bb303ec4a59e7ab5dae7fe2","2d58f17e728b4125bbd7b5d2be9c692536e336f53bd3b34dc56f0361b38b50df","317d776c725b16fe9ed5fd849f2fcb21afdd53bdce4d1c1eca038fc90f44e426","32cfb089f5e6a8eede757776fa39cf1fe98594bda3c89cfc867f07d768d7b510","3a01077da29aabb3ce6154e495f4d2064756cdef5094f011eb0da88e1fe60687","3e5cd2eba62654482a1214b1c387ffce03fa802047622660d17878689e42007f","4745b9844987f696f39f21d7036d00f92adec2b9a507e740fdb7bd28f5fd1d72","56a786aa42f1e2a8c6da70e1acbc76edc81a8c746294d06d9c1be6fa6725e2bf","6978fd76a0666e56bc28171db3f8add9e346ebe90497646c92b8ab10c99a28dc","6ff755541a622b944b170f3a83dfb95ecf972a4387dd77ff481a34df28e05e82","72cde3da4176aff69eecc9cc4a625aa277dc22cd4cd5728ab1e18d0646135100","73beb84b202a8785d9caf0bb65e04c2feb6ae60cea0d5779133cba332a033cb8","76f93eaefe451cb3fe2daefccf8fd5b8c3bbb071a030a6876459bcde7ac54664","84e3c09656b2741d9b7f1f9e4772f3fdd4724f85e7da30e517e24db79ed4c3d1","8f0efa0729b02b703ca4caeb29ee53b6acd7c4e2e403f140617b26430d0e8570","92cea629fdf6614fe819c850b117a530402d079bc5dfc690ddacb0fe044fd336","967ef74f6fd9847b2d48a7a20b27bade903fe122f34d4eab7e48efb5242a0020","9991530b4beee381b95233964971965ad66ac833968f4c8f1fdbf4f1c2fb1713","9aee52d392a67323824e269c3f0ffdf4c0e066e2bba44bd4d9204368f3a034a1","9bc6b4720fc12185874a9710b310ddb36d2625cd86d653d23783b960915ef19d","a0dd06b0094eb52d4347f6bde0572de667a0d2cbac5878d9e6928ec3bba09947","a2b29af1ce88b4649df2c55022862b05a3c1079a0a325a5bd4ab6764b473cbd5","a2ef53c5db269fa8bc86bb8abb13bb10ccba916129a301ca8738cb4829ff6680","a7c05940ebc4ba5c73eb14afcc7579680e1cdb53995e464db10d617e055c5d57","ad01845c4bf86859c3072a48277436580de78bbfe6ea6bc85de9b350522bf92b","ae138eea7a71055eed1bdb63b016828e6bbe2de7ff2b8b06a741ebeaa759e950","b951c58734e86e85465b9f0ecc65ea5642d3dedcf5e3ef481ca32c9790c15dfe","bd630386001ed3d0fc0d03c01548c193a2297f90b6fedb00b5883259f9ca1ad0","bd91edeb44f8f318af68521ca74c35ee48f09e1002ce0c5972bc8ac10cea6862","c21ef37dd4a0641cafb7fe4cf430093934e416d10b582d4183d9c30f722f42e5","c2732e07323b52f2491200ad8989352bc6fc6834c4d97a21e550b3abbe0acafb","c33dbd9a0d38f03313995c1259c16adbd34571f06efe1a71438b51783f1d7b36","cefb0ea24511445166d0db129929255276092d452c7832e877235b49fcdc5881","d2077a57b1f9a114ebdee7cf9e95e81f8932ebc82b59b4b126664a6b1941260b","d2c1d6a7d12edeaca968546dc2fde25068f3de0afaee844ff11d5afd514e43eb","d336629ffa906b6783adf44337015e3c3d9d4437a6a4f97734367f903674db51","d4a0043fded4b0533c2f0377373bce57e38279a2b3935cdc62be08123505630b","d7e2c27548078f2ce2a76373feabfe92c097ba0cedb6d6ed76a0e1f4d204f57a","d94449e42718409b41ab98335c6641b2b4429332e8a1cab535e76467509986b4","d9b3b84605a4f30f778d73011e379e8178f33d8d2c6d3d6704c7f5f7e108d5f7","db72849cd22e82e6160e21528548f9766cf4b10867415ce1b2fe177bfa05e71f","dc71378db1dc95169f80a85c58c80bc86dbd44546a90607b3a49297ec2e1843e","df68c58de9471dd2f1eada82669cb2adee804c70fd2507876790c00f10edf73f","e1078e99c5604bb12c431c02dacb6fba8ea2a0515abe39b3accedd23c78af9ac","e15409084ed6de68f460f830d74c15458dcee9ab20a6c8dd39145d04a895d54e","e8534c304744c8c7219c25a9b9cd6ff738ec039f09dfd1af2fb1299d7cae12c3","edcef27575a73e6acece529d1c0d3bb9f3509123de1a2c049ef4c0dd28b38bba","efb51b39db1c38e7b881f05a1ce1c46d09dc3317349df6ebfd24a2c6d12279db","f0f6c2d96b1cbdde9c994fe79244bfc4237f3392fc53c71abc5537085c745353","f59e9680d880b1abc8c0b3ac7efb316c71d0001936e45fae4decc1f4a9829f47"],"projected_state":"736e81065a59669ce587197df8560844301a808e3e260e50613ccd972a37c2a2","conflicted":false,"approvals":[],"landable":false,"blockers":[],"created_ms":1793033847760,"updated_ms":1793041431742,"url":"https://oxygenhub.io/andymccall/oxygenhub/proposal/339","repository_url":"https://oxygenhub.io/andymccall/oxygenhub","source_url":null,"landed":{"by":"andymccall","via":"when its checks passed (set by andymccall)","when_ms":1793041431742},"auto_land":null,"requested_reviewers":[],"labels":[{"name":"gap","colour":"#8592ad","description":"Found by using the platform for real"},{"name":"performance","colour":"#b48cff","description":"Faster or lighter"}]}