Skip to content

Ask who did a task before marking someone else's done - #37

Merged
EmotiveImpact merged 1 commit into
mainfrom
claude/app-review-task-credit
Oct 12, 2026
Merged

EmotiveImpact merged 1 commit into
mainfrom
claude/app-review-task-credit

Conversation

@EmotiveImpact

Copy link
Copy Markdown
Owner

Before: anyone in a commune could tick any task with one tap. The history recorded who pressed it, but the task's "last done" credited the person on the rota, so a task could be marked done for someone without anyone seeing who actually pressed the button.

After: tapping Done on a task someone else holds asks "This is Ama's turn. Who did it?" with I did it and Ama did it. Each answer has to be pressed and held until its bar fills, so a stray tap does nothing. Both names go on the task: "Ama Owusu · 11 Oct · marked by Ben", or "Ben · 11 Oct · covering Ama". The history line and the activity feed say the same. Your own tasks, and tasks nobody holds, still complete with one tap. Edem chose "Both" (say who did it, and hold to confirm) on the decision card.

The rotation moves on exactly as before, from the holder's turn.

How: migration 0041 adds p_done_by ('me' or 'assignee') to record_operation_occurrence, which now refuses to complete someone else's task without it. last_done gains markedBy and covering (the validator allows only these), each occurrence stores done_by_id, and the snapshot history carries doneById. The local API and the Data API client pass doneBy. ui/DoneByChoice.tsx holds the question and the hold-to-confirm button (pointer, touch and keyboard: hold Space or Enter). It is used on the Operations late card, in the task window and in This Hub's week list. The task window also gets a "Last done" fact. A task still held by a name with no account keeps crediting that name and adds who marked it.

Release note: a client released before 0041 can still complete its own tasks and unheld tasks, but not someone else's. Deploy this client right after applying 0041 and refreshing the Data API schema cache (see infra/neon/README.md).

Checked locally: 29 database tests (new task_done_by.sql), every local API test on a disposable database and port, 669 web tests (new tests/task-done-by.test.tsx), typecheck, build and dump-schema.sh --check. I also tried it in Chromium on desktop and phone against a disposable database: letting go early leaves the task as it was, a full hold records it, and both names show in the task window.

Stacked on #36.

🤖 Generated with Claude Code

https://claude.ai/code/session_01A6P7aTcMBccooYYr4xYnVS


Generated by Claude Code

Anyone in a commune could tick any task, and the task then credited the
person whose turn it was, so it could be marked done for someone with
nobody's name beside theirs. Marking done a task someone else holds now
asks "Who did it?": "I did it" or "<name> did it", each pressed and held
until its bar fills. The database refuses the completion without an
answer (migration 0041), and last done records both names: who did it,
and who marked it for them or whose turn they covered. The history line
and the activity say the same. The rotation moves on as before.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01A6P7aTcMBccooYYr4xYnVS
@vercel

vercel Bot commented Oct 11, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated
commune-web Error Error Oct 11, 2026 8:37am UTC

Copy link
Copy Markdown
Owner Author

CI did not run on this commit. "Database, local API and worker", "Web app" and "Secret scan" each finished in about 2 seconds with no runner assigned (runner id 0). That is the same Actions stoppage already reported on #34 to #36, so no test ran and this PR did not cause it. I can't re-run jobs from this session (a re-run returns 403). Once Actions starts runners again, use "Re-run all jobs" on this PR.

Locally on this commit, everything passes: all 29 database tests, every local API test on a disposable database, all 669 web tests, typecheck, build and dump-schema.sh --check. The Vercel preview error is the known project setting problem, not this change.


Generated by Claude Code

@EmotiveImpact
EmotiveImpact changed the base branch from claude/app-review-street-runner to main October 12, 2026 02:01
@EmotiveImpact
EmotiveImpact marked this pull request as ready for review October 12, 2026 02:01
@EmotiveImpact
EmotiveImpact merged commit 95fe1b2 into main Oct 12, 2026
3 of 7 checks passed
@chatgpt-codex-connector

chatgpt-codex-connector Bot commented Oct 12, 2026 •

Copy link
Copy Markdown

Codex Review Summary

This comment shows the latest Codex review activity on this pull request.

Review Status Commit Review trigger
📝 Code Review ✅ Completed 2026-10-12T02:03:19.165943Z 9a89ce5 Draft marked ready
ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review" or "@codex security review".

Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings.

This branch had an error being deployed

1 failed deployment
Preview — 9a89ce57 Deployed Oct 11, 2026 by vercel[bot]
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants