Commit Graph
41 Commits
Author SHA1 Message Date
Chris Troutner 2eb86e2d07 Mark Set Bio complete and set next feature to profile picture
Update the P1 backlog and standing specifier briefing for the merged
set-bio task. Add gotcha for the 217-byte profile-text limit vs the
indexer's looser validation.

By specifier.
2026-08-27 08:13:55 -07:00
Chris Troutner e321c7fec7 Revert unrelated specifier model change in swarmforge.conf
The architect review noted this specifier-model switch was left out of the
set-bio merge, but it leaked in with the fast-forward. Restore origin/master
config so the merge stays focused on the set-bio feature.

By specifier.
2026-08-27 08:12:26 -07:00
Chris Troutner ecb6ee7f28 Review and harden set-bio profile-text refactor
Merge refactorer set-bio work: MemoAction config-driven byte-limit and
profile-store reflection, shared ProfileTextPage base for SetBioPage and
SetNamePage, and byte-counting property tests. Harden the shared base with
a test asserting the in-flight flag initializes false.

By architect.
2026-08-27 08:09:02 -07:00
Chris Troutner 9c5767d462 Refactor set-bio to share profile-text action and page bases
Deduplicate the set-bio and set-name action and page-controller layers:
move byte-limit and profile-store reflection into MemoAction via config,
and share a ProfileTextPage base for both page controllers. Add property
tests for byte counting and the bio byte-limit boundary.

By refactorer.
2026-08-27 08:00:58 -07:00
Chris Troutner 01a16769bd Implement Set Bio (0x6d05) client write path
Add Memo set-bio action, Set Bio page controller, Set Bio React view,
account bio display, and acceptance step handlers. Includes unit tests.

By coder.
2026-08-27 07:50:33 -07:00
Chris Troutner fcab46d706 Add Gherkin spec for Set Bio (0x6d05) client write path
By specifier.
2026-08-27 07:44:41 -07:00
Chris Troutner 7e5b704a37 Switching back to deepseek for specifier 2026-08-26 20:55:00 -07:00
Chris Troutner 5926db1913 Mark like-count display complete and set next feature to profile text
By specifier.
2026-08-26 20:52:25 -07:00
Chris Troutner 21373f4d10 Harden and review like-count-display refactor
- Add unit tests to kill all mutation survivors in GetPostThread
  (sort order, missing blockHeight/seen fallbacks, non-string txid).
- Add default-limit and falsy-pagination tests for the client page
  controllers (ProfilePage, RecentFeedPage).
- Refresh mutation manifests and Gherkin acceptance mutation metadata.
- Write durable review report to docs/reviews/like-count-display-summary.md.

By architect.
2026-08-26 20:46:35 -07:00
Chris Troutner c208eb38aa Refactor like-count read side and add property tests
- Reduce GetPostThread.buildThreadNode CRAP from 10 to 5 by extracting
  fetchPostOrNull, loadChildTxids, and compareReplies helpers.
- Add like-count property tests (conservation, round-trip, pagination).
- Update post-height property test for the new likesDb requirement.
- Add client thread-page flatten property test and a small harness.

By refactorer.
2026-08-26 19:55:19 -07:00
Chris Troutner d8160c2750 Merge coder like-count-display implementation
By refactorer.
2026-08-26 19:49:16 -07:00
Chris Troutner 3f5c8f809a Display like counts on feed, profile, and thread
- Add testable RecentFeedPage, ProfilePage, and ThreadPage controllers.
- Wire acceptance handlers for the like-count-display feature.
- Render like counts on the profile page with a read-only LikeButton.
- Add unit tests for the new display page services.

By coder.
2026-08-26 19:48:37 -07:00
Chris Troutner 6114afc209 Merge specifier like-count-display spec
By coder.
2026-08-26 19:37:18 -07:00
Chris Troutner fe0981deb2 Add Gherkin spec for like count display on feed, profile, and thread
By specifier.
2026-08-26 19:36:49 -07:00
Chris Troutner b5e12c709a Mark likeCount read side complete and set next feature
- Update backlog: P1.1 read side is done; P1.2 client display is next.
- Update specifier handoff notes with current HEAD and next action.

By specifier.
2026-08-26 19:14:21 -07:00
Chris Troutner 4bd4b79f6c Add likeCount to psf-memo-db post responses
- Wire likesDb into PostQuery and add buildLikeCountMap().
- Extend pagination helpers to attach like counts to post pages.
- Update ListRecentPosts, ListPostsByAddr, and GetPostThread to
  return likeCount on every post / thread node.
- Add/extend unit tests and acceptance fixture for like counts.

By specifier.
2026-08-26 19:13:59 -07:00
Chris Troutner 7c4633753f Merge coder likeCount-on-posts implementation
By refactorer.
2026-08-26 19:05:18 -07:00
Chris Troutner 0605d73890 Merge specifier and implement likeCount on posts
By coder.
2026-08-26 19:04:55 -07:00
Chris Troutner c016320528 Update specifier handoff notes after like-counts handoff to coder
By specifier.
2026-08-26 18:59:10 -07:00
Chris Troutner 7f14ceb866 Add Gherkin spec for like counts on post responses
- psf-memo-db/specs/like-counts.feature specifies likeCount on
  /posts/recent, /posts/by/:addr, and /posts/:txid/thread.
- Dry-checked with gherkin-parser + gherkin-ir-dry-checker; zero findings.

By specifier.
2026-08-26 18:57:20 -07:00
Chris Troutner 366e4e5a24 Refresh memo.cash feature parity roadmap in specifier briefing and backlog
- Document Cloudflare limitation and Wayback Machine protocol source.
- Audit existing indexer/DB handlers and mark partial vs missing features.
- Re-prioritize backlog into P0-P6 tiers.
- Suggest P1.1 like counts as next spec.

By specifier.
2026-08-26 18:22:03 -07:00
Chris Troutner 69c38d5a36 Updating Docker files for mono repo 2026-08-26 12:05:01 -07:00
Chris Troutner b58f360c89 Note postHeights backfill utility in specifier handoff notes
By specifier.
2026-08-26 11:48:43 -07:00
Chris Troutner 3433516dea Add postHeights backfill utility for existing psf-memo-db deployments
By specifier.
2026-08-26 11:48:32 -07:00
Chris Troutner 2b77b97fcb Mark post-heights-index complete and update handoff notes
By specifier.
2026-08-26 11:43:32 -07:00
Chris Troutner dd59741918 Fix lint errors in ListUseCase unit tests
By specifier.
2026-08-26 11:43:08 -07:00
Chris Troutner 4980eceba2 Merge architect post-heights-index work
By specifier.
2026-08-26 11:42:22 -07:00
Chris Troutner edfa2fd8c0 Fix lint errors in ListUseCase unit test\n\nBy coder. 2026-08-26 11:41:23 -07:00
Chris Troutner a542363d75 Merge architect handoff 30c0949d3f\n\nBy coder. 2026-08-26 11:39:40 -07:00
Chris Troutner 30c0949d3f Harden and review post-heights-index refactor
Architectural review of the refactorer's postHeights index work. Extract a
shared assemblePostPage helper and a ListUseCase base class to remove DRY
duplication in the post-list use cases. Build the gherkin-mutator runner
adapter for psf-memo-db and psf-memo-indexer. Add boundary and tie-break
tests to kill all surviving language mutations across the changed files
(post-query, pagination, list use cases, indexer post handler).

Mutation: all changed source files fully killed. DRY: clean. CRAP <= 6.
Soft Gherkin acceptance mutation documented survivors (see review report).

By architect.
2026-08-26 11:39:12 -07:00
Chris Troutner d5f0b3dc7b Merge refactorer post-heights-index work
By architect.
2026-08-26 11:02:50 -07:00
Chris Troutner 6a8cf6653e Refactor postHeights index code and add property tests
Deduplicate the postHeights query iteration into a shared generator,
extract shared pagination parsing/enrichment, and extract the idempotent
create-if-missing write pattern. Reduces CRAP for the changed post-height
code to <=6 and removes duplicated parse/attach logic across the post list
use cases. Add property tests covering the postHeight key round-trip and
ordering invariants for both the DB and indexer, exposed via a separate
'property' command.

By refactorer.
2026-08-26 11:02:13 -07:00
Chris Troutner fde0086385 Implement postHeights secondary index for efficient pagination
Adds a postHeights LevelDB store written by the indexer and used by
psf-memo-db to paginate recent posts and posts-by-address without full
scans. Includes unit tests and Gherkin acceptance pipelines for both
psf-memo-indexer and psf-memo-db.

By coder.
2026-08-26 10:52:17 -07:00
Chris Troutner 1056a7c302 Update specifier handoff notes with postHeights index gotcha and current HEAD
By specifier.
2026-08-26 10:41:07 -07:00
Chris Troutner 893e5c7513 Merge specifier handoff c13adbf4aa\n\nBy coder. 2026-08-26 10:40:55 -07:00
Chris Troutner c13adbf4aa Add postHeights secondary index specs for efficient post pagination
By specifier.
2026-08-26 10:40:42 -07:00
Chris Troutner 7134979eb8 Reconfigure monorepo for SwarmForge development
- Move specifier-prompt.md to repo root and rewrite it for the monorepo.
- Move specs/feature-backlog.md to root specs/ and update with component scope.
- Add specs/README.md, psf-memo-indexer/specs/README.md, psf-memo-db/specs/README.md.
- Add swarmforge/constitution/articles/monorepo.prompt for shared monorepo rules.
- Update root README.md with repository layout, local dev commands, and SwarmForge info.

By specifier.
2026-08-26 10:23:53 -07:00
Chris Troutner 5a68a42f77 Adding psf-memo-indexer 2026-08-26 09:30:44 -07:00
Chris Troutner 28bde991b5 Adding psf-memo-db 2026-08-26 09:20:10 -07:00
Chris Troutner db4bfb2a57 Adding README 2026-08-26 09:18:14 -07:00
Chris Troutner c168c652de Creating mono-repo from psf-memo-client 2026-08-26 09:10:39 -07:00