forked from HAL9000/cleveragents-core
67 lines
3.0 KiB
Gherkin
67 lines
3.0 KiB
Gherkin
@discovery
|
|
Feature: Implicit Behaviors Extraction
|
|
As a developer migrating from Go to Python
|
|
I want to extract implicit runtime behaviors from Plandex
|
|
So that I can replicate them accurately in CleverAgents
|
|
|
|
Background:
|
|
Given a Plandex repository with Go source code
|
|
And an implicit behavior extractor initialized with the repository
|
|
|
|
Scenario: Extract auto-context loading behaviors
|
|
When I extract implicit behaviors from the codebase
|
|
Then the results should contain auto-context behaviors
|
|
And each auto-context behavior should have triggers listed
|
|
And each behavior should have Python migration considerations
|
|
|
|
Scenario: Extract resource locking patterns
|
|
When I extract implicit behaviors from the codebase
|
|
Then the results should contain locking behaviors
|
|
And locking behaviors should reference mutex or file lock patterns
|
|
And Python alternatives should mention threading or asyncio locks
|
|
|
|
Scenario: Extract retry and backoff patterns
|
|
When I extract implicit behaviors from the codebase
|
|
Then the results should contain retry behaviors
|
|
And retry behaviors should mention exponential backoff
|
|
And Python considerations should suggest tenacity or backoff libraries
|
|
|
|
Scenario: Extract validation patterns
|
|
When I extract implicit behaviors from the codebase
|
|
Then the results should contain validation behaviors
|
|
And validation behaviors should reference input checks
|
|
And Python notes should mention pydantic or marshmallow
|
|
|
|
Scenario: Extract concurrency patterns
|
|
When I extract implicit behaviors from the codebase
|
|
Then the results should contain concurrency behaviors
|
|
And concurrency behaviors should reference goroutines or channels
|
|
And Python alternatives should mention asyncio or threading
|
|
|
|
Scenario: Extract streaming behaviors
|
|
When I extract implicit behaviors from the codebase
|
|
Then the results should contain streaming behaviors
|
|
And streaming behaviors should reference WebSocket or SSE
|
|
And Python considerations should mention aiohttp
|
|
|
|
Scenario: Generate sequence diagrams
|
|
When I extract implicit behaviors from the codebase
|
|
Then the results should include sequence diagrams
|
|
And there should be a diagram for auto-context loading
|
|
And there should be a diagram for retry with backoff
|
|
And there should be a diagram for git locking
|
|
|
|
Scenario: Save behavior documentation
|
|
When I extract implicit behaviors from the codebase
|
|
And I save the results to "build/test_output/behaviors"
|
|
Then a JSON file should be created with the behaviors
|
|
And a YAML file should be created with the behaviors
|
|
And a Markdown documentation file should be created
|
|
And the documentation should include all behavior categories
|
|
|
|
Scenario: Collect Python migration notes
|
|
When I extract implicit behaviors from the codebase
|
|
Then the statistics should include Python migration considerations
|
|
And the migration notes should be unique
|
|
And the notes should cover asyncio, threading, and validation libraries
|