Add sync error logging, extend error flash, fix unload saves

- Log workforce sync errors to backend stdout so they appear in docker logs
- Extend error flash from 5s to 15s so errors are readable
- Replace sendBeacon (POST-only) with keepalive fetch (PUT) on unload —
  sendBeacon was hitting 404s on all three unload saves

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
jtricerolph 2026-07-22 14:19:38 +00:00
parent c7066521ff
commit 18e24efbeb
14485 changed files with 1836116 additions and 33 deletions

View file

@ -0,0 +1,39 @@
'use strict'
const test = require('tape')
const fastURI = require('..')
test('parse preserves reserved path escapes as data', (t) => {
const components = fastURI.parse('http://example.com/a%2Fb/public/%2e%2e/admin')
t.equal(components.path, '/a%2Fb/public/%2E%2E/admin')
t.end()
})
test('normalize preserves percent-encoded path separators and dot segments', (t) => {
t.equal(
fastURI.normalize('http://example.com/public/%2e%2e/admin'),
'http://example.com/public/%2E%2E/admin'
)
t.equal(
fastURI.normalize('http://example.com/a%2Fb'),
'http://example.com/a%2Fb'
)
t.end()
})
test('equal does not treat reserved path escapes as live path syntax', (t) => {
t.equal(
fastURI.equal('http://example.com/public/%2e%2e/admin', 'http://example.com/admin', {}),
false
)
t.equal(
fastURI.equal('http://example.com/a%2Fb', 'http://example.com/a/b', {}),
false
)
t.end()
})