# content
Project activity for July 07, 2026:

agents.happitec.com

33 commits

Reference resolution & autocomplete overhaul: The composer’s inline reference system was significantly refactored to strictly separate issue/PR autocompletion (#) from task mentions, enforce canonical output format (e.g., repo#123), and support per-repo group-based autocomplete; dead parsing tokens were removed in favor of a pure ReferenceResolver with explicit grammar and resolution order—enabling idempotent repo qualification and reliable reference rendering across platforms.

Cross-platform reference pill implementation: iOS and macOS received parallel updates to integrate AttributedString/NSAttributedString passes into message text rendering (with walk-protection and fenced-code-block safeguards), allowing rich, interactive reference “pills” in messages—fulfilling the OTA-enabled release (v1.12.0).

Notification system modernization: A complete overhaul of the notification layer replaced legacy client-side polling with server-driven push, introduced explicit tiered subscription levels (None/Important/All) with configurable per-agent preferences, and unified agent-related UI controls; the old Bool API was retired in favor of a robust NotificationManager bridge.

Lifecycle & reliability improvements: /stop operations became synchronous with clear HTTP outcomes (200/502), verified stop feedback was surfaced in UI, and macOS/iOS parity regressions were fixed—ensuring consistent client-server interaction fidelity.

dash-agent

23 commits

Reference Pills System: Implemented a full client-side reference pill feature, including a pure classifier/resolver module for parsing issue/PR/task references (e.g., #123, org/repo#456), DOM-walking post-processing using marked inline extensions with safe handling of nested anchors and code spans, and integration into the UI via pill/highlight-only styles rendered directly in App.vue. A critical fix ensures repo qualification is idempotent—preventing double-prefixing for fully-qualified references. Server-side, per-message origin repositories are now preserved on channel transcripts to support accurate resolution.

Important-Tier Redesign: Overhauled the important-tier system to align with server-side scheduling and Erin’s AUQ decisions: dropped the kind:'important' message type in favor of plain notification emissions, added user-specific notification-level preferences (POST /api/notification-prefs) with per-agent stores, implemented rearming on any newer activity (not just suppression), and enforced debounced rescheduling via JSONL activity. Prompts are now level-gated (only firing for Important-tier) and all-tier pushes yield immediate final-message streams.

Reply Metadata & Defaults: Attached structured reply metadata to plain end-of-turn/all-tier messages per §7.5 spec, and uncapped reply_preview by defaulting to full message content instead of truncated views.

Spec & Plan Harmonization: Refined rendering architecture (TDD plan → marked DOM walk), updated OpenAPI contract for stop-event semantics to match the new Important-tier behavior (re-arm on activity, upstream level filtering), and resolved open spec questions (§5.1/§7.1/§7.x) with Erin’s rulings—ensuring consistency across dash-agent implementation plans (Important-tier TDD), prompts-always-fire refinement, and advisory review findings.