feat: wiki search, metadata deploy fields, workflow cleanup #694

Merged
jmiller merged 9 commits from dev into main 2026-06-23 22:34:52 +00:00
Owner

Summary\n\n- Wiki full-text search (#550): case-insensitive search across all wiki page titles and content, web UI + API endpoint + MCP tool\n- Metadata deploy fields (#692): migration v360 adds deploy_host, deploy_port, deploy_user, deploy_path, docker_image, docker_registry, container_name, health_url to repo_manifest table\n- Workflow cleanup: removed 6 unneeded workflows (composer-publish, deploy-manual, security-audit, gitleaks, npm-publish, notify, workflow-sync-trigger)\n\n## Changes\n\n### Wiki Search\n- routers/web/repo/wiki.go — WikiSearch handler with recursive entry traversal\n- routers/api/v1/repo/wiki.go — GET /wiki/search?q=term API endpoint\n- routers/api/v1/api.go — register search route\n- templates/repo/wiki/search.tmpl — search results template\n- templates/repo/wiki/view.tmpl — add Search wiki link to dropdown\n\n### Metadata Deploy Fields\n- models/repo/repo_manifest.go — 8 new deploy columns\n- models/migrations/v1_27/v360.go — migration\n- models/migrations/migrations.go — register migration 359\n- routers/api/v1/repo/manifest.go — API struct + GET/PUT handlers\n- routers/web/repo/setting/metadata.go — preserve deploy fields on save\n\n### Workflow Cleanup\n- Removed: gitleaks.yml, npm-publish.yml, notify.yml, workflow-sync-trigger.yml, composer-publish.yml, deploy-manual.yml, security-audit.yml\n\n## Test plan\n- [ ] Wiki search: visit any repo wiki, click Search wiki in dropdown, search for a term\n- [ ] Wiki search API: GET /api/v1/repos/{owner}/{repo}/wiki/search?q=term returns results\n- [ ] Metadata API: PUT /metadata with deploy fields persists after v360 migration runs\n- [ ] Existing workflows still trigger correctly after cleanup

## Summary\n\n- **Wiki full-text search (#550)**: case-insensitive search across all wiki page titles and content, web UI + API endpoint + MCP tool\n- **Metadata deploy fields (#692)**: migration v360 adds deploy_host, deploy_port, deploy_user, deploy_path, docker_image, docker_registry, container_name, health_url to repo_manifest table\n- **Workflow cleanup**: removed 6 unneeded workflows (composer-publish, deploy-manual, security-audit, gitleaks, npm-publish, notify, workflow-sync-trigger)\n\n## Changes\n\n### Wiki Search\n- `routers/web/repo/wiki.go` — WikiSearch handler with recursive entry traversal\n- `routers/api/v1/repo/wiki.go` — GET /wiki/search?q=term API endpoint\n- `routers/api/v1/api.go` — register search route\n- `templates/repo/wiki/search.tmpl` — search results template\n- `templates/repo/wiki/view.tmpl` — add Search wiki link to dropdown\n\n### Metadata Deploy Fields\n- `models/repo/repo_manifest.go` — 8 new deploy columns\n- `models/migrations/v1_27/v360.go` — migration\n- `models/migrations/migrations.go` — register migration 359\n- `routers/api/v1/repo/manifest.go` — API struct + GET/PUT handlers\n- `routers/web/repo/setting/metadata.go` — preserve deploy fields on save\n\n### Workflow Cleanup\n- Removed: gitleaks.yml, npm-publish.yml, notify.yml, workflow-sync-trigger.yml, composer-publish.yml, deploy-manual.yml, security-audit.yml\n\n## Test plan\n- [ ] Wiki search: visit any repo wiki, click Search wiki in dropdown, search for a term\n- [ ] Wiki search API: GET /api/v1/repos/{owner}/{repo}/wiki/search?q=term returns results\n- [ ] Metadata API: PUT /metadata with deploy fields persists after v360 migration runs\n- [ ] Existing workflows still trigger correctly after cleanup
jmiller added 6 commits 2026-06-23 22:15:52 +00:00
docs: update README and changelog with wiki features documentation
Universal: Auto Version Bump / Version Bump (push) Successful in 20s
Deploy MokoGitea (Dev) / Build & Deploy to Dev (push) Failing after 1m1s
Universal: Pre-Release / Build Pre-Release (${{ inputs.stability || github.ref_name }}) (push) Successful in 1m3s
b283fad8bd
- README: rewrite with current feature set, fix stale code.mokoconsulting.tech URLs
- CHANGELOG: add missing wiki feature entries (#667, #668, #671, #673, #674, #675)
- Wiki Features page published to org wiki (standards/Wiki-Features)
feat(wiki): full-text search across wiki pages (#550)
Universal: Auto Version Bump / Version Bump (push) Successful in 20s
Deploy MokoGitea (Dev) / Build & Deploy to Dev (push) Failing after 1m25s
Universal: Pre-Release / Build Pre-Release (${{ inputs.stability || github.ref_name }}) (push) Successful in 1m16s
1178975be3
- Web: WikiSearch handler with case-insensitive search of titles and content
- Web: search.tmpl with search form and results display
- Web: "Search wiki" link added to wiki dropdown menu
- API: GET /wiki/search?q=term endpoint with pagination
- Recursive traversal handles nested folder wikis
chore: remove composer-publish.yml -- no longer needed
Universal: Auto Version Bump / Version Bump (push) Successful in 23s
Universal: Pre-Release / Build Pre-Release (${{ inputs.stability || github.ref_name }}) (push) Successful in 1m44s
Deploy MokoGitea (Dev) / Build & Deploy to Dev (push) Failing after 3m12s
ea05851d0a
chore: remove deploy-manual.yml -- no longer needed
Universal: Auto Version Bump / Version Bump (push) Successful in 25s
Deploy MokoGitea (Dev) / Build & Deploy to Dev (push) Failing after 3m2s
Universal: Pre-Release / Build Pre-Release (${{ inputs.stability || github.ref_name }}) (push) Successful in 1m33s
c9a8deee0e
chore: remove security-audit.yml -- handled by MokoGitea
Universal: Auto Version Bump / Version Bump (push) Successful in 19s
Universal: Pre-Release / Build Pre-Release (${{ inputs.stability || github.ref_name }}) (push) Successful in 1m36s
Deploy MokoGitea (Dev) / Build & Deploy to Dev (push) Failing after 1m6s
c974970118
feat(metadata): add deploy fields to repo metadata API (#692)
Universal: Auto Version Bump / Version Bump (push) Successful in 18s
Deploy MokoGitea (Dev) / Build & Deploy to Dev (push) Failing after 1m2s
Universal: Pre-Release / Build Pre-Release (${{ inputs.stability || github.ref_name }}) (push) Successful in 1m11s
Universal: PR Check / Build RC Package (pull_request) Blocked by required conditions
Universal: PR Check / Report Issues (pull_request) Blocked by required conditions
Generic: Repo Health / Scripts governance (pull_request) Blocked by required conditions
Generic: Repo Health / Repository health (pull_request) Blocked by required conditions
Generic: Repo Health / Report Issues (pull_request) Blocked by required conditions
Universal: PR Check / Branch Policy (pull_request) Successful in 1s
Generic: Repo Health / Site Health (pull_request) Has been skipped
Generic: Repo Health / Access control (pull_request) Successful in 2s
Universal: PR Check / Validate PR (pull_request) Failing after 10s
Universal: Build & Release / Promote to RC (pull_request) Failing after 18s
Universal: Build & Release / Build & Release Pipeline (pull_request) Has been skipped
PR RC Release / Build RC Release (pull_request) Failing after 1m16s
Universal: PR Check / Secret Scan (pull_request) Successful in 1m23s
7b68963b67
- Migration v360: adds deploy_host, deploy_port, deploy_user, deploy_path,
  docker_image, docker_registry, container_name, health_url to repo_manifest
- API: GET/PUT /metadata now includes deploy fields
- Settings: preserve deploy fields on web UI save
- Remove 4 unneeded workflows (gitleaks, npm-publish, notify, workflow-sync)
  - gitleaks will become built-in (#692)
  - npm-publish/notify not applicable to Go repo
  - workflow-sync moving to MokoCLI
jmiller added 1 commit 2026-06-23 22:25:59 +00:00
fix: handle DB errors in licensing API, fix wiki API URL-decode fallback
Universal: PR Check / Build RC Package (pull_request) Blocked by required conditions
Universal: PR Check / Report Issues (pull_request) Blocked by required conditions
Generic: Repo Health / Scripts governance (pull_request) Blocked by required conditions
Generic: Repo Health / Repository health (pull_request) Blocked by required conditions
Generic: Repo Health / Report Issues (pull_request) Blocked by required conditions
Universal: PR Check / Branch Policy (pull_request) Successful in 1s
Universal: PR Check / Validate PR (pull_request) Failing after 10s
Generic: Repo Health / Site Health (pull_request) Has been skipped
Generic: Repo Health / Access control (pull_request) Successful in 2s
Universal: Auto Version Bump / Version Bump (push) Successful in 16s
Universal: PR Check / Secret Scan (pull_request) Successful in 1m11s
Universal: Pre-Release / Build Pre-Release (${{ inputs.stability || github.ref_name }}) (push) Successful in 1m12s
Deploy MokoGitea (Dev) / Build & Deploy to Dev (push) Failing after 1m46s
PR RC Release / Build RC Release (pull_request) Failing after 1m38s
c8c74c7afe
- licensing/manage.go: capture Update/Delete errors instead of silently
  discarding them (UpdateLicense, UpdateTier, DeleteTier)
- wiki.go API: fix findEntryForFile to allow URL-decode fallback for
  non-ASCII page names (was returning on ErrNotExist instead of falling through)
jmiller added 1 commit 2026-06-23 22:28:45 +00:00
fix(metadata): support partial updates — only sent fields are changed
Universal: PR Check / Build RC Package (pull_request) Blocked by required conditions
Universal: PR Check / Report Issues (pull_request) Blocked by required conditions
Generic: Repo Health / Scripts governance (pull_request) Blocked by required conditions
Generic: Repo Health / Repository health (pull_request) Blocked by required conditions
Generic: Repo Health / Report Issues (pull_request) Blocked by required conditions
Universal: PR Check / Branch Policy (pull_request) Successful in 1s
Generic: Repo Health / Site Health (pull_request) Has been skipped
Generic: Repo Health / Access control (pull_request) Successful in 1s
Universal: PR Check / Validate PR (pull_request) Failing after 10s
Universal: Auto Version Bump / Version Bump (push) Successful in 16s
Universal: PR Check / Secret Scan (pull_request) Successful in 1m30s
Universal: Pre-Release / Build Pre-Release (${{ inputs.stability || github.ref_name }}) (push) Successful in 1m32s
PR RC Release / Build RC Release (pull_request) Failing after 2m28s
Deploy MokoGitea (Dev) / Build & Deploy to Dev (push) Failing after 2m32s
5c43cf1f02
Previously PUT /metadata replaced all fields, wiping any not included
in the request. Now loads existing metadata first and merges only the
fields present in the JSON body.
jmiller added 1 commit 2026-06-23 22:33:40 +00:00
docs: update changelog with wiki search, metadata deploy fields, fixes
Universal: PR Check / Build RC Package (pull_request) Blocked by required conditions
Universal: PR Check / Report Issues (pull_request) Blocked by required conditions
Generic: Repo Health / Scripts governance (pull_request) Blocked by required conditions
Generic: Repo Health / Repository health (pull_request) Blocked by required conditions
Generic: Repo Health / Report Issues (pull_request) Blocked by required conditions
Universal: PR Check / Branch Policy (pull_request) Successful in 2s
Universal: PR Check / Validate PR (pull_request) Failing after 14s
Universal: Auto Version Bump / Version Bump (push) Successful in 17s
Generic: Repo Health / Site Health (pull_request) Has been skipped
Generic: Repo Health / Access control (pull_request) Successful in 2s
Branch Cleanup / Delete merged branch (pull_request) Has been skipped
RC Revert / Rename rc/ back to dev/ (pull_request) Has been skipped
Deploy MokoGitea (Dev) / Build & Deploy to Dev (push) Failing after 1m30s
Universal: Pre-Release / Build Pre-Release (${{ inputs.stability || github.ref_name }}) (push) Successful in 1m35s
Universal: Build & Release / Promote to RC (pull_request) Has been skipped
Universal: PR Check / Secret Scan (pull_request) Successful in 2m30s
PR RC Release / Build RC Release (pull_request) Failing after 2m28s
Universal: Build & Release / Build & Release Pipeline (pull_request) Failing after 1m16s
f7d70ae95a
jmiller merged commit 9106cfe254 into main 2026-06-23 22:34:52 +00:00
Sign in to join this conversation.