ed3d5f3039
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
18bdde0a81
fix(027): stabilize shared acceptance gates and compatibility collateral
2026-03-17 11:07:49 +03:00
023bacde39
feat(us1): add dataset review orchestration automatic review slice
2026-03-17 10:57:49 +03:00
c957207bce
fix: repository collaborator access and stale findings persistence issues
2026-03-16 23:43:37 +03:00
f4416c3ebb
feat: initial dataset review orchestration flow implementation
2026-03-16 23:43:03 +03:00
7e4124bc3f
chore: update semantic contracts and git merge handling
2026-03-16 20:34:28 +03:00
274510fc38
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
54e90b589b
chore(semantics): checkpoint orphan-reduction hub normalization batch
2026-03-15 22:14:05 +03:00
0bf55885a8
chore(semantic): remediate backend core contracts
2026-03-15 21:23:44 +03:00
84a2cd5429
chore(semantic): checkpoint remediation progress
2026-03-15 21:08:00 +03:00
027d17f193
feat add connections management and health summary improvements
2026-03-15 16:40:43 +03:00
eba0fab091
fix dashboard validation fallback and semantic relation parsing
2026-03-15 16:32:39 +03:00
a8563a8369
Fix LLM validation and dashboard health hot paths
2026-03-15 13:18:51 +03:00
feb07bf366
security: rotate bootstrap and clean workspace
2026-03-13 12:14:37 +03:00
03a90f58bd
Commit remaining workspace changes
2026-03-13 11:45:06 +03:00
a13f75587d
feat: add slug-only dashboard profile filter and unify backend imports
2026-03-11 12:20:34 +03:00
542835e0ff
semantic clean up
2026-03-10 19:38:10 +03:00
31717870e3
код написан
2026-03-10 12:00:18 +03:00
82435822eb
fix(dashboards): normalize naive/aware datetimes in resource task ordering
2026-03-10 09:29:40 +03:00
3a8c82918a
fix(clean-release): replace absolute backend imports for runtime packaging
2026-03-10 09:25:50 +03:00
87b81a365a
feat(clean-release): complete compliance redesign phases and polish tasks T047-T052
2026-03-10 09:11:26 +03:00
309dfdba86
rebase rework
2026-03-09 13:19:06 +03:00
c7e9b5b6c5
feat: automatically align Git repository origin host with configured server URL to prevent mismatches
2026-03-08 11:28:00 +03:00
e864a9e08b
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
5bd20c74fe
fix(profile-filter): support owner object payloads and normalize owners response
2026-03-06 15:02:03 +03:00
633c4948f1
feat(rbac): auto-sync permission catalog from declared route/plugin guards
2026-03-06 11:30:58 +03:00
e7cb5237d3
feat(rbac): hide unauthorized menu sections and enforce route guards
2026-03-06 10:50:28 +03:00
f066d5561b
clean ui
2026-03-04 19:33:47 +03:00
7ff0dfa8c6
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
4fec2e02ad
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
c5a0823b00
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
de1f04406f
feat: Introduce and enforce test contract annotations for critical modules and update coverage tracking.
2026-03-04 12:58:42 +03:00
c473a09402
fix repo place
2026-03-04 10:04:40 +03:00
a15a2aed25
move test
2026-03-04 09:18:42 +03:00
a8f1a376ab
[
...
{
"file": "frontend/src/components/__tests__/task_log_viewer.test.js",
"verdict": "APPROVED",
"rejection_reason": "NONE",
"audit_details": {
"target_invoked": true,
"pre_conditions_tested": true,
"post_conditions_tested": true,
"test_fixture_used": true,
"edges_covered": true,
"invariants_verified": true,
"ux_states_tested": true,
"semantic_anchors_present": true
},
"coverage_summary": {
"total_edges": 2,
"edges_tested": 2,
"total_invariants": 1,
"invariants_tested": 1,
"total_ux_states": 3,
"ux_states_tested": 3
},
"tier_compliance": {
"source_tier": "CRITICAL",
"meets_tier_requirements": true
},
"feedback": "Remediation successful: test tier matches CRITICAL, missing missing @TEST_EDGE no_task_id coverage added, test for @UX_FEEDBACK (autoScroll) added properly, missing inline=false (show=true) tested properly. Semantic RELATION tag fixed to VERIFIES."
},
{
"file": "frontend/src/lib/components/reports/__tests__/report_card.ux.test.js",
"verdict": "APPROVED",
"rejection_reason": "NONE",
"audit_details": {
"target_invoked": true,
"pre_conditions_tested": true,
"post_conditions_tested": true,
"test_fixture_used": true,
"edges_covered": true,
"invariants_verified": true,
"ux_states_tested": true,
"semantic_anchors_present": true
},
"coverage_summary": {
"total_edges": 2,
"edges_tested": 2,
"total_invariants": 1,
"invariants_tested": 1,
"total_ux_states": 2,
"ux_states_tested": 2
},
"tier_compliance": {
"source_tier": "CRITICAL",
"meets_tier_requirements": true
},
"feedback": "Remediation successful: @TEST_EDGE random_status and @TEST_EDGE empty_report_object tests explicitly assert on outcomes, @TEST_FIXTURE tested completely, Test tier switched to CRITICAL."
},
{
"file": "backend/tests/test_logger.py",
"verdict": "APPROVED",
"rejection_reason": "NONE",
"audit_details": {
"target_invoked": true,
"pre_conditions_tested": true,
"post_conditions_tested": true,
"test_fixture_used": true,
"edges_covered": true,
"invariants_verified": true,
"ux_states_tested": false,
"semantic_anchors_present": true
},
"coverage_summary": {
"total_edges": 0,
"edges_tested": 0,
"total_invariants": 0,
"invariants_tested": 0,
"total_ux_states": 0,
"ux_states_tested": 0
},
"tier_compliance": {
"source_tier": "STANDARD",
"meets_tier_requirements": true
},
"feedback": "Remediation successful: Test module semantic anchors added [DEF] and [/DEF] explicitly. Added missing @TIER tag and @RELATION: VERIFIES -> src/core/logger.py at the top of the file."
}
]
2026-03-03 21:05:29 +03:00
a9c0d55ec8
chore: commit remaining workspace changes
2026-03-03 19:51:17 +03:00
b7960344e0
dev-preprod-prod logic
2026-03-01 14:39:25 +03:00
165f91b399
slug first logic
2026-03-01 13:17:05 +03:00
4769fbd258
git list refactor
2026-03-01 12:13:19 +03:00
e15eb115c2
fix(dashboards): lazy-load git status for visible rows
2026-02-28 11:21:37 +03:00
81a2e5fd61
причесываем лог
2026-02-28 10:47:19 +03:00
4c8de2aaf6
workflows update
2026-02-28 00:04:55 +03:00
2bc96af23f
[
...
{
"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
2b8e20981e
test contracts
2026-02-26 19:40:00 +03:00
539d0f0aba
test now STANDARD tier
2026-02-26 18:38:26 +03:00
a8ccf6cb79
codex specify
2026-02-25 21:19:48 +03:00
804e9c7e47
+ git config
2026-02-25 20:27:29 +03:00
6d068b7cea
feat: Enhance ID mapping service robustness, add defensive guards, and expand migration engine and API testing.
2026-02-25 14:44:21 +03:00
6e9f4642db
{ "verdict": "APPROVED", "rejection_reason": "NONE", "audit_details": { "target_invoked": true, "pre_conditions_tested": true, "post_conditions_tested": true, "test_data_used": true }, "feedback": "Both test files have successfully passed the audit. The 'task_log_viewer.test.js' suite now correctly imports and mounts the real Svelte component using Test Library, fully eliminating the logic mirror/tautology issue. The 'test_logger.py' suite now properly implements negative tests for the @PRE constraint in 'belief_scope' and fully verifies all @POST effects triggered by 'configure_logger'." }
2026-02-24 21:55:13 +03:00
64b7ab8703
semantic update
2026-02-24 21:08:12 +03:00