feat: add backup CLI commands, AI correction/modifier services, and timezone-aware date display

- Add `devplace backups` CLI subcommands (list, run, prune, clear) with job enqueueing and orphan cleanup
- Introduce `BACKUPS_DIR` and `BACKUP_STAGING_DIR` config paths for backup storage
- Implement `schedule_correction` and `schedule_modification` calls in content creation, comment creation, and comment editing flows
- Add `DEFAULT_CORRECTION_PROMPT` and `DEFAULT_MODIFIER_PROMPT` config constants for AI content processing
- Document timezone-aware date display using `local_dt`/`dt_ago` Jinja globals with client-side `Intl` localization
- Update README with AI content correction/modifier support in direct messages via `@ai` inline instructions
- Add `track_action(user["uid"], "vote")` call on upvote in `apply_vote`
This commit is contained in:
2026-06-16 03:32:19 +00:00
parent e59bc2d34e
commit 15bd4ad87c
115 changed files with 5839 additions and 187 deletions
+2 -2
View File
@@ -21,7 +21,7 @@
{% endif %}
<span class="issue-author">{{ issue.author_username }}</span>
<span class="issue-dot">&middot;</span>
<span class="issue-date">{{ format_date(issue.created_at, true) }}</span>
<span class="issue-date">{{ local_dt(issue.created_at) }}</span>
</div>
{% if viewer_is_admin %}
@@ -55,7 +55,7 @@
{% endif %}
<span class="issue-author">{{ comment.author_username }}</span>
<span class="issue-dot">&middot;</span>
<span class="issue-date">{{ format_date(comment.created_at, true) }}</span>
<span class="issue-date">{{ local_dt(comment.created_at) }}</span>
</div>
<div class="issue-comment-body rendered-content" data-render>{{ comment.body }}</div>
</div>