Skip to content

Releases: davidwkeith/workers

v0.1.0-beta.0

09 Jun 19:14
63d21ac

Choose a tag to compare

v0.1.0-beta.0 Pre-release
Pre-release

What's Changed

  • Add README and spec/ technical requirements from issue #1 by @davidwkeith in #2
  • Monorepo scaffolding: pnpm workspaces, TypeScript, changesets, test harness by @davidwkeith in #14
  • Implement @dwk/rdf — Turtle/JSON-LD parse + serialize over N3.js by @davidwkeith in #15
  • Implement @dwk/dpop — DPoP (RFC 9449) proof verification by @davidwkeith in #16
  • Implement @dwk/wac — Web Access Control evaluation by @davidwkeith in #17
  • Add @dwk/wac implementation (missed the #17 merge) by @davidwkeith in #18
  • Add CLAUDE.md guidance file for AI assistants by @davidwkeith in #19
  • Implement @dwk/store — DO-SQLite quad store + R2 copy-on-write blobs by @davidwkeith in #20
  • Implement @dwk/indieauth — authorization/token/metadata endpoints by @davidwkeith in #21
  • Implement @dwk/micropub — Micropub publishing endpoint by @davidwkeith in #22
  • Implement @dwk/webmention — receiver, async verification, sender, inbox by @davidwkeith in #23
  • Implement @dwk/solid-pod — edge-native Solid Pod (Worker + per-pod Durable Object) by @davidwkeith in #24
  • Conformance & CI release gate (IndieWeb + Solid suites) by @davidwkeith in #25
  • [webmention] Add SSRF-safe fetch wrapper for all outbound requests by @davidwkeith in #43
  • Add @dwk/log injectable logging seam; wire @dwk/webmention as first consumer by @davidwkeith in #45
  • Analytics Engine metrics adapter on the @dwk/log seam by @davidwkeith in #47
  • [micropub] Bind authorization to the site owner (me) by @davidwkeith in #49
  • Reject reserved-suffix Slugs in container POST (fix #28) by @davidwkeith in #48
  • Fix fail-open effective-ACL walk in @dwk/wac by @davidwkeith in #50
  • Fix TOCTOU in solid-pod write/delete preconditions (#29) by @davidwkeith in #51
  • fix(store): evaluate putBlob precondition before writing R2 (#32) by @davidwkeith in #52
  • fix(solid-pod): close access-token JWT validation gaps (#35) by @davidwkeith in #53
  • Stream the blob write path; stop buffering full bodies in the DO (#31) by @davidwkeith in #55
  • Fix GC resurrection guard against timestamp race (#33) by @davidwkeith in #56
  • spec: draft proposals for next-standard packages (#57#64) by @davidwkeith in #66
  • Fix DPoP jti replay enforcement gaps in solid-pod writes by @davidwkeith in #54
  • docs: refresh CLAUDE.md to implemented state and conformance gate by @davidwkeith in #65
  • Adopt logging + metrics seams in indieauth, micropub, solid-pod by @davidwkeith in #67
  • fix(solid-pod): bound N3 Patch where solver against DO CPU exhaustion (#36) by @davidwkeith in #68
  • fix(solid-pod): close LDP/content-negotiation conformance gaps (#37) by @davidwkeith in #69
  • fix(rdf): JSON-LD toRDF conformance bugs (#38) by @davidwkeith in #72
  • Fix micropub auth/scope and conformance gaps (#39) by @davidwkeith in #71
  • Fix cross-resource blob ETag collisions and Content-Type overwrites (#40) by @davidwkeith in #70
  • Harden @dwk/indieauth authorization endpoint (#41) by @davidwkeith in #73
  • Harden @dwk/dpop proof verification (#42) by @davidwkeith in #74
  • Add @dwk/webfinger — WebFinger (RFC 7033) discovery endpoint by @davidwkeith in #76
  • Replace fragile regexes with plain string handling + HTMLRewriter by @davidwkeith in #75
  • Add @dwk/http-signatures — HTTP Message Signatures (RFC 9421 + draft-cavage) by @davidwkeith in #77
  • feat(websub): implement @dwk/websub WebSub hub (#60) by @davidwkeith in #78
  • Add @dwk/activitypub — native ActivityPub actor (inbox/outbox, S2S federation) by @davidwkeith in #79
  • test: implement the test-coverage improvement plan (+100 tests, coverage in CI) by @davidwkeith in #80
  • Add @dwk/vc: did:web identity + Verifiable Credentials by @davidwkeith in #81
  • test(rdf): raise jsonld.ts branch coverage to ~98% by @davidwkeith in #85
  • Add @dwk/oauth — OAuth 2.0 server building blocks (#62) by @davidwkeith in #86
  • test(solid-pod): cover pod.ts conflict/GC-internal paths and the auth.ts authenticate hook by @davidwkeith in #88
  • feat(ldn): extract @dwk/ldn and wire solid-pod + activitypub (#63) by @davidwkeith in #87
  • test(activitypub): cover object.ts branches (58% → 96%) by @davidwkeith in #89
  • Add @dwk/webauthn — WebAuthn/passkeys relying party (#64) by @davidwkeith in #90
  • Fix high-tier W3C/IETF spec-compliance gaps across six packages by @davidwkeith in #104
  • spec: server-side standards gap analysis — microsub + honorable-mention proposals by @davidwkeith in #92
  • activitypub: spec-compliance follow-ups (sharedInbox, AS2 negotiation, NodeInfo 2.0, inbox validation) by @davidwkeith in #108
  • Add @dwk/microsub — IndieWeb read side (Microsub server) by @davidwkeith in #109
  • docs(micropub): document mandatory-DPoP posture and 404 invalid_request deviation by @davidwkeith in #110
  • fix(ldn): spec-compliance follow-ups for receiver and discovery by @davidwkeith in #111
  • websub: WebSub spec-compliance follow-ups (#94) by @davidwkeith in #112
  • [dpop] Add support for server-provided DPoP nonce (#99) by @davidwkeith in #114
  • Harden VC verification: @context consistency, base58btc proofValue, validity windows (#98) by @davidwkeith in #116
  • webmention: spec-compliance follow-ups (#96) by @davidwkeith in #113
  • feat(indieauth): audience-restrict access tokens via RFC 8707 (#100) by @davidwkeith in #117
  • fix(wac): correct effective-ACL stop condition to WAC §5.1 by @davidwkeith in #115
  • Prefer URL object over string matching for keyId fragment stripping by @davidwkeith in #118
  • fix(http-signatures): RFC 8941 Content-Digest parsing + cavage default-headers comment by @davidwkeith in #119
  • fix(webfinger): 400 on malformed resource parameter (RFC 7033 §4.2) by @davidwkeith in #120
  • Add @dwk/host-meta — RFC 6415 host-meta discovery endpoint by @davidwkeith in #121
  • Add @dwk/remotestorage — remoteStorage vault on @dwk/store (#105) by @davidwkeith in #122
  • Tidy package metadata for cross-package consistency by @davidwkeith in #123
  • docs(spec): add Node.js/Express self-hosting design & feasibility study by @davidwkeith in #124
  • feat(server): add @dwk/server self-hosting host (phases 1–3) by @davidwkeith in #131
  • feat(server): finish Phase 2 — assembleBindings + IndieWeb trio bring-up by @davidwkeith in #132
  • feat(server): finish Phase 3 — lifecycle bring-up (queue/cron consumers) by @davidwkeith in #133
  • feat(server): Phase 4 — Durable Object emulation + webauthn bring-up by @davidwkeith in #134
  • feat(server): complete Phase 4 — solid-pod + WebSocket notifications on the emulated DO by @davidwkeith in #135
  • feat(server): Phase 5 — dwk-serve CLI, esbuild bundle, Docker image by @davidwkeith in #136
  • feat(conformance): Node self-host conformance column — closes #130 by @davidwkeith in #137
  • fix(server): make the self-host Docker image actually build...
Read more