splitwise / src

Commit History

  1. fix(deploy): trust x-forwarded-for for per-IP rate limiting⁠

    assafvayner HF Staff
    d0c44b2
  2. fix(app): 503 on storage failures, validated currency, lock release on shutdown, per-IP login limit, unit-only npm test⁠

    assafvayner HF Staff
    e830ad4
  3. fix(ui): split editor usable without JS, untrack prop snapshots, clean orphan photo on conflict

    assafvayner HF Staff
    3b74a95
  4. fix(ui): explicit payer choice, validated settle-up prefill, sticky delete confirm, degraded balances

    assafvayner HF Staff
    2b4c12e
  5. fix(auth): gate admin routes on the decoded path and in the actions themselves⁠

    assafvayner HF Staff
    857fbc2
  6. fix(ui): shared safe-next validation, no lockout on success, logout origin check, tab/feed polish

    assafvayner HF Staff
    b11153a
  7. feat(ui): add balances page with simplified debts and settle-up links

    assafvayner HF Staff
    3327d9d
  8. feat(ui): add settlement create, detail, edit and delete

    assafvayner HF Staff
    edcd76e
  9. feat(ui): add expense detail, edit with version check, delete, photo serving

    assafvayner HF Staff
    5517d3b
  10. feat(ui): add expense form with live split editor and photo upload

    assafvayner HF Staff
    4ae345a
  11. feat(ui): add admin user management and storage/compaction page

    assafvayner HF Staff
    650ab40
  12. fix(app): stop guard on boot failure, validate compaction interval, harden hooks

    assafvayner HF Staff
    6d928e9
  13. fix(photos,forms): own-property content types, dimension bounds, VP8L signature, trimmed inputs

    assafvayner HF Staff
    fa363c5
  14. fix(auth): bound scrypt params, cap concurrency, evict rate-limit keys, re-bootstrap admin

    assafvayner HF Staff
    1c7b998
  15. feat(ui): add expense feed grouped by month

    assafvayner HF Staff
    8b1607e
  16. feat(ui): add profile page and forced password change

    assafvayner HF Staff
    b721171
  17. feat(ui): add layout, tab bar, login and logout

    assafvayner HF Staff
    59d41c0
  18. feat(app): wire config, singleton app bootstrap, and auth hooks

    assafvayner HF Staff
    4bb4f90
  19. fix(ledger): writer guard re-checks ownership and self-demotes on stale heartbeat

    assafvayner HF Staff
    b0ccc27
  20. feat(forms): parse and validate expense/settlement forms; photo sniffing

    assafvayner HF Staff
    0545b15
  21. feat(users): add UsersRepo with admin bootstrap and password management

    assafvayner HF Staff
    1cf4d4c
  22. feat(auth): add scrypt hashing, signed session tokens and rate limiter

    assafvayner HF Staff
    ef84ace
  23. test(ledger): prove compaction crash safety with fault injection and against the real bucket

    assafvayner HF Staff
    8d2f1b6
  24. feat(ledger): add heartbeat-based writer guard

    assafvayner HF Staff
    ea1afde
  25. fix(ledger): heal truncated ledger, validate events on write, reconcile pending

    assafvayner HF Staff
    664d562
  26. feat(ledger): add Ledger service with event write path and compaction

    assafvayner HF Staff
    3bfa0fc
  27. feat(ledger): add event schema, jsonl encoding and fold

    assafvayner HF Staff
    a896df9
  28. fix(storage): skip integration suite safely, tighten list contract, drop expand

    assafvayner HF Staff
    d594446
  29. feat(storage): add HfBucketStore with opt-in real-bucket integration test

    assafvayner HF Staff
    9eafa48
  30. fix(storage): atomic temp files, directory-safe get/delete, list contract docs

    assafvayner HF Staff
    874bd3c
  31. feat(storage): add BucketStore interface, LocalFsStore and PrefixedStore

    assafvayner HF Staff
    0d57d79
  32. refactor(domain): move MAX_CENTS to money, deterministic shuffle in tests

    assafvayner HF Staff
    ee86043
  33. fix(domain): guard split allocation and balance invariants

    assafvayner HF Staff
    5918e23
  34. feat(domain): compute net balances and simplified debts

    assafvayner HF Staff
    d180c31
  35. feat(domain): add largest-remainder split allocation

    assafvayner HF Staff
    3852523
  36. fix(domain): harden schemas, ULID monotonicity and amount parsing

    assafvayner HF Staff
    7f9220c
  37. feat(domain): add monotonic ULID generator and money parsing/formatting

    assafvayner HF Staff
    3c22061
  38. feat(domain): add core types and zod schemas

    assafvayner HF Staff
    6ea96a3
  39. chore: scaffold SvelteKit project with Tailwind, Vitest, adapter-node

    assafvayner HF Staff
    52ec2ea