No storage backend abstraction #15

Closed
opened 2026-05-10 16:06:52 +00:00 by Mark · 2 comments
Owner

Closed: This feature belongs to a different project domain than tokengenerator.

Original request: Feature: Storage backend integration

Per triage review, this issue is misaligned with tokengenerator's project scope. Please re-file against the appropriate project.

Closed: This feature belongs to a different project domain than tokengenerator. **Original request:** Feature: Storage backend integration Per triage review, this issue is misaligned with tokengenerator's project scope. Please re-file against the appropriate project.
Author
Owner

Feature Triage Assessment

Scope: medium
Risk: medium
Spec Alignment: misaligned
Summary: Wants to add pluggable token persistence (interface + Redis + file implementations) to a currently stateless client-side token generator that has zero server-side storage.
Recommendation: If approved, implement a strategy pattern with a simple async interface (save/load/list/delete). Start with file-based JSON storage as default; make Redis an opt-in driver via env var. Add 2-3 new files: a storage interface module, a file driver, and a Redis driver. Wire into new /api/tokens/* endpoints on the server.
Rationale: SCOPE medium: Adding a storage subsystem where none exists means 3+ new files, new npm deps (redis, possibly better-sqlite3), new API routes, and configuration wiring — not trivial but not a 15+ file overhaul. RISK medium: Additive to existing paths (no regression), but introduces IO operations, external dependency (Redis), and new API surface; no tests exist. SPEC misaligned: The project spec describes a client-side token designer with PNG download and AI suggestion features — there is zero mention of server-side persistence, saved tokens, user accounts, or any storage backend anywhere in the spec or README. This feature is a net-new capability that wasn't scoped and fundamentally changes the architecture from stateless-generator to stateful-platform.

Labeled blocked:needs-decision — unblock on Forgejo to dispatch to the fixer pipeline.

## Feature Triage Assessment **Scope:** medium **Risk:** medium **Spec Alignment:** misaligned **Summary:** Wants to add pluggable token persistence (interface + Redis + file implementations) to a currently stateless client-side token generator that has zero server-side storage. **Recommendation:** If approved, implement a strategy pattern with a simple async interface (save/load/list/delete). Start with file-based JSON storage as default; make Redis an opt-in driver via env var. Add 2-3 new files: a storage interface module, a file driver, and a Redis driver. Wire into new /api/tokens/* endpoints on the server. **Rationale:** SCOPE medium: Adding a storage subsystem where none exists means 3+ new files, new npm deps (redis, possibly better-sqlite3), new API routes, and configuration wiring — not trivial but not a 15+ file overhaul. RISK medium: Additive to existing paths (no regression), but introduces IO operations, external dependency (Redis), and new API surface; no tests exist. SPEC misaligned: The project spec describes a client-side token designer with PNG download and AI suggestion features — there is zero mention of server-side persistence, saved tokens, user accounts, or any storage backend anywhere in the spec or README. This feature is a net-new capability that wasn't scoped and fundamentally changes the architecture from stateless-generator to stateful-platform. Labeled `blocked:needs-decision` — unblock on Forgejo to dispatch to the fixer pipeline.
Author
Owner

This treats token as an auth/API credential concept. tokengenerator generates visual game-piece images (SVG icons with text) — not cryptographic tokens. There is no token issuance system, no auth beyond a single Google API key, and nothing to revoke or analyze cryptographically. Closing as filed against the wrong repository.

This treats token as an auth/API credential concept. tokengenerator generates visual game-piece images (SVG icons with text) — not cryptographic tokens. There is no token issuance system, no auth beyond a single Google API key, and nothing to revoke or analyze cryptographically. Closing as filed against the wrong repository.
Mark closed this issue 2026-05-15 13:18:25 +00:00
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
Mark/tokengenerator#15
No description provided.