feat(kol): return to source page after generation and poll while busy
- Add a ?source=workspace|templates query param when opening the generate page so the back button and the post-submit redirect return to the originating page; invalidate articles + workspace caches on success so the new article shows up immediately. - Poll recent articles every 10s in WorkspaceView and TemplatesView while any article is in queued/pending/generating/running, and stop the timer once nothing is active. - Mark the new article as generating inside the generation Submit transaction so the client sees the right status as soon as the task is queued. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -257,6 +257,9 @@ func (s *KolGenerationService) Submit(ctx context.Context, actor auth.Actor, sub
|
||||
if err != nil {
|
||||
return nil, response.ErrInternal(50103, "kol_generation_article_create_failed", err.Error())
|
||||
}
|
||||
if err := articleTx.UpdateArticleGenerateStatus(ctx, articleID, actor.TenantID, "generating"); err != nil {
|
||||
return nil, response.ErrInternal(50112, "kol_generation_article_state_update_failed", err.Error())
|
||||
}
|
||||
|
||||
if err := quotaTx.UpdateQuotaReservationResource(ctx, reservationID, actor.TenantID, articleID); err != nil {
|
||||
return nil, response.ErrInternal(50104, "kol_generation_reservation_update_failed", err.Error())
|
||||
|
||||
Reference in New Issue
Block a user