Feature: PM-034 Conversational AI with Anaphoric Reference Resolution Implementation: Production-Ready ConversationManager Updated: 2025-08-08
Transform your product management workflow from command-based interactions to natural, context-aware conversations. Piper Morgan now understands references like “that issue”, “the document”, and “show me the first item” automatically.
Traditional Approach:
User: "Create GitHub issue for login bug"
Piper: "Created issue #85 for login bug"
User: "Show me GitHub issue #85" ← Must remember exact issue number
Piper: "Here are the details for GitHub issue #85"
Limitations:
Natural Conversation:
User: "Create GitHub issue for login bug"
Piper: "Created issue #85 for login bug. The issue has been assigned to the development team."
User: "Show me that issue again" ← Natural reference automatically resolved
Piper: "Here are the details for GitHub issue #85"
User: "What about the testing strategy?" ← Context-aware follow-up
Piper: "For the login bug (#85), here's the recommended testing approach..."
Benefits:
Web Interface:
API Integration:
curl -X POST http://your-piper-instance/api/v1/conversation/message \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_API_KEY" \
-d '{
"message": "Create a high priority bug for the payment processing failure",
"session_id": "my_session_123"
}'
Follow up with natural language:
User: "Show me that issue again"
User: "Update the bug description"
User: "What's the status of that ticket?"
User: "Assign it to the backend team"
Piper automatically resolves:
Continue the conversation naturally:
User: "What about the testing strategy?"
Piper: "For the payment processing bug (#85), here's the recommended testing approach..."
User: "How long will the fix take?"
Piper: "Based on the payment processing issue complexity, estimated timeline is..."
User: "Create a follow-up task for the security review"
Piper: "Created security review task #86 linked to payment processing bug #85"
Context maintained throughout:
Test different reference types:
User: "Show me the first item from our backlog"
User: "Update the latest document"
User: "What's the status of my current task?"
User: "Close the main issue and create a follow-up"
Automatic resolution:
Pattern Examples:
"Show me that issue again"
"Update the document"
"Close the bug"
"What's the status of the task?"
How it works:
Pattern Examples:
"Show me this one"
"Update that file"
"Close these items"
"What about those bugs?"
Resolution logic:
Pattern Examples:
"Show me the first item"
"Update the latest document"
"What's the main issue?"
"Close the oldest task"
Intelligent resolution:
Pattern Examples:
"What's my current task?"
"Show me our project status"
"Update the sprint backlog"
"What about the team's progress?"
Personalized resolution:
Before (Command Mode):
User: "Create bug for login failure"
Piper: "Created issue #123 for login failure"
User: "Show me GitHub issue #123" ← Must remember number
Piper: "Here are the details for GitHub issue #123"
User: "Update GitHub issue #123 with new information" ← Repetitive
Piper: "Updated GitHub issue #123"
User: "What's the status of GitHub issue #123?" ← Mechanical
Piper: "GitHub issue #123 is in progress"
After (Conversational AI):
User: "Create bug for login failure"
Piper: "Created issue #123 for login failure"
User: "Show me that issue again" ← Natural reference
Piper: "Here are the details for GitHub issue #123"
User: "Update it with new information" ← Simple reference
Piper: "Updated GitHub issue #123"
User: "What's the status?" ← Context-aware
Piper: "The login failure issue is in progress"
Before (Command Mode):
User: "Upload requirements_v2.pdf"
Piper: "Uploaded requirements_v2.pdf to knowledge base"
User: "Search requirements_v2.pdf for API specifications" ← Exact filename
Piper: "Found 3 API specifications in requirements_v2.pdf"
User: "Summarize requirements_v2.pdf" ← Repetitive filename
Piper: "Summary of requirements_v2.pdf..."
User: "Compare requirements_v2.pdf with requirements_v1.pdf" ← Complex
Piper: "Comparison between requirements_v2.pdf and requirements_v1.pdf..."
After (Conversational AI):
User: "Upload the new requirements document"
Piper: "Uploaded requirements_v2.pdf to knowledge base"
User: "Search it for API specifications" ← Natural reference
Piper: "Found 3 API specifications in the requirements document"
User: "Summarize the document" ← Simple reference
Piper: "Summary of the requirements document..."
User: "Compare it with the previous version" ← Context-aware
Piper: "Comparison between requirements_v2.pdf and requirements_v1.pdf..."
Before (Command Mode):
User: "Create sprint task for user authentication"
Piper: "Created task #456 for user authentication"
User: "Show me task #456 details" ← Must remember number
Piper: "Task #456 details..."
User: "Update task #456 status to in progress" ← Mechanical
Piper: "Updated task #456 status"
User: "What's the priority of task #456?" ← Repetitive
Piper: "Task #456 has high priority"
After (Conversational AI):
User: "Create sprint task for user authentication"
Piper: "Created task #456 for user authentication"
User: "Show me the task details" ← Natural reference
Piper: "Task #456 details..."
User: "Mark it as in progress" ← Simple reference
Piper: "Updated the authentication task status"
User: "What's the priority?" ← Context-aware
Piper: "The user authentication task has high priority"
Issue: “I can’t find that issue”
Issue: “Wrong item resolved”
Issue: “Context lost”
Issue: “Slow response”
For Best Results:
Avoid:
Optimal Usage:
When to Use:
When to Use Command Mode:
Customize your experience:
{
"context_window": 15, // Increase from default 10
"reference_resolution": true, // Enable/disable references
"performance_mode": "balanced", // speed/balanced/high_accuracy
"cache_ttl": 300 // Cache duration in seconds
}
Track conversation history:
# Get current conversation context
curl -X GET "http://your-piper-instance/api/v1/conversation/my_session_123/context"
# Update conversation settings
curl -X PUT "http://your-piper-instance/api/v1/conversation/my_session_123/settings" \
-H "Content-Type: application/json" \
-d '{"context_window": 15}'
Analyze your conversation patterns:
# Get reference resolution history
curl -X GET "http://your-piper-instance/api/v1/conversation/my_session_123/references"
Sample output:
{
"references": [
{
"original_text": "that issue",
"resolved_entity": "GitHub issue #85",
"confidence": 0.98,
"resolution_time_ms": 15.3
}
],
"average_confidence": 0.95,
"average_resolution_time_ms": 14.0
}
For Existing Users:
Week 1: Experiment
Week 2: Expand Usage
Week 3: Full Adoption
When to use exact identifiers:
Example fallback:
User: "Show me that issue" ← Conversational
Piper: "I can't find a specific issue in our conversation"
User: "Show me GitHub issue #85" ← Command mode fallback
Piper: "Here are the details for GitHub issue #85"
You’re successfully using Conversational AI when:
Your team is successfully adopting when:
Target Performance:
Current Performance (PM-034 Phase 3):
Ready to start? Begin with a simple conversation and experience the transformation from command mode to natural, context-aware interactions!