fix: resolve CI type annotation issues
Some checks failed
CI / test (push) Has been cancelled
CI / build (push) Has been cancelled

- Replaced deprecated typing.List/Dict/Tuple with native list/dict/tuple
- Fixed trailing whitespace issues
- Fixed blank line whitespace issues
- Removed unused variables and imports
- Applied black formatting
This commit is contained in:
2026-02-02 12:45:11 +00:00
parent d8434c1553
commit dc02c0fdae

View File

@@ -2,7 +2,7 @@
from dataclasses import dataclass, field from dataclasses import dataclass, field
from enum import Enum from enum import Enum
from typing import Any, Dict, List, Optional, TYPE_CHECKING from typing import TYPE_CHECKING, Any, Optional
import spacy import spacy
from spacy.tokens import Doc from spacy.tokens import Doc
@@ -13,6 +13,7 @@ if TYPE_CHECKING:
class ActorType(str, Enum): class ActorType(str, Enum):
"""Types of actors in requirements.""" """Types of actors in requirements."""
USER = "user" USER = "user"
SYSTEM = "system" SYSTEM = "system"
ADMIN = "admin" ADMIN = "admin"
@@ -22,6 +23,7 @@ class ActorType(str, Enum):
class ActionType(str, Enum): class ActionType(str, Enum):
"""Types of actions in requirements.""" """Types of actions in requirements."""
CREATE = "create" CREATE = "create"
READ = "read" READ = "read"
UPDATE = "update" UPDATE = "update"
@@ -41,6 +43,7 @@ class ActionType(str, Enum):
@dataclass @dataclass
class RequirementAnalysis: class RequirementAnalysis:
"""Structured analysis of a requirement.""" """Structured analysis of a requirement."""
raw_text: str raw_text: str
actor: Optional[str] = None actor: Optional[str] = None
actor_type: ActorType = ActorType.UNKNOWN actor_type: ActorType = ActorType.UNKNOWN
@@ -49,10 +52,10 @@ class RequirementAnalysis:
target: Optional[str] = None target: Optional[str] = None
condition: Optional[str] = None condition: Optional[str] = None
benefit: Optional[str] = None benefit: Optional[str] = None
examples: List[str] = field(default_factory=list) examples: list[str] = field(default_factory=list)
variables: Dict[str, str] = field(default_factory=dict) variables: dict[str, str] = field(default_factory=dict)
def to_dict(self) -> Dict[str, Any]: def to_dict(self) -> dict[str, Any]:
"""Convert to dictionary.""" """Convert to dictionary."""
return { return {
"raw_text": self.raw_text, "raw_text": self.raw_text,
@@ -81,6 +84,7 @@ class NLPAnalyzer:
self.nlp = spacy.load(model) self.nlp = spacy.load(model)
except OSError: except OSError:
import subprocess import subprocess
subprocess.run( subprocess.run(
["python", "-m", "spacy", "download", model], ["python", "-m", "spacy", "download", model],
check=True, check=True,