sciagent code + Gitea Actions CI/CD
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,172 @@
|
||||
# Governance Layer Status in be0
|
||||
|
||||
## Current State
|
||||
|
||||
### ✅ What EXISTS (Current Implementation)
|
||||
|
||||
The current `be0` codebase has:
|
||||
|
||||
1. **Basic Workflow System** (`src/domain/entities/workflow.py`, `src/application/services/workflow_service.py`)
|
||||
- SDLC/RM Integration workflow
|
||||
- Phase-based progression
|
||||
- Task/checklist management
|
||||
- **Location**: `be0/src/domain/entities/workflow.py`
|
||||
|
||||
2. **Compliance Verification** (`src/compliance_verifier.py`)
|
||||
- Ollama-based compliance checking
|
||||
- Text generation and similarity analysis
|
||||
- **Location**: `be0/src/compliance_verifier.py`
|
||||
|
||||
3. **Chat Assistant** (`src/chat_assistant.py`)
|
||||
- Policy Q&A functionality
|
||||
- Content verification
|
||||
- **Location**: `be0/src/chat_assistant.py`
|
||||
|
||||
4. **Architecture Foundation**
|
||||
- Domain/Application/Infrastructure layers
|
||||
- Repository pattern
|
||||
- API routes structure
|
||||
- **Location**: `be0/src/domain/`, `be0/src/application/`, `be0/src/api/`
|
||||
|
||||
---
|
||||
|
||||
## ❌ What's MISSING (Governance Layer for Initiatives)
|
||||
|
||||
The **Grassroots Initiative Recognition System** governance layer has **NOT been implemented yet**.
|
||||
|
||||
### Missing Components:
|
||||
|
||||
#### 1. **Initiative Management**
|
||||
- ❌ Initiative entity (initiative_id, group_type, status, etc.)
|
||||
- ❌ Author management (contribution percentages, lead author logic)
|
||||
- ❌ Unit/Appraisal Team entities
|
||||
- **Should be in**: `be0/src/domain/entities/initiative.py`
|
||||
|
||||
#### 2. **Business Rules Engine**
|
||||
- ❌ Novelty checker (duplicate detection)
|
||||
- ❌ Scoring algorithm (Group 01 dual/triple reviewer)
|
||||
- ❌ Auto-classification (Group 02)
|
||||
- ❌ Author contribution validator
|
||||
- **Should be in**: `be0/src/domain/rules/` or `be0/src/application/rules/`
|
||||
|
||||
#### 3. **Workflow State Machine**
|
||||
- ❌ Initiative state transitions (DRAFT → SUBMITTED → UNIT_REVIEW → etc.)
|
||||
- ❌ Deadline enforcement
|
||||
- ❌ SLA tracking
|
||||
- **Should be in**: `be0/src/application/state_machine.py` or `be0/src/domain/workflows/initiative_workflow.py`
|
||||
|
||||
#### 4. **Review Management**
|
||||
- ❌ Review assignment logic
|
||||
- ❌ Blind review enforcement
|
||||
- ❌ Score conflict detection
|
||||
- ❌ Reviewer assignment service
|
||||
- **Should be in**: `be0/src/application/services/review_service.py`
|
||||
|
||||
#### 5. **Document Management**
|
||||
- ❌ Form templates (Form 01, 03, 05, 06)
|
||||
- ❌ Document versioning
|
||||
- ❌ File storage integration
|
||||
- **Should be in**: `be0/src/infrastructure/storage/`
|
||||
|
||||
#### 6. **API Endpoints**
|
||||
- ❌ `/api/v1/initiatives` (CRUD)
|
||||
- ❌ `/api/v1/initiatives/{id}/submit`
|
||||
- ❌ `/api/v1/initiatives/{id}/reviews`
|
||||
- ❌ `/api/v1/reviews/{review_id}/score`
|
||||
- ❌ `/api/v1/initiatives/{id}/appeal`
|
||||
- **Should be in**: `be0/src/api/routes/initiatives.py`
|
||||
|
||||
---
|
||||
|
||||
## Recommended Structure for Governance Layer
|
||||
|
||||
```
|
||||
be0/src/
|
||||
├── domain/
|
||||
│ ├── entities/
|
||||
│ │ ├── initiative.py # ❌ MISSING
|
||||
│ │ ├── author.py # ❌ MISSING
|
||||
│ │ ├── review.py # ❌ MISSING
|
||||
│ │ ├── unit.py # ❌ MISSING
|
||||
│ │ └── appraisal_team.py # ❌ MISSING
|
||||
│ ├── rules/
|
||||
│ │ ├── novelty_checker.py # ❌ MISSING
|
||||
│ │ ├── scoring_engine.py # ❌ MISSING
|
||||
│ │ ├── duplicate_detector.py # ❌ MISSING
|
||||
│ │ └── classification_engine.py # ❌ MISSING
|
||||
│ └── workflows/
|
||||
│ └── initiative_workflow.py # ❌ MISSING
|
||||
├── application/
|
||||
│ ├── services/
|
||||
│ │ ├── initiative_service.py # ❌ MISSING
|
||||
│ │ ├── review_service.py # ❌ MISSING
|
||||
│ │ ├── notification_service.py # ❌ MISSING
|
||||
│ │ └── deadline_service.py # ❌ MISSING
|
||||
│ └── state_machine.py # ❌ MISSING
|
||||
├── infrastructure/
|
||||
│ ├── storage/
|
||||
│ │ └── file_storage.py # ❌ MISSING
|
||||
│ └── database/
|
||||
│ └── models.py # ❌ MISSING (SQLAlchemy models)
|
||||
└── api/
|
||||
└── routes/
|
||||
├── initiatives.py # ❌ MISSING
|
||||
├── reviews.py # ❌ MISSING
|
||||
└── reports.py # ❌ MISSING
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## What to Build Next
|
||||
|
||||
Based on the simplified tech stack we discussed, here's the implementation order:
|
||||
|
||||
### Phase 1: Core Entities & Database
|
||||
1. Create database models (PostgreSQL)
|
||||
2. Create domain entities (Initiative, Author, Review, etc.)
|
||||
3. Create repository interfaces
|
||||
|
||||
### Phase 2: Business Rules
|
||||
1. Novelty checker (using PostgreSQL pg_trgm)
|
||||
2. Scoring engine
|
||||
3. Auto-classification logic
|
||||
|
||||
### Phase 3: Workflow
|
||||
1. State machine implementation
|
||||
2. Transition rules
|
||||
3. Deadline tracking
|
||||
|
||||
### Phase 4: API & Services
|
||||
1. Initiative service
|
||||
2. Review service
|
||||
3. API endpoints
|
||||
4. Document upload
|
||||
|
||||
---
|
||||
|
||||
## Current vs. Required
|
||||
|
||||
| Component | Current | Required | Status |
|
||||
|-----------|---------|----------|--------|
|
||||
| Workflow (SDLC) | ✅ | ✅ | Implemented |
|
||||
| Initiative Management | ❌ | ✅ | **Missing** |
|
||||
| Business Rules | ❌ | ✅ | **Missing** |
|
||||
| Review System | ❌ | ✅ | **Missing** |
|
||||
| State Machine | ❌ | ✅ | **Missing** |
|
||||
| Document Storage | ❌ | ✅ | **Missing** |
|
||||
| Scoring Engine | ❌ | ✅ | **Missing** |
|
||||
|
||||
---
|
||||
|
||||
## Next Steps
|
||||
|
||||
To implement the governance layer:
|
||||
|
||||
1. **Start with database schema** - Create PostgreSQL tables for initiatives, authors, reviews
|
||||
2. **Create domain entities** - Python classes for Initiative, Author, Review
|
||||
3. **Implement business rules** - Novelty checker, scoring engine
|
||||
4. **Build state machine** - Workflow transitions
|
||||
5. **Create API endpoints** - RESTful APIs for frontend
|
||||
6. **Add document storage** - Local filesystem integration
|
||||
|
||||
The foundation (layered architecture, FastAPI, PostgreSQL) is already in place - you just need to build the governance-specific components on top of it.
|
||||
Reference in New Issue
Block a user