Commit Graph

132 Commits

Author SHA1 Message Date
10c15d0e93 feat(ui): surface review readiness and blockers
Add readiness hints, blocker summaries, and progress cues across
the dataset review workspace to clarify partial recovery and
launch gating states.

Highlight read-only preview snapshots, pending semantic review,
clarification queue status, and unresolved validation blockers to
guide the next recommended action.

Document known limitations in backend test doubles so permission,
task dispatch, and uncovered persistence branches are explicit.
2026-03-21 15:48:28 +03:00
2da548fd71 fix: finalize semantic repair and test updates 2026-03-21 15:07:06 +03:00
81406bc2e2 fix: commit semantic repair changes 2026-03-21 11:22:25 +03:00
4d4f204f1c semantics 2026-03-20 20:01:58 +03:00
62d7c660ef subagents 2026-03-20 17:20:24 +03:00
7cff6bdcf8 semantic 2026-03-18 08:45:15 +03:00
8e317d7552 feat: add dataset review workspace navigation 2026-03-17 20:18:24 +03:00
5a16820979 fix(us3): align dataset review contracts and acceptance gates 2026-03-17 18:20:36 +03:00
b51a68168c feat(027): Final Phase T038-T043 implementation
- T038: SessionEvent logger and persistence logic
  - Added SessionEventLogger service with explicit audit event persistence
  - Added SessionEvent model with events relationship on DatasetReviewSession
  - Integrated event logging into orchestrator flows and API mutation endpoints

- T039: Semantic source version propagation
  - Added source_version column to SemanticFieldEntry
  - Added propagate_source_version_update() to SemanticResolver
  - Preserves locked/manual field invariants during propagation

- T040: Batch approval API and UI actions
  - Added batch semantic approval endpoint (/fields/semantic/approve-batch)
  - Added batch mapping approval endpoint (/mappings/approve-batch)
  - Added batch approval actions to SemanticLayerReview and ExecutionMappingReview components
  - Aligned batch semantics with single-item approval contracts

- T041: Superset compatibility matrix tests
  - Added test_superset_matrix.py with preview and SQL Lab fallback coverage
  - Tests verify client method preference and matrix fallback behavior

- T042: RBAC audit sweep on session-mutation endpoints
  - Added _require_owner_mutation_scope() helper
  - Applied owner guards to update_session, delete_session, and all mutation endpoints
  - Ensured no bypass of existing permission checks

- T043: i18n coverage for dataset-review UI
  - Added workspace state labels (empty/importing/review) to en.json and ru.json
  - Added batch action labels for semantics and mappings
  - Fixed workspace state comparison to lowercase strings
  - Removed hardcoded workspace state display strings

Signed-off-by: Implementation Specialist <impl@ss-tools>
2026-03-17 14:29:33 +03:00
f9fc2811a2 fix(027): stabilize shared acceptance gates and compatibility collateral 2026-03-17 11:07:49 +03:00
268ac66a38 feat(us1): add dataset review orchestration automatic review slice 2026-03-17 10:57:49 +03:00
a6a4288443 feat: initial dataset review orchestration flow implementation 2026-03-16 23:43:03 +03:00
57ac79f188 feat(frontend): polish task drawer and task log modal 2026-03-16 21:23:04 +03:00
67867f8220 refactor(semantics): migrate legacy @TIER to @COMPLEXITY annotations
- Replaced @TIER: TRIVIAL with @COMPLEXITY: 1
- Replaced @TIER: STANDARD with @COMPLEXITY: 3
- Replaced @TIER: CRITICAL with @COMPLEXITY: 5
- Manually elevated specific critical/complex components to levels 2 and 4
- Ignored legacy, specs, and node_modules directories
- Updated generated semantic map
2026-03-16 10:06:44 +03:00
bcce55fbf9 feat add connections management and health summary improvements 2026-03-15 16:40:43 +03:00
96b5282fe2 Finalize assistant and dashboard health updates 2026-03-15 13:19:46 +03:00
4efce79df5 Fix LLM validation and dashboard health hot paths 2026-03-15 13:18:51 +03:00
d867f52ae5 feat: Implement LLM provider deletion and refactor ConfigManager to preserve unknown payload sections. 2026-03-14 09:19:08 +03:00
a544a90cc9 Commit remaining workspace changes 2026-03-13 11:45:06 +03:00
a95109da4a feat: add slug-only dashboard profile filter and unify backend imports 2026-03-11 12:20:34 +03:00
a1edace9b7 fix logger import 2026-03-11 11:30:07 +03:00
abfe06cea3 Migrate frontend to Svelte 5 runes semantics 2026-03-11 11:29:24 +03:00
e50fc4c476 few shots update 2026-03-11 09:08:32 +03:00
acf0b8e83f semantic update 2026-03-10 21:33:09 +03:00
80102661db semantic clean up 2026-03-10 19:38:10 +03:00
b4b17d89b4 код написан 2026-03-10 12:00:18 +03:00
6775c7e3db feat(clean-release): complete compliance redesign phases and polish tasks T047-T052 2026-03-10 09:11:26 +03:00
328c666c37 rebase rework 2026-03-09 13:19:06 +03:00
d67824b270 feat: automatically align Git repository origin host with configured server URL to prevent mismatches 2026-03-08 11:28:00 +03:00
48ab6f9abd test(git): implement backend and frontend test coverage for git integration 2026-03-08 11:01:46 +03:00
1b2f76ee23 feat: Implement user profile preferences for start page, Git identity, and task drawer auto-open, alongside Git server default branch configuration. 2026-03-08 10:19:38 +03:00
1704b0f878 починили скачивание 2026-03-06 15:22:14 +03:00
b8eafa28a2 feat(rbac): hide unauthorized menu sections and enforce route guards 2026-03-06 10:50:28 +03:00
787f4e55f2 clean ui 2026-03-04 19:33:47 +03:00
ceddb799af Fix git/storage workflows: repos-only page, default dev branch, robust pull/push, and storage path resolution 2026-03-04 19:18:58 +03:00
0c68fbcef5 test: remediate and stabilize auxiliary backend and frontend tests
- Standardized task log, LLM provider, and report profile tests.
- Relocated auxiliary tests into __tests__ directories for consistency.
- Updated git_service and defensive guards with minor stability fixes discovered during testing.
- Added UX integration tests for the reports list component.
2026-03-04 13:54:06 +03:00
664e47d540 feat(clean-release): complete and verify backend test suite (33 passing tests)
- Relocated and standardized tests for clean_release subsystem into __tests__ sub-packages.
- Implemented missing unit tests for preparation_service, audit_service, and stages.
- Enhanced API contract tests for candidate preparation and compliance reporting.
- Updated 023-clean-repo-enterprise coverage matrix with final verification results.
- Fixed relative import issues and model validation mismatches during test migration.
2026-03-04 13:53:43 +03:00
9ff1e6b18a feat: Introduce and enforce test contract annotations for critical modules and update coverage tracking. 2026-03-04 12:58:42 +03:00
ede337b977 test: remediate audit findings for task log viewer, report card and logger tests 2026-03-03 21:01:24 +03:00
4f273f33ea chore: commit remaining workspace changes 2026-03-03 19:51:17 +03:00
ab7f1d0b59 dev-preprod-prod logic 2026-03-01 14:39:25 +03:00
73cd29a237 slug first logic 2026-03-01 13:17:05 +03:00
0a09fb5e6d git list refactor 2026-03-01 12:13:19 +03:00
a3a127b590 fix(dashboards): lazy-load git status for visible rows 2026-02-28 11:21:37 +03:00
4aba3df734 причесываем лог 2026-02-28 10:47:19 +03:00
68b6ed2cd8 fix(dashboards): stabilize grid layout and remove owners N+1 fallback 2026-02-28 10:46:47 +03:00
e4ed1af64c feat(dashboards): show owners and improve grid actions UI 2026-02-28 10:04:56 +03:00
a116ba77d8 workflows update 2026-02-28 00:04:55 +03:00
efce41b0c5 dry run migration 2026-02-27 20:48:18 +03:00
7f96a983a9 [
{
    "file": "backend/src/api/routes/__tests__/test_dashboards.py",
    "verdict": "APPROVED",
    "rejection_reason": "NONE",
    "audit_details": {
      "target_invoked": true,
      "pre_conditions_tested": true,
      "post_conditions_tested": true,
      "test_data_used": true
    },
    "feedback": "All 9 previous findings remediated. @TEST_FIXTURE data aligned, all @TEST_EDGE scenarios covered, all @PRE negative tests present, all @SIDE_EFFECT assertions added. Full contract compliance."
  },
  {
    "file": "backend/src/api/routes/__tests__/test_datasets.py",
    "verdict": "APPROVED",
    "rejection_reason": "NONE",
    "audit_details": {
      "target_invoked": true,
      "pre_conditions_tested": true,
      "post_conditions_tested": true,
      "test_data_used": true
    },
    "feedback": "All 6 previous findings remediated. Full @PRE boundary coverage including page_size>100, empty IDs, missing env. @SIDE_EFFECT assertions added. 503 error path tested."
  },
  {
    "file": "backend/src/core/auth/__tests__/test_auth.py",
    "verdict": "APPROVED",
    "rejection_reason": "NONE",
    "audit_details": {
      "target_invoked": true,
      "pre_conditions_tested": true,
      "post_conditions_tested": true,
      "test_data_used": true
    },
    "feedback": "All 4 previous findings remediated. @SIDE_EFFECT last_login verified. Inactive user @PRE negative test added. Empty hash edge case covered. provision_adfs_user tested for both new and existing user paths."
  },
  {
    "file": "backend/src/services/__tests__/test_resource_service.py",
    "verdict": "APPROVED",
    "rejection_reason": "NONE",
    "audit_details": {
      "target_invoked": true,
      "pre_conditions_tested": true,
      "post_conditions_tested": true,
      "test_data_used": true
    },
    "feedback": "Both prior recommendations implemented. Full edge case coverage for _get_last_task_for_resource. No anti-patterns detected."
  },
  {
    "file": "backend/tests/test_resource_hubs.py",
    "verdict": "APPROVED",
    "rejection_reason": "NONE",
    "audit_details": {
      "target_invoked": true,
      "pre_conditions_tested": true,
      "post_conditions_tested": true,
      "test_data_used": true
    },
    "feedback": "Pagination boundary tests added. All @TEST_EDGE scenarios now covered. No anti-patterns detected."
  },
  {
    "file": "frontend/src/lib/components/assistant/__tests__/assistant_chat.integration.test.js",
    "verdict": "APPROVED",
    "rejection_reason": "NONE",
    "audit_details": {
      "target_invoked": true,
      "pre_conditions_tested": true,
      "post_conditions_tested": true,
      "test_data_used": true
    },
    "feedback": "No changes since previous audit. Contract scanning remains sound."
  },
  {
    "file": "frontend/src/lib/components/assistant/__tests__/assistant_confirmation.integration.test.js",
    "verdict": "APPROVED",
    "rejection_reason": "NONE",
    "audit_details": {
      "target_invoked": true,
      "pre_conditions_tested": true,
      "post_conditions_tested": true,
      "test_data_used": true
    },
    "feedback": "No changes since previous audit. Confirmation flow testing remains sound."
  }
]
2026-02-27 09:59:57 +03:00