Skip to content

feat: add @script-development/fs-adapter-store package#8

Merged
Goosterhof merged 1 commit into
mainfrom
fs-adapter-store
Apr 1, 2026
Merged

feat: add @script-development/fs-adapter-store package#8
Goosterhof merged 1 commit into
mainfrom
fs-adapter-store

Conversation

@Goosterhof

Copy link
Copy Markdown
Contributor

Summary

  • Reactive adapter-store pattern extracted from BIO: domain state management with CRUD resource adapters, caching, and localStorage persistence
  • Uses reactive getter pattern (() => T) for existing resources — mutations flow through adapter methods, not direct store access
  • Generic New<T> defaults to Omit<T, "id"> — territories override with their own omissions
  • No case conversion baked in — middleware handles snake/camel transformation
  • 73 tests adapted from BIO's battle-tested suite, 100% coverage, 100% mutation score (88/88 killed)
  • Peer deps: vue, fs-helpers, fs-http, fs-loading, fs-storage

Test plan

  • All 8 CI gates pass (audit, format, lint, build, typecheck, lint:pkg, coverage, mutation)
  • 73 tests across 3 test files (26 adapter-store, 43 resource-adapter, 4 errors)
  • publint + attw verify package exports for all resolutions

🤖 Generated with Claude Code

Reactive adapter-store pattern with domain state management,
CRUD resource adapters, caching, and localStorage persistence.
Uses reactive getter pattern for existing resources.

Generic New<T> defaults to Omit<T, 'id'> — territories override.
No case conversion — middleware handles snake/camel transformation.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
@Goosterhof Goosterhof merged commit 7043f4a into main Apr 1, 2026
1 check passed
jasperboerhof added a commit that referenced this pull request May 1, 2026
…t-surface

feat(fs-http): timeout option with 30000ms default (Doctrine #8 library-author extension)
Goosterhof added a commit that referenced this pull request May 7, 2026
…-http-docs

docs(fs-http): surface Doctrine #8 timeout contract; collapse README duplication
Goosterhof added a commit that referenced this pull request May 7, 2026
…ctrine

Four edits to CLAUDE.md, sourced from Adjutant M2 doctrine inquiry
(2026-05-07):

- Add `## Versioning Discipline (Pre-1.0)` — encodes the mechanical
  per-bump checklist (widen ranges, patch-bump siblings, regenerate
  lock, verify no nested registry copies). Notes that `workspace:*`
  is not an option on npm (rejected as EUNSUPPORTEDPROTOCOL).
- Add `### Internal Dependency Coordination` sub-section under
  `## Conventions` — captures the string-ts version-sync discipline
  between fs-helpers and fs-translation. Reframes the "duplicate
  bundle" claim against verified npm dedupe behavior.
- Add `## Doctrine #8 — HTTP Timeout Surface (fs-http)` — surfaces
  fs-http as the war-room reference implementation of the
  library-author extension to Architectural Principle #8 (verbatim
  quote from war-room CLAUDE.md). Documents the 5-axis surface.
- Fix TypeScript version line: `5.9+` → `^6.0` (matches root
  package.json#devDependencies.typescript).

No code or test changes; markdown only.

Order: orders/fs-packages/claude-md-doctrine-consolidation-engineer-deployment.md
Adjutant field report: reports/fs-packages/field/2026-05-07-adjutant-doctrine-inquiry-cascade-tax-string-ts.md

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Goosterhof added a commit that referenced this pull request May 8, 2026
Add an Authentication & XSRF section to docs/packages/http.md sibling-
level to the Doctrine #8 Timeout block, naming Laravel Sanctum SPA
explicitly, explaining the XSRF-TOKEN cookie + axios 1.x withXSRFToken
mechanics, and stating the HTTP 419 failure mode (which mocked
transports do not surface, per ADR-0017). Stateless / token / non-
Sanctum stacks documented as the inverse case. Expand the API
Reference row for options.withXSRFToken with the same guidance and a
cross-link to the new section.

Add a one-line README pointer mirroring the Timeout pointer shape
landed by Engineer PR #68 (no full duplication; docs page is source of
truth).

Closes enforcement queue #22 docs path. Commander disposition: docs-
only. Library default of withXSRFToken: false stays as-is. No oxlint
call-site rule. No source code changes. No version bump.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant