38e06da3a6
Record the recent handoff and redMCP commits, refresh intentionally untracked file notes, and capture the latest redMCP lint/test validation commands and results.
90 lines
3.7 KiB
Markdown
90 lines
3.7 KiB
Markdown
## Cleanup Notes ~ May 6, 2026
|
|
|
|
This repository currently mixes multiple partially finished workstreams. The
|
|
goal is to recover to a clean, reviewable git state with focused commits so
|
|
normal development can continue.
|
|
|
|
## Scope and constraints
|
|
|
|
- `TODO.md` is long-horizon context and is out of scope for this cleanup pass.
|
|
- `redMCP/` is actively used on this machine; do not delete files in that tree
|
|
and do not stop running `redMCP` processes during cleanup.
|
|
- `redMCP/startProd.sh` is a local convenience script and is intentionally not a
|
|
project artifact for this cleanup. Ignore it.
|
|
- Use `plugins/redmine_contacts_helpdesk/LOCAL_CHANGELOG.md` as a primary anchor
|
|
for reconstructing intent and grouping related changes.
|
|
|
|
## Recovered change groups
|
|
|
|
The current dirty tree appears to contain these distinct units:
|
|
|
|
1. Helpdesk issue API `include=helpdesk` patch and docs/manifest.
|
|
2. Post-import automation and validator/worker hardening.
|
|
3. Semantic index service, deployment assets, tests, and runbooks.
|
|
4. redMCP feature expansion (HTTP handler/server, client/dispatcher updates,
|
|
tests, docs).
|
|
5. Skill metadata/docs under `skills/redmine-communicator/`.
|
|
|
|
## Working checklist
|
|
|
|
- [x] Inventory all modified and untracked files.
|
|
- [x] Identify likely project groupings for clean commits.
|
|
- [x] Confirm `LOCAL_CHANGELOG.md` aligns with Helpdesk API patch files.
|
|
- [x] Stage and commit Helpdesk API patch as a focused unit.
|
|
- [x] Stage and commit post-import automation as a focused unit.
|
|
- [x] Stage and commit semantic index files as a focused unit.
|
|
- [x] Stage and commit redMCP feature updates as a focused unit.
|
|
- [x] Stage and commit redmine-communicator skill files (optional split).
|
|
- [x] Run targeted syntax/tests for each committed unit.
|
|
- [x] Confirm final worktree state and note any intentionally uncommitted files.
|
|
|
|
## Cleanup result
|
|
|
|
Committed units:
|
|
|
|
- `fba494d` Add Helpdesk issue API include serializer
|
|
- `faad708` Automate post-import refresh and validation workflow
|
|
- `b305544` Add semantic-index service, deployment assets, and tests
|
|
- `4c931ba` Expand redMCP safe issue operations and HTTP handling
|
|
- `42fc831` Add redmine-communicator skill docs and setup tooling
|
|
- `def9084` Handoff notes for next agent/workflow
|
|
- `22c8e91` Sanitize noisy MCP text fields by default
|
|
- `a7d23cd` Resolve human project names in MCP project_id args
|
|
|
|
Intentionally untracked local files:
|
|
|
|
- `redMCP/startProd.sh`
|
|
- `roadmap/`
|
|
|
|
Recent validation run for redMCP changes:
|
|
|
|
- `php -l app/McpDispatcher.php`
|
|
- `php -l app/McpEnvironment.php`
|
|
- `php -l app/mcp-http-router.php`
|
|
- `php -l bin/redmcp-server.php`
|
|
- `php -l bin/test-redmine-structure.php`
|
|
- `php bin/test-redmine-structure.php` (`OK 90 assertions`)
|
|
|
|
## Handoff notes for next session
|
|
|
|
- Gitea private repo is created and current history was pushed.
|
|
- Monorepo approach is acceptable; keep path-scoped commits and deployment-unit
|
|
boundaries.
|
|
- Production semantic-index target is a separate host from production Redmine.
|
|
- redMCP improvement focus is operational quality:
|
|
- useful error/access logging without console spam,
|
|
- easy background operation,
|
|
- simple install/remove/status workflow.
|
|
- A single fixed systemd service is not preferred for redMCP because multiple
|
|
concurrent identities/API keys may be needed. Prefer an instance model.
|
|
- If systemd is used for redMCP, implement a simple operator script with
|
|
`install`, `remove`, and `status` flows.
|
|
|
|
## Notes to keep in mind
|
|
|
|
- Do not commit secrets (`.env`, tokens, credentials).
|
|
- `semantic_index/search.sh.md` looks like conversational scratch text; treat as
|
|
optional/non-essential unless deliberately kept.
|
|
- If a file belongs to multiple units, prefer smallest safe unit first and
|
|
document rationale in commit messages.
|