diff --git a/app/models/social_networking/goal.rb b/app/models/social_networking/goal.rb
index <HASH>..<HASH> 100644
--- a/app/models/social_networking/goal.rb
+++ b/app/models/social_networking/goal.rb
@@ -1,8 +1,10 @@
 module SocialNetworking
   # Something to be completed by a Participant.
   class Goal < ActiveRecord::Base
-    ACTION_TYPES = %w( created completed )
-    Actions = Struct.new(*ACTION_TYPES.map(&:to_sym)).new(*ACTION_TYPES)
+    # create a mini DSL for types of Goal actions
+    ACTION_TYPES = %w( created completed did_not_complete )
+    Actions = Struct.new(*ACTION_TYPES.map(&:to_sym))
+              .new(*(ACTION_TYPES.map { |t| t.gsub(/_/, " ") }))
 
     belongs_to :participant
     has_many :comments, as: "item"
@@ -13,6 +15,10 @@ module SocialNetworking
     validate :not_due_in_the_past, on: :create
     validate :due_before_membership_ends, on: :create
 
+    scope :did_not_complete, (lambda do
+      where(is_completed: false).where(arel_table[:due_on].lt(Date.today))
+    end)
+
     def to_serialized
       if due_on
         {
augment Goal to simplify finding and sharing past due Goals [#<I>]