Commit graph

23 commits

Author SHA1 Message Date
68ca0ef6e7 feat: foxhop.net support — /attachment/ static view, pandoc standalone fix, figure/figcaption tags, avatar null guard, html5lib body fragment, chaostheory palette in common.css 2026-04-08 15:05:22 -04:00
176be89319 docs: use make migration — never hand-write revision IDs 2026-04-06 14:23:16 -04:00
604c8407ee style: avoid "the", use "our" — writing style rule + sweep 2026-03-31 13:20:22 -04:00
d37c60481d docs: CWE-407 audit — bleach sanitization pipeline and build tools 2026-03-30 08:25:27 -04:00
67483f2b98 ops: operation voyeur — credential opsec protocol 2026-03-29 15:46:07 -04:00
06d70b9e92 docs: never access credentials without explicit instruction 2026-03-28 15:44:13 -04:00
6d1cfff91d Operation Undigg: multi-syntax input, pandoc export, wiki mode, auto-themes.
Phase 1: Pandoc export pipeline — 67 output formats for threads, namespaces, nodes.
Phase 2: Multi-syntax input — accept markdown, HTML, RST, MediaWiki, LaTeX, etc.
Phase 3: Wiki mode — per-namespace toggle, revision tracking, wiki-edit endpoint.
Phase 4: Auto-generated themes — deterministic CSS per namespace, light + dark mode.

Includes unit, integration, and functional tests (95 new, 544 total).
2026-03-10 00:35:51 -04:00
5bcd7df585 Document proxy architecture and domain routing in CLAUDE.md.
Maps which domains go through the edge proxy (142.93.73.64) vs direct to
origin (162.243.167.224). Prevents repeat of the 5-day meta/faq SSL outage
caused by missing proxy blocks.
2026-03-02 15:51:56 -05:00
165aea2ca3 Document related repos and footer duplication in CLAUDE.md. 2026-02-09 07:32:10 -05:00
7c85b6e77e Document theme system and deployment workflow in CLAUDE.md 2026-02-08 15:46:51 -05:00
7575f74837 Add C SDK (rb.h + rb.c) with API download endpoint and namespace settings links. 2026-02-08 11:11:54 -05:00
f9a00708db Add AJAX comment submission with graceful fallback.
Reply forms now submit via fetch() when JS is available, inserting
the new comment into the DOM without a page reload. Falls back to
the traditional POST + redirect when JS is disabled or on any error.
Documents capability-driven presentation practice in CLAUDE.md.
2026-02-07 16:39:59 -05:00
3579c89d4c Replace AI with machine learning in UI labels, docs, and CLAUDE.md 2026-02-02 15:17:59 -05:00
timehexon
6916c92333 Replace "AI" with "machine learning" in CLAUDE.md
Machine learning is what we grow. "AI" is forbidden in all
permacomputer discourse, marketing, & documentation.
2026-02-02 19:57:12 +00:00
66964f736a Add spam prevention, superuser system, and LLM relevance checking
- Thread creation rate limit: 1 per 7 min per user/IP via API
- is_superuser column on User model with alembic migration
- Superusers bypass namespace-scoped is_moderator() checks
- super_fly_required now checks is_superuser instead of hardcoded names
- /topsecret/users admin page to promote/demote superusers
- Spam scoring module with 6 signals (link density, patterns, duplicates,
  new account velocity, IP reputation, content length)
- Hard threshold (0.8) rejects, soft threshold (0.5) holds for moderation
- LLM relevance checking via Hermes (hermes.ai.unturf.com) on every
  message when enabled, including embed mode parent page URL context
- Admin API endpoints: GET /api/v1/admin/namespaces, recent-nodes
- Spam hunting scripts: scan.py, disable_spam.py, promote_superuser.py
- Updated Python client with admin methods
2026-02-02 09:19:16 -05:00
8260897aeb Add node moderation API endpoints and enforce production rules
- PATCH /api/v1/nodes/{id} now accepts disabled, approved, locked fields
- DELETE /api/v1/nodes/{id} for permanent deletion (moderator only)
- Python client: disable_node, enable_node, approve_node, lock_node,
  unlock_node, delete_node methods plus CLI commands
- CLAUDE.md: production rules forbidding direct SQL, mandate API client
- Fix modify_node.py Python 2 remnants (unicode, raw_input)
2026-02-01 21:23:37 -05:00
f0e365fd43 Add GET /api/v1/version endpoint for deploy verification
Returns the git commit hash of the running code. CLAUDE.md
updated to check this endpoint after pushing to confirm
deployment is live.
2026-02-01 16:44:42 -05:00
8b4d0bdeb6 Add GitLab pipeline status check to CLAUDE.md 2026-01-29 09:12:04 -05:00
9330782999 Fix case-sensitive email duplicates and add merge script
- Normalize emails to lowercase on user creation
- Use case-insensitive lookup in get_user_by_email
- Add merge_duplicate_email_users script to merge existing duplicates
- Add unit and integration tests to prevent regression
- Update CLAUDE.md with tmux-hosts production troubleshooting
2026-01-29 08:33:35 -05:00
a6c04d565a Add google_site_verification support for namespaces
- Add google_site_verification column to rb_namespace table
- Add settings form field in Stand-alone Mode Settings
- Render meta tag on root path when set
- Update CLAUDE.md with Alembic migration workflow
- Fix development.ini alembic paths
2026-01-11 09:11:07 -05:00
640c45662c Update CLAUDE.md to check parent directories for cross-repo CLAUDE.md files 2025-11-26 16:20:21 -05:00
517eb2a07e Add project setup section to CLAUDE.md reminding to check for repository-specific instructions 2025-11-26 16:16:26 -05:00
535453e0d6 Re-implement needed features without debug cruft
- Add Features section to README documenting key capabilities
- Add mode=light parameter to embed examples
- Enhance environment variable handling with ${VAR:-default} syntax
- Fix Python 3 compatibility in short_id_to_bytes()
- Fix email verification logic with proper null check
- Add session size limits for pending nodes
- Add CLAUDE.md configuration for commit attribution
2025-10-12 08:59:07 -04:00