Skip to content

Build Taxonomy Workbench#3

Open
Spbd1 wants to merge 1 commit into
codex/build-taxonomy-first-import-systemfrom
codex/build-taxonomy-workbench-features
Open

Build Taxonomy Workbench#3
Spbd1 wants to merge 1 commit into
codex/build-taxonomy-first-import-systemfrom
codex/build-taxonomy-workbench-features

Conversation

@Spbd1
Copy link
Copy Markdown
Owner

@Spbd1 Spbd1 commented May 18, 2026

Motivation

  • Provide a Chrome-first workbench for inspecting, searching, filtering, validating, importing/exporting, and activating/deactivating taxonomy entries.
  • Surface coverage and quality reports to support safe rollout of taxonomy changes.
  • Make import/export and activation operations safe for local YAML-backed workflows by creating timestamped backups before changing files.

Description

  • Add full taxonomy browsing/search/filter/detail API and response schemas with endpoints: GET /taxonomy, GET /taxonomy/{risk_id}, GET /taxonomy/search, GET /taxonomy/categories, and GET /taxonomy/summary (backend files: backend/app/api/routes_taxonomy.py, backend/app/schemas/taxonomy.py, backend/app/services/taxonomy_service.py).
  • Implement workbench endpoints for packs, coverage, quality report, validation, Excel import/export, and activation updates: GET /taxonomy-workbench/packs, GET /taxonomy-workbench/coverage, GET /taxonomy-workbench/quality-report, POST /taxonomy-workbench/validate, POST /taxonomy-workbench/import-excel, GET /taxonomy-workbench/export-excel, and PATCH /taxonomy-workbench/entries/{risk_id}/activation (backend files: backend/app/api/routes_taxonomy_workbench.py, backend/app/schemas/taxonomy_workbench.py, backend/app/services/taxonomy_workbench_service.py).
  • Add taxonomy indexer, search/filter/faceting helpers and a quality/coverage audit engine used by the workbench (engine files: engine/argument_risk_engine/taxonomy/indexer.py, engine/argument_risk_engine/taxonomy/quality_audit.py).
  • Implement safe import/export: Excel import reads workbook, validates, writes YAML packs and creates timestamped backups; export returns downloadable .xlsx generated from current pack (import/export implemented in workbench service and engine exporter/importer).
  • Implement activation changes that mutate the appropriate local YAML pack file with a timestamped backup created beforehand; changes update in-memory active pack when the modified file is the active pack.
  • Frontend: add Chrome UI components for taxonomy and workbench including TaxonomyPage, TaxonomyTable, TaxonomyFilters, TaxonomyDetailDrawer, and workbench panels for import/export, quality, coverage, and activation (files under frontend/src/components/taxonomy* and frontend/src/components/taxonomy_workbench/*), plus client API methods (frontend/src/api/client.ts, frontend/src/api/types.ts) and styling (frontend/src/styles/global.css).
  • Minor infra updates: test client / FastAPI test stub improvements to support file uploads and response headers, and python-multipart added to pyproject.toml to support real FastAPI uploads.

Testing

  • Ran the full Python test suite with pytest -q, all tests passed (17 passed, 3 warnings).
  • Built the frontend with npm run build --prefix frontend, which produced the dist build successfully.
  • Ran static checks with python -m ruff check ... over the modified backend/engine/test files and fixed import/style issues; ruff checks passed.
  • Exercised key API flows with the test client (list/search/detail/summary, workbench packs/coverage/quality validation, export download, and activation patch) during automated tests which succeeded.

Codex Task

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant