Understanding Anaphoric References

Learn how Piper Morgan understands natural language references like “that issue”, “the document”, and “show me the first item”

Transform your interactions from rigid commands to natural conversation. No more remembering exact issue numbers or file names - just talk naturally and Piper understands what you mean.


What Are Anaphoric References?

Anaphoric references are words that refer back to something mentioned earlier in conversation. Instead of saying “GitHub issue #85” every time, you can simply say “that issue” and Piper knows exactly what you mean.

Think of it like talking to a colleague who pays attention:

Why This Matters

Traditional PM tools force you to remember and repeat exact identifiers:

You: Create issue for login bug
Tool: Created issue #85
You: Show me GitHub issue #85    ← Must remember #85
You: Update GitHub issue #85     ← Still need exact number
You: Close GitHub issue #85      ← Getting repetitive...

With Piper’s conversational AI:

You: Create issue for login bug
Piper: Created issue #85 for login bug
You: Show me that issue          ← Piper knows you mean #85
You: Update it with high priority ← Piper still remembers
You: Assign it to Sarah          ← Context maintained

Types of References Piper Understands

1. Simple References

Words like “that”, “this”, “it” that point to the most recent relevant item.

Example: “That Issue”

You: Create a GitHub issue for the login bug Piper: Created issue #123: “Fix login timeout error”

You: Assign that issue to Sarah Piper: ✅ Assigned issue #123 to Sarah

You: What’s the status of it? Piper: Issue #123 is assigned to Sarah and currently in “To Do” status

Example: “The Document”

You: Upload the requirements document Piper: Uploaded requirements_v2.1.pdf to knowledge base

You: Summarize the document Piper: ✅ Summary of requirements_v2.1.pdf: 23 features across 4 product areas…

You: Share it with the team Piper: ✅ Shared requirements_v2.1.pdf with your team via Slack

2. Demonstrative References

“This one”, “that one”, “these items” when multiple options exist.

Example: Multiple Issues Context

You: Show me all open bugs Piper: Found 3 open bugs: #45 (payment), #67 (login), #89 (search)

You: Update this one with high priority Piper: Which issue would you like to update? Please specify:

You: The login one Piper: ✅ Updated issue #67 with high priority

3. Comparative References

“First”, “latest”, “main”, “oldest” for chronological or priority selection.

Example: “The First Item”

You: I uploaded three documents today Piper: Processed 3 documents: design_spec.pdf, requirements.pdf, testing_plan.pdf

You: Create issues for the high-priority items in the first document Piper: ✅ Created 4 issues from design_spec.pdf (uploaded first):

Example: “The Latest Update”

You: Check our project status Piper: Project has 15 updates this week

You: Show me the latest update Piper: ✅ Latest update (2 hours ago): Sarah completed issue #67 - Login timeout fixed and deployed to staging

4. Contextual References

“My task”, “our project”, “the team’s work” based on your role and team.

Example: Personal Context

You: What’s my current workload? Piper: You have 3 active tasks: Issue #45 (in progress), PR #12 (awaiting review), Sprint planning (due Friday)

You: Update my task status Piper: Which task would you like to update?

You: The payment issue Piper: ✅ Updated issue #45 status to “Ready for Testing”


Reference Resolution in Action

Real Workflow Example: Bug Management

You: Create a critical bug for the payment system failure
Piper: Created critical bug #156: "Payment system failure" assigned to backend team

You: Add the error logs to that issue
Piper: ✅ Added error logs to issue #156

You: Create a follow-up task for security review
Piper: Created task #157: "Security review for payment system" linked to bug #156

You: What's the timeline for fixing it?
Piper: Based on bug #156 complexity: 3-5 business days for fix, plus 1-2 days for security review #157

You: Assign the main issue to Michael
Piper: ✅ Assigned bug #156 to Michael. He's been notified.

You: What about the security review?
Piper: Security review task #157 is unassigned. Should I assign it to the security team lead?

Notice how Piper tracks:

Multi-Project Context Example

You: Switch to the mobile app project
Piper: ✅ Context switched to Mobile App v2.0. Active sprint: 12 open issues, 3 in review

You: Show me the authentication work
Piper: Found 2 authentication items in Mobile App v2.0:
- Issue #89: iOS login screen redesign (in progress)
- Issue #91: Android authentication flow (ready for QA)

You: Update the iOS one with latest designs
Piper: ✅ Updated issue #89 with latest design files from Figma

You: Create a testing task for it
Piper: ✅ Created testing task #95: "Test iOS login screen redesign" linked to issue #89

Notice how context switching works:


Troubleshooting Common Issues

Issue: “I can’t find what you’re referring to”

Problem: Piper says it can’t resolve your reference

Common Causes:

Solutions:

  1. Be more specific: “Show me the payment bug” instead of “show me that”
  2. Reestablish context: “I’m talking about issue #156” then continue with references
  3. Use partial identifiers: “Show me issue 156” then “update it”

Example Fix:

❌ You: Show me that issue (no previous context)
   Piper: I don't see any issues mentioned in our conversation. Which issue?

✅ You: Show me the payment processing issue
   Piper: Found issue #156: Payment processing failure

   You: Update that issue with high priority
   Piper: ✅ Updated issue #156 with high priority

Issue: Wrong Item Selected

Problem: Piper selects the wrong item when you use a reference

Common Causes:

Solutions:

  1. Disambiguate: “I meant the older issue, not the new one”
  2. Use attributes: “The high-priority bug” vs “the documentation task”
  3. Restart context: “Let’s focus on issue #156” then continue

Example Fix:

❌ You: Update that issue (multiple issues active)
   Piper: Which issue? I see #156 (payment bug) and #157 (security review)

✅ You: Update the payment issue
   Piper: ✅ Updated issue #156 (payment processing failure)

Issue: Context Lost Too Quickly

Problem: Piper forgets context from earlier in long conversations

Understanding: Piper maintains a 10-turn conversation window

Solutions:

  1. Reestablish key context: “Going back to the payment issue #156…”
  2. Use specific identifiers: When in doubt, use exact numbers/names
  3. Break into focused sessions: Keep related work in focused conversation blocks

Example Management:

Long conversation about multiple topics...

You: Back to the payment system work - show me that bug
Piper: I don't see recent payment bug context. Which payment issue?

You: Issue #156, the critical payment failure
Piper: ✅ Here are details for issue #156: Payment system failure

You: Now I can refer to it as "that issue" again
Piper: Understood! Issue #156 context reestablished.

Best Practices for Natural Conversation

1. Establish Context First

Start conversations by mentioning the specific items you’ll be working with:

Good Pattern:

You: I'm working on the payment system bugs today
Piper: I see 2 payment-related bugs: #156 (critical failure) and #178 (minor display issue)

You: Let's focus on the critical one
Piper: ✅ Focusing on issue #156: Payment system failure

You: What's the latest update on it?
Piper: Issue #156 was last updated by Michael 3 hours ago...

2. Use Descriptive References

When multiple items exist, add context to your references:

Clear References:

Ambiguous References:

3. Confirm Understanding

For important actions, verify Piper understood correctly:

Verification Pattern:

You: Assign that critical bug to Sarah
Piper: ✅ Assigned issue #156 (payment system failure) to Sarah

You: Perfect, and set it to high priority
Piper: ✅ Updated issue #156 priority to high

4. Refresh Context When Needed

Don’t hesitate to reestablish context during long conversations:

Context Refresh:

You: Let's get back to the mobile app project
Piper: ✅ Switched context to Mobile App v2.0

You: Show me the authentication work we discussed
Piper: Here's the authentication work: Issue #89 (iOS login) and #91 (Android flow)

Performance and Accuracy

What to Expect

Reference Resolution Speed: 15-50ms average Accuracy Rate: 98%+ for clear references Context Window: 10 conversation turns maintained Confidence Threshold: References below 80% confidence trigger clarification

Real Performance Examples

High Confidence Resolution (98%)

Input: "Show me that issue"
Context: Single issue #156 mentioned 2 turns ago
Resolution: "Show me issue #156"
Performance: 12ms ✅

Moderate Confidence Resolution (85%)

Input: "Update the document"
Context: 2 documents mentioned, 1 more recent
Resolution: "Update requirements_v2.pdf"
Performance: 23ms ✅

Low Confidence - Clarification Requested (60%)

Input: "Show me that task"
Context: 3 tasks mentioned across 8 turns
Response: "Which task? I see Task #45 (testing), #67 (review), #89 (deployment)"
Performance: 18ms ✅

Next Steps


Questions about anaphoric references? Try them out in conversation with Piper - the best way to learn is through practice!