Joseph Spiker spikerj
  • Joined on 2025-11-03
spikerj closed issue spikerj/spikersoft-issues#57 2026-05-05 04:51:57 +00:00
[High] Trail handlers return HTTP 400 instead of 404 for missing trails
spikerj closed issue spikerj/spikersoft-issues#56 2026-05-05 04:51:57 +00:00
[High] canRun enables Run button while local runtime is still loading (when SignalR is connected)
spikerj closed issue spikerj/spikersoft-issues#67 2026-05-05 04:51:57 +00:00
[Medium] quick-type activity tracking serializes full settings into metadata (privacy/size)
spikerj closed issue spikerj/spikersoft-issues#69 2026-05-05 04:51:57 +00:00
[Medium] Chess test suite asserts the weak move generator, not full legality (stalemate/checkmate gaps)
spikerj closed issue spikerj/spikersoft-issues#60 2026-05-05 04:51:57 +00:00
[High] Activity/knowledge query handlers load entire UserProfiles/UserActivities tables into memory
spikerj closed issue spikerj/spikersoft-issues#68 2026-05-05 04:51:57 +00:00
[Medium] github-snake :host-context(:fullscreen) selector may not match when host enters fullscreen
spikerj closed issue spikerj/spikersoft-issues#62 2026-05-05 04:51:57 +00:00
[Medium] AggregateKnowledgeCommandHandler has N+1 queries per domain group
spikerj closed issue spikerj/spikersoft-issues#64 2026-05-05 04:51:57 +00:00
[Medium] domain-detail route has no auth guard but API requires Authorize
spikerj closed issue spikerj/spikersoft-issues#55 2026-05-05 04:51:57 +00:00
[Critical] Chess: getPossibleMovesForPiece is incomplete (missing castling, en passant, double pawn push) - breaks checkmate/stalemate detection
spikerj closed issue spikerj/spikersoft-issues#58 2026-05-05 04:51:57 +00:00
[High] C# free-play CodeExecutionOptions dropped end-to-end on server path
spikerj closed issue spikerj/spikersoft-issues#61 2026-05-05 04:51:57 +00:00
[High] requestNewAttempt failures are silently swallowed in language-runner
spikerj closed issue spikerj/spikersoft-issues#63 2026-05-05 04:51:57 +00:00
[Medium] TrailValidator does not validate GeoJSON type or coordinate structure
spikerj closed issue spikerj/spikersoft-issues#54 2026-05-05 04:51:57 +00:00
[Critical][Security] IDOR on GET /progress/domain/{domainKey} - any authenticated user can read another user's activity
spikerj closed issue spikerj/spikersoft-issues#66 2026-05-05 04:51:57 +00:00
[Medium] FreePlayCodeExecutorFactory silently picks last duplicate registration
spikerj commented on issue spikerj/spikersoft-issues#69 2026-05-05 04:47:09 +00:00
[Medium] Chess test suite asserts the weak move generator, not full legality (stalemate/checkmate gaps)

Resolved.

Added two new describe blocks to the chess spec:

  • hasAnyLegalMove with special moves (3 tests)
    • Pawn double-push counted as a legal move
    • En passant counted as a legal move…
spikerj commented on issue spikerj/spikersoft-issues#66 2026-05-05 04:47:09 +00:00
[Medium] FreePlayCodeExecutorFactory silently picks last duplicate registration

Resolved.

The factory now scans for duplicate LanguageId registrations and throws InvalidOperationException with the offending key(s) and counts during construction:

var
spikerj commented on issue spikerj/spikersoft-issues#67 2026-05-05 04:47:09 +00:00
[Medium] quick-type activity tracking serializes full settings into metadata (privacy/size)

Resolved.

Added summarizeObfuscationSettings(settings) private helper. It walks the boolean flags on the settings object and returns:

{ enabledCount: number, totalToggles: number,…
spikerj commented on issue spikerj/spikersoft-issues#68 2026-05-05 04:47:09 +00:00
[Medium] github-snake :host-context(:fullscreen) selector may not match when host enters fullscreen

Resolved.

Both fullscreen rules now combine :host-context(:fullscreen) & with :host(:fullscreen) & so the layout adjusts whether an ancestor or the host element itself enters fullscreen.

spikerj commented on issue spikerj/spikersoft-issues#65 2026-05-05 04:47:08 +00:00
[Medium] Dead BSON conversion methods in GetTrailByIdQueryHandler

Resolved.

Removed the unused ConvertBsonToGeometry, ConvertBsonToDictionary, and ConvertBsonValueToObject methods plus the using MongoDB.Bson; import. Also simplified the handler --…

spikerj commented on issue spikerj/spikersoft-issues#64 2026-05-05 04:46:48 +00:00
[Medium] domain-detail route has no auth guard but API requires Authorize

Resolved.

Applied two changes:

  1. routes.ts -- the tree-of-knowledge/domain/:domainKey route now uses canActivate: [AuthGuard] to match the [Authorize] API endpoint.
  2. `domain-detail.…