36 lines
1.8 KiB
Markdown
36 lines
1.8 KiB
Markdown
# #703 Git Wrapper Interactive and Auth Resilience
|
|
|
|
## Objective
|
|
|
|
Restore the deployed Git wrapper contract: issue-create supports interactive invocation and Gitea mutation behavior tolerates a stale Tea authenticated user by validating current identity and using the existing host-scoped API fallback.
|
|
|
|
## Scope
|
|
|
|
- `packages/mosaic/framework/tools/git/issue-create.sh`
|
|
- `packages/mosaic/framework/tools/git/detect-platform.sh`
|
|
- Git wrapper regression harnesses
|
|
- This scratchpad
|
|
|
|
## Requirements / acceptance evidence
|
|
|
|
1. `issue-create -i` and `--interactive` prompt for missing issue fields without exposing credentials.
|
|
2. Explicit command-line fields retain precedence and do not trigger prompt input.
|
|
3. Gitea wrapper resolves the current user dynamically from the target host and does not rely on the saved Tea user identity.
|
|
4. A Tea `GetUserByName` failure falls back to authenticated API creation.
|
|
5. Existing body-safety, login-resolution, issue-create, and pr-create paths remain green.
|
|
6. Source framework is re-seeded to deployed `~/.config/mosaic`, then deployed wrappers are verified end to end.
|
|
|
|
## Plan
|
|
|
|
1. Add failing shell regression harness for interactive input and stale Tea user fallback.
|
|
2. Implement minimal helper and parser changes.
|
|
3. Run wrapper harnesses, syntax checks, and repository baseline checks.
|
|
4. Re-seed deployed framework and run live wrapper verification.
|
|
5. Commit, queue guard, push, open PR, and stop for independent review.
|
|
|
|
## Progress
|
|
|
|
- Issue #703 filed before code; issue comment records #536 root cause and stale-login trigger.
|
|
- Deployed wrapper `issue-create.sh -i` reproduced: `Unknown option: -i` (exit 1).
|
|
- Live Tea mutation did not reproduce `GetUserByName` on this host because the current mosaicstack Tea login is valid. The test harness will model the reported stale authenticated-user condition.
|