| Age | Commit message (Collapse) | Author |
|
All tests pass. Let me summarize the implementation:
I've added a human notes field for intervention tasks with the
following
1. **Omni/Task/Core.hs**:
- Added `retryNotes :: Maybe Text` field to `RetryContext` data type
- Added `notes` column to `retryContextColumns` for schema migration
- Updated `getRetryContext` to fetch the notes field from DB -
Updated `setRetryContext` to save the notes field to DB - Updated
`getAllRetryContexts` to include notes - Added `updateRetryNotes ::
Text -> Text -> IO ()` function to updat
2. **Omni/Jr/Web.hs**:
- Added new API endpoint: `POST /tasks/:id/notes` - Added
`NotesForm` type and `FromForm` instance - Added `taskNotesHandler`
to save notes - Updated `renderRetryContextBanner` to accept task
ID and display:
- Notes textarea form when max retries exceeded (intervention
tasks - Existing notes display for non-critical retry banners
3. **Omni/Agent/Worker.hs**:
- Updated worker prompt to include human notes/guidance in the
retry - Preserved existing notes when setting new retry context
4. **Omni/Jr.hs**:
- Updated all `RetryContext` creations to preserve existing notes
Task-Id: t-153.5
|
|
|
|
All tests pass and lint is clean. The implementation adds Gerrit-style
c
1. **`gatherConflictContext`** - Creates rich context including:
- The commit info (SHA, subject, body) - Current HEAD state (what
branch moved to) - Per-file conflict details showing both your
changes and recent chan
2. **`getFileConflictInfo`** - For each conflicting file, shows:
- Your changes to that file (stat summary) - Recent changes by
others (last 3 commits touching the file)
3. The context is stored in `retryReason` and passed to the worker
via t
Task-Id: t-1o2g8gudqlx
|
|
All tests pass. The implementation is complete:
**Summary of changes:** 1. Removed sqids dependency from
`Omni/Task/Core.hs`, `Omni/Task.hs`, an 2. Changed `generateId` in
`Omni/Task/Core.hs` to produce simple sequent 3. Removed the now-unused
`sqidsOptions` configuration and `Web.Sqids` i
Task-Id: t-1o2g8gu9y2z
|
|
All tests pass. The task is complete:
- ✅ `jr task list` works - ✅ `jr task create` works - ✅ `jr task
show` works - ✅ All Omni/Task commands accessible via `jr task` -
✅ Reuses Omni.Task logic - ✅ Added tests for task command parsing -
✅ `bild --test Omni/Jr.hs` passes
Task-Id: t-1o2egbj8o0n.2
|
|
- More explicit prompt: MUST run bild --test, fix hlint issues -
Add workerQuiet flag to disable ANSI status bar in loop mode - Loop
mode uses simple putText, manual jr work keeps status bar
|
|
|
|
- Reorder loop to check pending reviews before starting new work -
Loop no longer exits on missing commit (skips instead) - Add [loop],
[review], [worker] prefixes to all log messages - Worker leaves task
in InProgress on amp failure (avoids retry loop)
|
|
- Remove task sync from pre-commit hook - Remove task import from
post-merge and post-checkout hooks - Remove merge driver config from
post-checkout - Remove merge-driver command from jr - Update Task
README for SQLite storage - Delete outdated WORKER_AGENT_GUIDE.md
Amp-Thread-ID:
https://ampcode.com/threads/T-f2358f5a-2d4a-47e7-a895-6647474d8311
Co-authored-by: Amp <amp@ampcode.com>
|
|
Task-Id: t-1o2g8gugkr1
|
|
- jr review [<task-id>] [--auto]: auto-accepts if tests pass -
jr review (no args): picks first task in Review status - jr loop
[--delay=N]: runs work->review loop continuously - Auto-review runs
bild --test on task namespace
Task-Id: t-1o2g8gugkr1
|
|
Task-Id: t-1o2g8gugkr1.1
|
|
- Add RetryContext to track failed attempts (merge conflicts,
rejections) - jr review checks for clean cherry-pick before showing
diff - If conflict detected, kicks back to coder with context -
Worker prompt includes retry context (attempt count, conflict files,
reason) - After 3 failed attempts, marks task for human intervention
Task-Id: t-1o2g8gudqlx
|
|
Task-Id: t-1o2g8gu6p8o
|
|
- jr review <task-id>: show diff, accept/reject/skip - Worker uses
--try-opus for better code quality - Commit messages use Task-Id:
trailer (Gerrit-style)
Task-Id: t-1o2g8gu6p8o
|
|
Moves the 'agent start' and 'agent merge-driver' commands to 'jr work'
and 'jr merge-driver' respectively. Deletes Omni/Agent.hs as it is
no longer the entry point.
Amp-Thread-ID:
https://ampcode.com/threads/T-ac41b9b6-d117-46de-9e4f-842887a22f1d
Co-authored-by: Amp <amp@ampcode.com>
|
|
I have implemented the `jr work` command in `Omni/Jr.hs`.
**Changes:** 1. **Modified `Omni/Jr.hs`**:
* Added necessary imports (`Omni.Agent.Core`, `Omni.Agent.Worker`,
`System.Directory`, `System.FilePath`, `Data.Text`). * Updated
the Docopt usage to include `jr work [<task-id>]`. * Implemented
the `work` command handler in the `move` function to initialize
a `Worker` and call `Worker.start`, mirroring the logic in
`Omni/Agent.hs`. * Added unit tests to verify parsing of the
`work` command with and without a task ID.
**Verification:** * Ran `bild --test Omni/Jr.hs` which passed,
confirming the code compiles and tests pass. * Ran `lint Omni/Jr.hs`
which passed. * Verified `_/bin/jr --help` shows the new command.
I am now ready to exit.
|
|
The 'harvest' functionality was tied to git-synced JSONL task files,
which have been replaced by a local SQLite database. This commit
removes the command from the CLI and updates documentation to reflect
the new workflow.
Amp-Thread-ID:
https://ampcode.com/threads/T-ac41b9b6-d117-46de-9e4f-842887a22f1d
Co-authored-by: Amp <amp@ampcode.com>
|
|
I have successfully integrated the existing `Omni/Task` functionality
into `jr`.
The `Omni/Jr.hs` file already had the logic to forward `task`
commands to `Omni/Task.main`, but it was failing to compile/run
because it was missing a dependency declaration for `sqlite-simple`
(which `Omni/Task` relies on).
I added the missing dependency to `Omni/Jr.hs`: ```haskell -- :
dep sqlite-simple ```
I verified the fix by running: 1. `Omni/Ide/run.sh Omni/Jr.hs task
list` - Verified it lists tasks correctly. 2. `Omni/Ide/run.sh
Omni/Jr.hs task create "Test Task via Jr"` - Verified it creates tasks.
3. `Omni/Ide/run.sh Omni/Jr.hs task show <id>` - Verified it shows
task details. 4. `Omni/Ide/run.sh Omni/Jr.hs task -h` - Verified
it shows `task` specific help. 5. `Omni/Ide/run.sh Omni/Jr.hs task
test` - Verified it runs the `Omni/Task` test suite. 6. `bild --test
Omni/Jr.hs` - Verified `Omni/Jr.hs` itself builds and passes its
own tests.
All `jr task` commands now behave exactly like the `task` command,
fulfilling the requirements. The existing `Omni/Task` logic is
fully reused.
|
|
|
|
Amp-Thread-ID:
https://ampcode.com/threads/T-663b6704-a8b0-4983-a62f-0ef00c61410c
Co-authored-by: Amp <amp@ampcode.com>
|