Files
fidelity-ai-workspace/.opencode/commands/standup.md

2.8 KiB

description
description
Draft a standup from the latest Fidelity workspace context

Generate a standup update using the latest workspace state.

First, refresh Mattermost context before drafting:

!if [ -n "$FIDELITY_MATTERMOST_SYNC_CMD" ]; then bash -lc "$FIDELITY_MATTERMOST_SYNC_CMD" >/dev/null 2>&1 || true; elif [ -f scripts/mattermost/sync.sh ]; then bash scripts/mattermost/sync.sh >/dev/null 2>&1 || true; fi

Read:

@prompts/standup.md @ai/AGENTS.md @ai/context/index.md @ai/context/project.md @ai/context/workstreams/index.md @ai/context/process/communication.md @ai/context/process/jira-story-rules.md @ai/context/people/manager.md @ai/work-items/index.md @ai/state/current.md @ai/state/work-items.md @knowledge/communication-rules.md @knowledge/agent-memory-rules.md

Yesterday's log, if present:

!y=$(date -v-1d +%F 2>/dev/null || python3 - <<'PY'\nfrom datetime import datetime, timedelta\nprint((datetime.now().astimezone() - timedelta(days=1)).strftime('%Y-%m-%d'))\nPY\n); if [ -f "ai/logs/$y.md" ]; then echo "$y"; cat "ai/logs/$y.md"; else echo "No log exists for yesterday."; fi

Today's log, if present:

!if [ -f ai/logs/$(date +%F).md ]; then cat ai/logs/$(date +%F).md; else echo "No log exists for today yet."; fi

Latest Mattermost context, preferring inbox and falling back to generated JSONL:

!if [ -s ai/inbox/mattermost-latest.md ]; then cat ai/inbox/mattermost-latest.md; elif [ -s scripts/mattermost/generated/mattermost_context.jsonl ]; then cat scripts/mattermost/generated/mattermost_context.jsonl; else echo "No Mattermost context available."; fi

Detailed active work item files, if available:

!if [ -d ai/work-items ]; then for f in ai/work-items/*.md; do case "$f" in *README.md|*index.md) continue;; esac; echo "\n### $f"; cat "$f"; done; else echo "No work item files available."; fi

Before drafting:

  • update workspace memory if the refreshed context introduced clear high-confidence project facts
  • prefer existing memory when the latest context is ambiguous
  • mention Jira IDs and approved titles when they map cleanly to yesterday's work
  • prioritize story-based updates over side questions, memory refreshes, or manager-only context
  • if documentation or root cause updates directly support a story, roll them into that story's update instead of listing them separately
  • exclude items that are not directly tied to a story unless they are true blockers

Return a standup that is:

  • specific
  • concise
  • grounded in the latest context
  • safe to send without overstating certainty
  • written in natural US English that can be sent externally without rewriting
  • written as David's progress report
  • free of any mention of Jeff by name
  • free of any mention of Mattermost, since it is internal-only communication
  • uses bullet points for each item
  • uses JIRA-ID - Title or JIRA-ID Title formatting instead of comma-separated ID/title formatting