Spaces:
Paused
Paused
Commit History
-
fix backup status display, sync loop safety, and startup log noiseβ
- paperclip-sync.py: write explicit status+message fields in sync_to_backup and sync_from_backup (previously relied on compat shim which mapped last_errorβmessage, causing empty message on success and duplicate "Last sync" lines in dashboard) - paperclip-sync.py: change log format to [sync] %(message)s (drop verbose timestamp/level prefix that cluttered startup restore output) - start.sh: sanitize SYNC_INTERVAL (strip non-digits, clamp β₯60s) to prevent sleep "" failure causing tight spin loop Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>08569ac
-
feat(sync): skip backup when no state changes detectedβ
Add pg_stat_database activity marker + PAPERCLIP_HOME filesystem marker. State persisted to /tmp; backup skipped when both match the last successful upload's snapshot. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>fd8bbbe
-
docs: add HuggingFlow to More Projects sectionβ
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>c996923 -
add HuggingPost to projects list
299ce41
-
fix: update footer to credit the author in the dashboard
31944c5
-
feat: add local time display for sync status in dashboard
06ab0a6 -
fix: improve error handling in Cloudflare API request
517486c -
fix: correct project name from HuggingMess to HuggingMes in README
2484e7d -
feat: add plugin status retrieval and display in dashboardβ
Co-authored-by: Copilot <copilot@github.com>e05bdf9 -
refactor: enhance sync status handling for dashboard compatibility
c53bf2f
-
refactor: remove unused cloudflare-worker.js file and associated Dockerfile copy command
ef67ca7 -
replace UptimeRobot keep-alive implementation with a Cloudflare Workers cron-triggered proxy system
4b5ca71
-
refactor: move UptimeRobot configuration from client-side UI to server-side environment secret
6b586fa
-
chore: update secrets documentation and improve crypto donation formatting in README
0d39314 -
chore: update default sync interval to 3600 seconds in environment configuration and startup script
83babc8 -
chore: update launch script configuration in start.sh
b9ccb74 -
chore: update start script configuration and environment variables
227dcc0 -
chore: update startup script configuration for HuggingClip service
fb0a5f1 -
chore: update Claude Code authentication environment variables and configuration to use CLAUDE_CODE_OAUTH_TOKEN
5ee080c -
chore: update startup script configuration for HuggingClip environment
be00cf7 -
feat: update Claude Code authentication wrapper and increase sync interval while removing Gemini debug logs
67a5cb1 -
refactor: quiet logging, increase backup interval, and add debug log endpoint
c6ffa66 -
feat: add environment logging and bypass sandbox setup in gemini wrapper script
5fa646d -
chore: update startup script configuration for HuggingClip service
748bded -
fix: bypass gemini CLI relaunch mechanism using GEMINI_CLI_NO_RELAUNCH environment variable
4e5f895 -
fix: resolve Gemini CLI relaunch failure by invoking entry JS directly with node flags
d63dc26 -
fix: add explicit environment variables to gemini wrapper in Dockerfile to prevent sandbox and trust prompt failures
2ba784e -
chore: update startup script configuration for HuggingClip service
08ebfa3
-
fix: suppress deprecation warnings and node alerts by updating NODE_OPTIONS in Dockerfile and start.sh
bc525e1 -
chore: rename CLAUDE_API_KEY to ANTHROPIC_API_KEY and add GEMINI/OPENAI placeholders to configuration files
c465b41 -
chore: update startup script configuration for HuggingClip environment
f635d84 -
chore: update agent CLI wrappers to set max-old-space-size and clear existing NODE_OPTIONS
e79e3bc -
chore: unset NODE_OPTIONS for agent CLIs to prevent environment conflicts
e6dbd45 -
chore: remove unused CLOUDFLARE_ACCOUNT_ID from environment configuration and startup script
7c42a6c -
chore: update paperclip user UID to 1001 in Dockerfile
5015cf0 -
fix: remove recursive chown of /app in Dockerfile to preserve root ownership of files
c7255ef -
chore: create non-root user and update directory permissions in Dockerfile and start script
9946cfb -
chore: install additional agent CLIs and migrate sync status timestamp to timezone-aware datetime
9161677 -
chore: update startup script configuration for environment initialization
b17ba14 -
feat: redirect /invite paths to /app/invite to support SPA routing structure
608e075 -
chore: rename default backup dataset from paperclip-backup to huggingclip-backup
6e26197 -
chore: update environment configuration in start.sh
c979202
-
docs: update README with project showcase and donation info, and remove legacy links from health server UI
32ab05a -
refactor: optimize Docker build layers, consolidate dependency patches, and modernize documentation
6ad52e8 -
Restore dashboard at / with Paperclip at /app/ (proper fix)β
Patch ui/src/main.tsx in the Dockerfile build to add basename="/app" to BrowserRouter. With this, React Router strips the /app prefix client-side before matching routes β /app/ becomes /, /app/ABC/issues becomes /ABC/issues β so the company-prefix extractor never sees "app". Health server: - / β HuggingClip dashboard (restored) - /app/* β proxy to Paperclip with /app prefix stripped - /api/* β proxy pass-through - /* catch-all β proxy pass-through (assets, sw.js, etc.) Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>44ce938 -
Fix routing, ECONNREFUSED, and Cloudflare setupβ
- Move dashboard to /_status, proxy / root directly to Paperclip (fixes "Company not found APP" β SPA no longer sees /app/ prefix) - Hardcode PAPERCLIP_HOST to 127.0.0.1 instead of reading HOST env (fixes ECONNREFUSED 0.0.0.0:3100 β 0.0.0.0 is bind-only) - Remove CLOUDFLARE_ACCOUNT_ID requirement from setup condition (setup script already auto-discovers account ID) - Source CF proxy env file after setup so CLOUDFLARE_PROXY_URL/SECRET reach the Node process Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>eb3a3f8 -
Fix container exit when admin already configuredβ
set -euo pipefail kills the script when the bootstrap-ceo grep pipeline returns no match (admin already exists). Previous fix covered bootstrap-ceo itself but not the grep pipeline. Add || true at the end of the pipeline so empty INVITE_URL is fine. Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>6d97584 -
Make sed patch robust + verify with grepβ
Build failed silently. Add: file existence check, simpler sed pattern (just seen.has(current.id) β wrapped form), grep-verify the patch landed, dump file context if not for debugging. Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>316b8d3 -
Patch Paperclip source to cap recovery chain depth at 500β
Found the actual bug. Confirmed via @paperclipai/server npm tarball: firstBlockedChainFinding does proper cycle detection via Set.has, but the chain in user data is genuinely 1000+ deep (created by a runaway recovery-issue loop). Each recursive call also clones the Set into new Set(seen), so memory blows up too. Fix: sed-patch the if-check to also bail when seen.size > 500. This short-circuits deep linear chains without affecting normal graphs. Patch runs in the builder stage before pnpm build. Reverted SQL purge and --unhandled-rejections=none from start.sh β neither addressed the root cause. Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>df96d5e -
Purge orphaned heartbeat run UUID from all tables before launchβ
The orphaned run 1fc2bf0e... triggers Paperclip's startup recovery which overflows the stack via firstBlockedChainFinding. Even when caught, downstream periodic checks crash Paperclip. Solution: delete the UUID from every UUID column across every public table before launch, so recovery has nothing to do. Foreign-key constraint failures are swallowed per-row. Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>e77bcc1