@sunsteel/contracts 0.40.0 → 0.42.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.cjs CHANGED
@@ -22,6 +22,11 @@ var index_exports = {};
22
22
  __export(index_exports, {
23
23
  ACHIEVEMENT_CATEGORIES: () => ACHIEVEMENT_CATEGORIES,
24
24
  ACHIEVEMENT_DEFINITIONS: () => ACHIEVEMENT_DEFINITIONS,
25
+ COMEBACK_MIN_INACTIVE_DAYS: () => COMEBACK_MIN_INACTIVE_DAYS,
26
+ COMEBACK_RECOGNITION_LIMIT: () => COMEBACK_RECOGNITION_LIMIT,
27
+ COMEBACK_REQUIRED_ACTIVE_DAYS: () => COMEBACK_REQUIRED_ACTIVE_DAYS,
28
+ COMEBACK_SESSION_LOOKBACK: () => COMEBACK_SESSION_LOOKBACK,
29
+ COMEBACK_WINDOW_DAYS: () => COMEBACK_WINDOW_DAYS,
25
30
  EXERCISE_EQUIPMENT: () => EXERCISE_EQUIPMENT,
26
31
  EXERCISE_MECHANICS: () => EXERCISE_MECHANICS,
27
32
  FOLLOW_SUGGESTIONS_DEFAULT_LIMIT: () => FOLLOW_SUGGESTIONS_DEFAULT_LIMIT,
@@ -62,6 +67,7 @@ __export(index_exports, {
62
67
  SCHEDULE_MOVE_MAX_DAYS: () => SCHEDULE_MOVE_MAX_DAYS,
63
68
  SCHEDULE_OVERRIDES_MAX_RANGE_DAYS: () => SCHEDULE_OVERRIDES_MAX_RANGE_DAYS,
64
69
  SCHEDULE_OVERRIDE_KINDS: () => SCHEDULE_OVERRIDE_KINDS,
70
+ SCHEDULE_SKIP_PAST_DAYS: () => SCHEDULE_SKIP_PAST_DAYS,
65
71
  SESSION_SHARE_DEFAULT_FIELDS: () => SESSION_SHARE_DEFAULT_FIELDS,
66
72
  SESSION_SHARE_FIELDS: () => SESSION_SHARE_FIELDS,
67
73
  SESSION_SHARE_MAX_ACTIVE_LINKS: () => SESSION_SHARE_MAX_ACTIVE_LINKS,
@@ -357,6 +363,11 @@ var RENAISSANCE_RANK_DEFINITIONS = [
357
363
  minimumActiveWeeks: 52
358
364
  }
359
365
  ];
366
+ var COMEBACK_MIN_INACTIVE_DAYS = 14;
367
+ var COMEBACK_REQUIRED_ACTIVE_DAYS = 3;
368
+ var COMEBACK_WINDOW_DAYS = 14;
369
+ var COMEBACK_SESSION_LOOKBACK = 500;
370
+ var COMEBACK_RECOGNITION_LIMIT = 20;
360
371
 
361
372
  // src/routine.ts
362
373
  var ROUTINE_SCHEDULE_MODES = ["WEEKLY", "ROTATION"];
@@ -387,8 +398,9 @@ var ROUTINE_VERSION_NAME_MAX = 60;
387
398
  var ROUTINE_VERSION_KINDS = ["SAVED", "BEFORE_RESTORE"];
388
399
 
389
400
  // src/schedule.ts
390
- var SCHEDULE_OVERRIDE_KINDS = ["MOVE"];
401
+ var SCHEDULE_OVERRIDE_KINDS = ["MOVE", "SKIP"];
391
402
  var SCHEDULE_MOVE_MAX_DAYS = 6;
403
+ var SCHEDULE_SKIP_PAST_DAYS = 6;
392
404
  var SCHEDULE_OVERRIDES_MAX_RANGE_DAYS = 62;
393
405
 
394
406
  // src/workout.ts
@@ -430,6 +442,11 @@ var PLATEAU_MIN_SESSIONS_MAX = 8;
430
442
  0 && (module.exports = {
431
443
  ACHIEVEMENT_CATEGORIES,
432
444
  ACHIEVEMENT_DEFINITIONS,
445
+ COMEBACK_MIN_INACTIVE_DAYS,
446
+ COMEBACK_RECOGNITION_LIMIT,
447
+ COMEBACK_REQUIRED_ACTIVE_DAYS,
448
+ COMEBACK_SESSION_LOOKBACK,
449
+ COMEBACK_WINDOW_DAYS,
433
450
  EXERCISE_EQUIPMENT,
434
451
  EXERCISE_MECHANICS,
435
452
  FOLLOW_SUGGESTIONS_DEFAULT_LIMIT,
@@ -470,6 +487,7 @@ var PLATEAU_MIN_SESSIONS_MAX = 8;
470
487
  SCHEDULE_MOVE_MAX_DAYS,
471
488
  SCHEDULE_OVERRIDES_MAX_RANGE_DAYS,
472
489
  SCHEDULE_OVERRIDE_KINDS,
490
+ SCHEDULE_SKIP_PAST_DAYS,
473
491
  SESSION_SHARE_DEFAULT_FIELDS,
474
492
  SESSION_SHARE_FIELDS,
475
493
  SESSION_SHARE_MAX_ACTIVE_LINKS,
package/dist/index.d.cts CHANGED
@@ -1097,6 +1097,35 @@ interface AchievementCategoryProgress {
1097
1097
  nextMilestone: AchievementDefinition | null;
1098
1098
  remaining: number;
1099
1099
  }
1100
+ /**
1101
+ * ACH-05 recognises a return only after the athlete has rebuilt a small,
1102
+ * recovery-compatible pattern. The break is counted as full local calendar
1103
+ * days without a completed session; repeated sessions on one date count once.
1104
+ */
1105
+ declare const COMEBACK_MIN_INACTIVE_DAYS = 14;
1106
+ declare const COMEBACK_REQUIRED_ACTIVE_DAYS = 3;
1107
+ declare const COMEBACK_WINDOW_DAYS = 14;
1108
+ declare const COMEBACK_SESSION_LOOKBACK = 500;
1109
+ declare const COMEBACK_RECOGNITION_LIMIT = 20;
1110
+ interface ComebackRecognition {
1111
+ id: string;
1112
+ inactiveDays: number;
1113
+ returnedAt: IsoDateString;
1114
+ recognizedAt: IsoDateString;
1115
+ sourceSessionId: string;
1116
+ activeDays: number;
1117
+ /** Inclusive local-calendar span from the return through recognition. */
1118
+ windowDays: number;
1119
+ }
1120
+ interface ComebackRecognitionSummary {
1121
+ minimumInactiveDays: number;
1122
+ requiredActiveDays: number;
1123
+ windowDays: number;
1124
+ /** Most recent first, capped by COMEBACK_RECOGNITION_LIMIT. */
1125
+ recognitions: ComebackRecognition[];
1126
+ /** True when older completed-session events fell outside the bounded scan. */
1127
+ historyTruncated: boolean;
1128
+ }
1100
1129
  /** Stable successful response of GET /achievements. */
1101
1130
  interface AchievementsResponse {
1102
1131
  analyticsReady: boolean;
@@ -1105,6 +1134,7 @@ interface AchievementsResponse {
1105
1134
  achievements: EarnedAchievement[];
1106
1135
  rank: RenaissanceRankProgress | null;
1107
1136
  milestoneProgress: AchievementCategoryProgress[];
1137
+ comeback: ComebackRecognitionSummary | null;
1108
1138
  }
1109
1139
 
1110
1140
  /**
@@ -1295,14 +1325,19 @@ interface RestoreRoutineVersionResponse {
1295
1325
  type CalendarDate = string;
1296
1326
  /**
1297
1327
  * The schedule-instance model: per-date overrides of a routine's plan. MOVE
1298
- * puts one weekly occurrence on another date (SCHED-04); SCHED-05 adds its
1299
- * own kinds. Overrides are kept by calendar date, not by routine day, because
1300
- * routine edits replace the days.
1328
+ * puts one weekly occurrence on another date (SCHED-04); SKIP marks it
1329
+ * skipped on purpose (SCHED-05). Overrides are kept by calendar date, not by
1330
+ * routine day, because routine edits replace the days.
1301
1331
  */
1302
- declare const SCHEDULE_OVERRIDE_KINDS: readonly ["MOVE"];
1332
+ declare const SCHEDULE_OVERRIDE_KINDS: readonly ["MOVE", "SKIP"];
1303
1333
  type ScheduleOverrideKind = (typeof SCHEDULE_OVERRIDE_KINDS)[number];
1304
1334
  /** A move goes at most this many days before or after the planned date. */
1305
1335
  declare const SCHEDULE_MOVE_MAX_DAYS = 6;
1336
+ /**
1337
+ * SCHED-05: a skip can explain a planned day up to this many days back;
1338
+ * ahead, any planned day can be skipped.
1339
+ */
1340
+ declare const SCHEDULE_SKIP_PAST_DAYS = 6;
1306
1341
  /** Overrides are read for at most this many days at once. */
1307
1342
  declare const SCHEDULE_OVERRIDES_MAX_RANGE_DAYS = 62;
1308
1343
  interface ScheduleOverride {
@@ -1311,7 +1346,7 @@ interface ScheduleOverride {
1311
1346
  /** The planned date this override changes. */
1312
1347
  date: CalendarDate;
1313
1348
  kind: ScheduleOverrideKind;
1314
- /** MOVE: the date the occurrence now falls on. */
1349
+ /** MOVE: the date the occurrence now falls on; null for SKIP. */
1315
1350
  toDate: CalendarDate | null;
1316
1351
  createdAt: IsoDateString;
1317
1352
  }
@@ -1332,5 +1367,13 @@ interface MoveOccurrenceRequest {
1332
1367
  date: CalendarDate;
1333
1368
  toDate: CalendarDate;
1334
1369
  }
1370
+ /**
1371
+ * `PUT /schedule/overrides/skip`: marks one occurrence skipped. A moved
1372
+ * occurrence is skipped as a whole; undoing is `DELETE` like a move.
1373
+ */
1374
+ interface SkipOccurrenceRequest {
1375
+ routineId: string;
1376
+ date: CalendarDate;
1377
+ }
1335
1378
 
1336
- export { ACHIEVEMENT_CATEGORIES, ACHIEVEMENT_DEFINITIONS, type AchievementCategory, type AchievementCategoryProgress, type AchievementDefinition, type AchievementUnlockedEventPayload, type AchievementsResponse, type Brand, type CalendarDate, type CreateRoutineDayInput, type CreateRoutineExerciseInput, type CreateRoutineRequest, type CreateRoutineVersionRequest, type CreateSessionShareRequest, EXERCISE_EQUIPMENT, EXERCISE_MECHANICS, type EarnedAchievement, type EarnedPersonalRecord, type Exercise, type ExerciseEquipment, type ExerciseId, type ExerciseMechanic, type ExercisePerformanceHistoryQuery, type ExercisePerformanceHistoryResponse, type ExercisePerformancePrescription, type ExercisePerformancePrescriptionSet, type ExercisePerformanceSession, type ExercisePerformanceSet, type ExercisePerformanceSummary, type ExercisePlateau, type ExerciseStrengthSummary, type ExerciseStrengthTrendPoint, type ExerciseStrengthTrendQuery, type ExerciseStrengthTrendResponse, FOLLOW_SUGGESTIONS_DEFAULT_LIMIT, FOLLOW_SUGGESTIONS_MAX_LIMIT, FOLLOW_SUGGESTION_REASONS, type FinishStatus, type FinishWorkoutRequest, type FinishWorkoutResponse, type FollowSuggestion, type FollowSuggestionReason, type FollowSuggestionsResponse, type IsoDateString, type ListSessionsParams, MEASURABLE_GOALS_MAX, MEASURABLE_GOAL_DIRECTIONS, MEASURABLE_GOAL_TYPES, MOVEMENT_PATTERNS, MUSCLE_GROUPS, type MeasurableGoal, type MeasurableGoalDirection, type MeasurableGoalExercise, type MeasurableGoalInput, type MeasurableGoalType, type MoveOccurrenceRequest, type MovementPattern, type MuscleGroup, type MuscleGroupHeatmapQuery, type MuscleGroupHeatmapResponse, type MuscleGroupHeatmapValue, type MuscleGroupHeatmapWeek, type MuscleVolumeTrendSeries, PLATEAU_MIN_DAYS_SINCE_BEST, PLATEAU_MIN_SESSIONS, PLATEAU_MIN_SESSIONS_MAX, PLATEAU_MIN_SESSIONS_MIN, PLATEAU_RECENT_DAYS, PLATEAU_WINDOW_DAYS, PREFERRED_TRAINING_STYLE_VALUES, PROFILE_BIO_MAX_LENGTH, PROFILE_FAVORITE_EXERCISES_MAX, PROFILE_LOCATION_MAX_LENGTH, PROFILE_TRAINING_DISCIPLINES_MAX, PROFILE_TRAINING_GOALS_MAX, PROFILE_VISIBILITY_VALUES, PROGRESSION_SCHEMES, PROGRESS_TIMELINE_EVENT_TYPES, type PaginatedResponse, type PersonalGoalProgress, type PersonalGoalsResponse, type PersonalRecordEntry, type PersonalRecordKind, type PlatePairInventory, type PlateauPreferences, type PlateauSet, type PlateausResponse, type PreferredTrainingStyle, type PreviousPerformanceResponse, type PreviousSessionRecap, type PreviousSetPerformance, type ProfileDiscoverySettings, type ProfileFavoriteExercise, type ProfilePrivacySettings, type ProfileViewerAccess, type ProfileVisibility, type ProgressTimelineEventType, type ProgressTimelineItem, type ProgressTimelinePersonalRecordItem, type ProgressTimelineProgressionItem, type ProgressTimelineQuery, type ProgressTimelineRecordPerformance, type ProgressTimelineRecordReason, type ProgressTimelineResponse, type ProgressTimelineSessionContext, type ProgressionChange, type ProgressionRule, type ProgressionScheme, type ProgressionSetChange, type PublicBodyMetrics, type PublicTrainingSummary, type PublicUserProfile, RELATIONSHIP_LIST_DEFAULT_LIMIT, RELATIONSHIP_LIST_KINDS, RELATIONSHIP_LIST_MAX_LIMIT, RENAISSANCE_RANK_DEFINITIONS, REP_TYPES, RESERVED_USERNAMES, ROUTINE_DAYS_MAX, ROUTINE_DAY_NAME_MAX, ROUTINE_SCHEDULE_MODES, ROUTINE_VERSIONS_MAX, ROUTINE_VERSION_KINDS, ROUTINE_VERSION_NAME_MAX, type RecentActivityEntry, type RelationshipListKind, type RelationshipListQuery, type RelationshipListResponse, type RelationshipMember, type RenaissanceRankDefinition, type RenaissanceRankProgress, type RepType, type ReplaceMeasurableGoalsRequest, type ReplaceTrainingLocationsRequest, type RestoreRoutineVersionResponse, type Routine, type RoutineDay, type RoutineDayId, type RoutineExercise, type RoutineId, type RoutineScheduleMode, type RoutineSet, type RoutineVersion, type RoutineVersionDay, type RoutineVersionExercise, type RoutineVersionKind, type RoutineVersionSetup, type RoutineVersionsResponse, SCHEDULE_MOVE_MAX_DAYS, SCHEDULE_OVERRIDES_MAX_RANGE_DAYS, SCHEDULE_OVERRIDE_KINDS, SESSION_SHARE_DEFAULT_FIELDS, SESSION_SHARE_FIELDS, SESSION_SHARE_MAX_ACTIVE_LINKS, SEXES, STARRED_EXERCISES_MAX, type ScheduleOverride, type ScheduleOverrideKind, type ScheduleOverridesQuery, type ScheduleOverridesResponse, type SessionComparisonExercise, type SessionComparisonQuery, type SessionComparisonResponse, type SessionComparisonRoutineDay, type SessionComparisonSession, type SessionComparisonSet, type SessionExerciseSubstitution, type SessionRecapRecord, type SessionShare, type SessionShareField, type SessionShareListResponse, type SetAccountTimeZoneRequest, type SetLog, type Sex, type SharedSessionOwner, type SharedSessionRecap, type StarredExercise, type StarredExercisesResponse, type StartWorkoutRequest, type StartWorkoutResponse, type StreakMilestoneEventPayload, type SubstituteSessionExerciseRequest, type SubstituteSessionExerciseResponse, type SupabaseAuthResponse, type SupabaseAuthUser, type SupabaseMigrationResponse, TRAINING_DISCIPLINE_VALUES, TRAINING_EVENT_TYPES, TRAINING_EXPERIENCE_LEVEL_VALUES, TRAINING_GOAL_VALUES, type TrainingDiscipline, type TrainingEventType, type TrainingExperienceLevel, type TrainingGoal, type TrainingIdentity, type TrainingLocationPreference, type TrainingLocationPreferenceInput, USERNAME_MAX_LENGTH, USERNAME_MIN_LENGTH, USERNAME_PATTERN_SOURCE, type UpdateProfileDiscoveryRequest, type UpdateProfilePrivacyRequest, type UpdateProfileRequest, type UpdateRoutineRequest, type UpsertSetLogRequest, type UpsertSetLogResponse, type UserId, type UserProfile, type UserSearchResponse, type VolumeTrendPoint, type VolumeTrendQuery, type VolumeTrendResponse, type VolumeTrendSeries, WEIGHT_UNITS, WORKOUT_SESSION_STATUSES, type WeightUnit, type WorkoutAnalyticsStatus, type WorkoutProgressQuery, type WorkoutProgressResponse, type WorkoutSession, type WorkoutSessionId, type WorkoutSessionListResponse, type WorkoutSessionRecap, type WorkoutSessionSnapshotV1, type WorkoutSessionStatus, type WorkoutSessionSummary, type WorkoutStatsQuery, type WorkoutStatsResponse, routineDayLabel };
1379
+ export { ACHIEVEMENT_CATEGORIES, ACHIEVEMENT_DEFINITIONS, type AchievementCategory, type AchievementCategoryProgress, type AchievementDefinition, type AchievementUnlockedEventPayload, type AchievementsResponse, type Brand, COMEBACK_MIN_INACTIVE_DAYS, COMEBACK_RECOGNITION_LIMIT, COMEBACK_REQUIRED_ACTIVE_DAYS, COMEBACK_SESSION_LOOKBACK, COMEBACK_WINDOW_DAYS, type CalendarDate, type ComebackRecognition, type ComebackRecognitionSummary, type CreateRoutineDayInput, type CreateRoutineExerciseInput, type CreateRoutineRequest, type CreateRoutineVersionRequest, type CreateSessionShareRequest, EXERCISE_EQUIPMENT, EXERCISE_MECHANICS, type EarnedAchievement, type EarnedPersonalRecord, type Exercise, type ExerciseEquipment, type ExerciseId, type ExerciseMechanic, type ExercisePerformanceHistoryQuery, type ExercisePerformanceHistoryResponse, type ExercisePerformancePrescription, type ExercisePerformancePrescriptionSet, type ExercisePerformanceSession, type ExercisePerformanceSet, type ExercisePerformanceSummary, type ExercisePlateau, type ExerciseStrengthSummary, type ExerciseStrengthTrendPoint, type ExerciseStrengthTrendQuery, type ExerciseStrengthTrendResponse, FOLLOW_SUGGESTIONS_DEFAULT_LIMIT, FOLLOW_SUGGESTIONS_MAX_LIMIT, FOLLOW_SUGGESTION_REASONS, type FinishStatus, type FinishWorkoutRequest, type FinishWorkoutResponse, type FollowSuggestion, type FollowSuggestionReason, type FollowSuggestionsResponse, type IsoDateString, type ListSessionsParams, MEASURABLE_GOALS_MAX, MEASURABLE_GOAL_DIRECTIONS, MEASURABLE_GOAL_TYPES, MOVEMENT_PATTERNS, MUSCLE_GROUPS, type MeasurableGoal, type MeasurableGoalDirection, type MeasurableGoalExercise, type MeasurableGoalInput, type MeasurableGoalType, type MoveOccurrenceRequest, type MovementPattern, type MuscleGroup, type MuscleGroupHeatmapQuery, type MuscleGroupHeatmapResponse, type MuscleGroupHeatmapValue, type MuscleGroupHeatmapWeek, type MuscleVolumeTrendSeries, PLATEAU_MIN_DAYS_SINCE_BEST, PLATEAU_MIN_SESSIONS, PLATEAU_MIN_SESSIONS_MAX, PLATEAU_MIN_SESSIONS_MIN, PLATEAU_RECENT_DAYS, PLATEAU_WINDOW_DAYS, PREFERRED_TRAINING_STYLE_VALUES, PROFILE_BIO_MAX_LENGTH, PROFILE_FAVORITE_EXERCISES_MAX, PROFILE_LOCATION_MAX_LENGTH, PROFILE_TRAINING_DISCIPLINES_MAX, PROFILE_TRAINING_GOALS_MAX, PROFILE_VISIBILITY_VALUES, PROGRESSION_SCHEMES, PROGRESS_TIMELINE_EVENT_TYPES, type PaginatedResponse, type PersonalGoalProgress, type PersonalGoalsResponse, type PersonalRecordEntry, type PersonalRecordKind, type PlatePairInventory, type PlateauPreferences, type PlateauSet, type PlateausResponse, type PreferredTrainingStyle, type PreviousPerformanceResponse, type PreviousSessionRecap, type PreviousSetPerformance, type ProfileDiscoverySettings, type ProfileFavoriteExercise, type ProfilePrivacySettings, type ProfileViewerAccess, type ProfileVisibility, type ProgressTimelineEventType, type ProgressTimelineItem, type ProgressTimelinePersonalRecordItem, type ProgressTimelineProgressionItem, type ProgressTimelineQuery, type ProgressTimelineRecordPerformance, type ProgressTimelineRecordReason, type ProgressTimelineResponse, type ProgressTimelineSessionContext, type ProgressionChange, type ProgressionRule, type ProgressionScheme, type ProgressionSetChange, type PublicBodyMetrics, type PublicTrainingSummary, type PublicUserProfile, RELATIONSHIP_LIST_DEFAULT_LIMIT, RELATIONSHIP_LIST_KINDS, RELATIONSHIP_LIST_MAX_LIMIT, RENAISSANCE_RANK_DEFINITIONS, REP_TYPES, RESERVED_USERNAMES, ROUTINE_DAYS_MAX, ROUTINE_DAY_NAME_MAX, ROUTINE_SCHEDULE_MODES, ROUTINE_VERSIONS_MAX, ROUTINE_VERSION_KINDS, ROUTINE_VERSION_NAME_MAX, type RecentActivityEntry, type RelationshipListKind, type RelationshipListQuery, type RelationshipListResponse, type RelationshipMember, type RenaissanceRankDefinition, type RenaissanceRankProgress, type RepType, type ReplaceMeasurableGoalsRequest, type ReplaceTrainingLocationsRequest, type RestoreRoutineVersionResponse, type Routine, type RoutineDay, type RoutineDayId, type RoutineExercise, type RoutineId, type RoutineScheduleMode, type RoutineSet, type RoutineVersion, type RoutineVersionDay, type RoutineVersionExercise, type RoutineVersionKind, type RoutineVersionSetup, type RoutineVersionsResponse, SCHEDULE_MOVE_MAX_DAYS, SCHEDULE_OVERRIDES_MAX_RANGE_DAYS, SCHEDULE_OVERRIDE_KINDS, SCHEDULE_SKIP_PAST_DAYS, SESSION_SHARE_DEFAULT_FIELDS, SESSION_SHARE_FIELDS, SESSION_SHARE_MAX_ACTIVE_LINKS, SEXES, STARRED_EXERCISES_MAX, type ScheduleOverride, type ScheduleOverrideKind, type ScheduleOverridesQuery, type ScheduleOverridesResponse, type SessionComparisonExercise, type SessionComparisonQuery, type SessionComparisonResponse, type SessionComparisonRoutineDay, type SessionComparisonSession, type SessionComparisonSet, type SessionExerciseSubstitution, type SessionRecapRecord, type SessionShare, type SessionShareField, type SessionShareListResponse, type SetAccountTimeZoneRequest, type SetLog, type Sex, type SharedSessionOwner, type SharedSessionRecap, type SkipOccurrenceRequest, type StarredExercise, type StarredExercisesResponse, type StartWorkoutRequest, type StartWorkoutResponse, type StreakMilestoneEventPayload, type SubstituteSessionExerciseRequest, type SubstituteSessionExerciseResponse, type SupabaseAuthResponse, type SupabaseAuthUser, type SupabaseMigrationResponse, TRAINING_DISCIPLINE_VALUES, TRAINING_EVENT_TYPES, TRAINING_EXPERIENCE_LEVEL_VALUES, TRAINING_GOAL_VALUES, type TrainingDiscipline, type TrainingEventType, type TrainingExperienceLevel, type TrainingGoal, type TrainingIdentity, type TrainingLocationPreference, type TrainingLocationPreferenceInput, USERNAME_MAX_LENGTH, USERNAME_MIN_LENGTH, USERNAME_PATTERN_SOURCE, type UpdateProfileDiscoveryRequest, type UpdateProfilePrivacyRequest, type UpdateProfileRequest, type UpdateRoutineRequest, type UpsertSetLogRequest, type UpsertSetLogResponse, type UserId, type UserProfile, type UserSearchResponse, type VolumeTrendPoint, type VolumeTrendQuery, type VolumeTrendResponse, type VolumeTrendSeries, WEIGHT_UNITS, WORKOUT_SESSION_STATUSES, type WeightUnit, type WorkoutAnalyticsStatus, type WorkoutProgressQuery, type WorkoutProgressResponse, type WorkoutSession, type WorkoutSessionId, type WorkoutSessionListResponse, type WorkoutSessionRecap, type WorkoutSessionSnapshotV1, type WorkoutSessionStatus, type WorkoutSessionSummary, type WorkoutStatsQuery, type WorkoutStatsResponse, routineDayLabel };
package/dist/index.d.ts CHANGED
@@ -1097,6 +1097,35 @@ interface AchievementCategoryProgress {
1097
1097
  nextMilestone: AchievementDefinition | null;
1098
1098
  remaining: number;
1099
1099
  }
1100
+ /**
1101
+ * ACH-05 recognises a return only after the athlete has rebuilt a small,
1102
+ * recovery-compatible pattern. The break is counted as full local calendar
1103
+ * days without a completed session; repeated sessions on one date count once.
1104
+ */
1105
+ declare const COMEBACK_MIN_INACTIVE_DAYS = 14;
1106
+ declare const COMEBACK_REQUIRED_ACTIVE_DAYS = 3;
1107
+ declare const COMEBACK_WINDOW_DAYS = 14;
1108
+ declare const COMEBACK_SESSION_LOOKBACK = 500;
1109
+ declare const COMEBACK_RECOGNITION_LIMIT = 20;
1110
+ interface ComebackRecognition {
1111
+ id: string;
1112
+ inactiveDays: number;
1113
+ returnedAt: IsoDateString;
1114
+ recognizedAt: IsoDateString;
1115
+ sourceSessionId: string;
1116
+ activeDays: number;
1117
+ /** Inclusive local-calendar span from the return through recognition. */
1118
+ windowDays: number;
1119
+ }
1120
+ interface ComebackRecognitionSummary {
1121
+ minimumInactiveDays: number;
1122
+ requiredActiveDays: number;
1123
+ windowDays: number;
1124
+ /** Most recent first, capped by COMEBACK_RECOGNITION_LIMIT. */
1125
+ recognitions: ComebackRecognition[];
1126
+ /** True when older completed-session events fell outside the bounded scan. */
1127
+ historyTruncated: boolean;
1128
+ }
1100
1129
  /** Stable successful response of GET /achievements. */
1101
1130
  interface AchievementsResponse {
1102
1131
  analyticsReady: boolean;
@@ -1105,6 +1134,7 @@ interface AchievementsResponse {
1105
1134
  achievements: EarnedAchievement[];
1106
1135
  rank: RenaissanceRankProgress | null;
1107
1136
  milestoneProgress: AchievementCategoryProgress[];
1137
+ comeback: ComebackRecognitionSummary | null;
1108
1138
  }
1109
1139
 
1110
1140
  /**
@@ -1295,14 +1325,19 @@ interface RestoreRoutineVersionResponse {
1295
1325
  type CalendarDate = string;
1296
1326
  /**
1297
1327
  * The schedule-instance model: per-date overrides of a routine's plan. MOVE
1298
- * puts one weekly occurrence on another date (SCHED-04); SCHED-05 adds its
1299
- * own kinds. Overrides are kept by calendar date, not by routine day, because
1300
- * routine edits replace the days.
1328
+ * puts one weekly occurrence on another date (SCHED-04); SKIP marks it
1329
+ * skipped on purpose (SCHED-05). Overrides are kept by calendar date, not by
1330
+ * routine day, because routine edits replace the days.
1301
1331
  */
1302
- declare const SCHEDULE_OVERRIDE_KINDS: readonly ["MOVE"];
1332
+ declare const SCHEDULE_OVERRIDE_KINDS: readonly ["MOVE", "SKIP"];
1303
1333
  type ScheduleOverrideKind = (typeof SCHEDULE_OVERRIDE_KINDS)[number];
1304
1334
  /** A move goes at most this many days before or after the planned date. */
1305
1335
  declare const SCHEDULE_MOVE_MAX_DAYS = 6;
1336
+ /**
1337
+ * SCHED-05: a skip can explain a planned day up to this many days back;
1338
+ * ahead, any planned day can be skipped.
1339
+ */
1340
+ declare const SCHEDULE_SKIP_PAST_DAYS = 6;
1306
1341
  /** Overrides are read for at most this many days at once. */
1307
1342
  declare const SCHEDULE_OVERRIDES_MAX_RANGE_DAYS = 62;
1308
1343
  interface ScheduleOverride {
@@ -1311,7 +1346,7 @@ interface ScheduleOverride {
1311
1346
  /** The planned date this override changes. */
1312
1347
  date: CalendarDate;
1313
1348
  kind: ScheduleOverrideKind;
1314
- /** MOVE: the date the occurrence now falls on. */
1349
+ /** MOVE: the date the occurrence now falls on; null for SKIP. */
1315
1350
  toDate: CalendarDate | null;
1316
1351
  createdAt: IsoDateString;
1317
1352
  }
@@ -1332,5 +1367,13 @@ interface MoveOccurrenceRequest {
1332
1367
  date: CalendarDate;
1333
1368
  toDate: CalendarDate;
1334
1369
  }
1370
+ /**
1371
+ * `PUT /schedule/overrides/skip`: marks one occurrence skipped. A moved
1372
+ * occurrence is skipped as a whole; undoing is `DELETE` like a move.
1373
+ */
1374
+ interface SkipOccurrenceRequest {
1375
+ routineId: string;
1376
+ date: CalendarDate;
1377
+ }
1335
1378
 
1336
- export { ACHIEVEMENT_CATEGORIES, ACHIEVEMENT_DEFINITIONS, type AchievementCategory, type AchievementCategoryProgress, type AchievementDefinition, type AchievementUnlockedEventPayload, type AchievementsResponse, type Brand, type CalendarDate, type CreateRoutineDayInput, type CreateRoutineExerciseInput, type CreateRoutineRequest, type CreateRoutineVersionRequest, type CreateSessionShareRequest, EXERCISE_EQUIPMENT, EXERCISE_MECHANICS, type EarnedAchievement, type EarnedPersonalRecord, type Exercise, type ExerciseEquipment, type ExerciseId, type ExerciseMechanic, type ExercisePerformanceHistoryQuery, type ExercisePerformanceHistoryResponse, type ExercisePerformancePrescription, type ExercisePerformancePrescriptionSet, type ExercisePerformanceSession, type ExercisePerformanceSet, type ExercisePerformanceSummary, type ExercisePlateau, type ExerciseStrengthSummary, type ExerciseStrengthTrendPoint, type ExerciseStrengthTrendQuery, type ExerciseStrengthTrendResponse, FOLLOW_SUGGESTIONS_DEFAULT_LIMIT, FOLLOW_SUGGESTIONS_MAX_LIMIT, FOLLOW_SUGGESTION_REASONS, type FinishStatus, type FinishWorkoutRequest, type FinishWorkoutResponse, type FollowSuggestion, type FollowSuggestionReason, type FollowSuggestionsResponse, type IsoDateString, type ListSessionsParams, MEASURABLE_GOALS_MAX, MEASURABLE_GOAL_DIRECTIONS, MEASURABLE_GOAL_TYPES, MOVEMENT_PATTERNS, MUSCLE_GROUPS, type MeasurableGoal, type MeasurableGoalDirection, type MeasurableGoalExercise, type MeasurableGoalInput, type MeasurableGoalType, type MoveOccurrenceRequest, type MovementPattern, type MuscleGroup, type MuscleGroupHeatmapQuery, type MuscleGroupHeatmapResponse, type MuscleGroupHeatmapValue, type MuscleGroupHeatmapWeek, type MuscleVolumeTrendSeries, PLATEAU_MIN_DAYS_SINCE_BEST, PLATEAU_MIN_SESSIONS, PLATEAU_MIN_SESSIONS_MAX, PLATEAU_MIN_SESSIONS_MIN, PLATEAU_RECENT_DAYS, PLATEAU_WINDOW_DAYS, PREFERRED_TRAINING_STYLE_VALUES, PROFILE_BIO_MAX_LENGTH, PROFILE_FAVORITE_EXERCISES_MAX, PROFILE_LOCATION_MAX_LENGTH, PROFILE_TRAINING_DISCIPLINES_MAX, PROFILE_TRAINING_GOALS_MAX, PROFILE_VISIBILITY_VALUES, PROGRESSION_SCHEMES, PROGRESS_TIMELINE_EVENT_TYPES, type PaginatedResponse, type PersonalGoalProgress, type PersonalGoalsResponse, type PersonalRecordEntry, type PersonalRecordKind, type PlatePairInventory, type PlateauPreferences, type PlateauSet, type PlateausResponse, type PreferredTrainingStyle, type PreviousPerformanceResponse, type PreviousSessionRecap, type PreviousSetPerformance, type ProfileDiscoverySettings, type ProfileFavoriteExercise, type ProfilePrivacySettings, type ProfileViewerAccess, type ProfileVisibility, type ProgressTimelineEventType, type ProgressTimelineItem, type ProgressTimelinePersonalRecordItem, type ProgressTimelineProgressionItem, type ProgressTimelineQuery, type ProgressTimelineRecordPerformance, type ProgressTimelineRecordReason, type ProgressTimelineResponse, type ProgressTimelineSessionContext, type ProgressionChange, type ProgressionRule, type ProgressionScheme, type ProgressionSetChange, type PublicBodyMetrics, type PublicTrainingSummary, type PublicUserProfile, RELATIONSHIP_LIST_DEFAULT_LIMIT, RELATIONSHIP_LIST_KINDS, RELATIONSHIP_LIST_MAX_LIMIT, RENAISSANCE_RANK_DEFINITIONS, REP_TYPES, RESERVED_USERNAMES, ROUTINE_DAYS_MAX, ROUTINE_DAY_NAME_MAX, ROUTINE_SCHEDULE_MODES, ROUTINE_VERSIONS_MAX, ROUTINE_VERSION_KINDS, ROUTINE_VERSION_NAME_MAX, type RecentActivityEntry, type RelationshipListKind, type RelationshipListQuery, type RelationshipListResponse, type RelationshipMember, type RenaissanceRankDefinition, type RenaissanceRankProgress, type RepType, type ReplaceMeasurableGoalsRequest, type ReplaceTrainingLocationsRequest, type RestoreRoutineVersionResponse, type Routine, type RoutineDay, type RoutineDayId, type RoutineExercise, type RoutineId, type RoutineScheduleMode, type RoutineSet, type RoutineVersion, type RoutineVersionDay, type RoutineVersionExercise, type RoutineVersionKind, type RoutineVersionSetup, type RoutineVersionsResponse, SCHEDULE_MOVE_MAX_DAYS, SCHEDULE_OVERRIDES_MAX_RANGE_DAYS, SCHEDULE_OVERRIDE_KINDS, SESSION_SHARE_DEFAULT_FIELDS, SESSION_SHARE_FIELDS, SESSION_SHARE_MAX_ACTIVE_LINKS, SEXES, STARRED_EXERCISES_MAX, type ScheduleOverride, type ScheduleOverrideKind, type ScheduleOverridesQuery, type ScheduleOverridesResponse, type SessionComparisonExercise, type SessionComparisonQuery, type SessionComparisonResponse, type SessionComparisonRoutineDay, type SessionComparisonSession, type SessionComparisonSet, type SessionExerciseSubstitution, type SessionRecapRecord, type SessionShare, type SessionShareField, type SessionShareListResponse, type SetAccountTimeZoneRequest, type SetLog, type Sex, type SharedSessionOwner, type SharedSessionRecap, type StarredExercise, type StarredExercisesResponse, type StartWorkoutRequest, type StartWorkoutResponse, type StreakMilestoneEventPayload, type SubstituteSessionExerciseRequest, type SubstituteSessionExerciseResponse, type SupabaseAuthResponse, type SupabaseAuthUser, type SupabaseMigrationResponse, TRAINING_DISCIPLINE_VALUES, TRAINING_EVENT_TYPES, TRAINING_EXPERIENCE_LEVEL_VALUES, TRAINING_GOAL_VALUES, type TrainingDiscipline, type TrainingEventType, type TrainingExperienceLevel, type TrainingGoal, type TrainingIdentity, type TrainingLocationPreference, type TrainingLocationPreferenceInput, USERNAME_MAX_LENGTH, USERNAME_MIN_LENGTH, USERNAME_PATTERN_SOURCE, type UpdateProfileDiscoveryRequest, type UpdateProfilePrivacyRequest, type UpdateProfileRequest, type UpdateRoutineRequest, type UpsertSetLogRequest, type UpsertSetLogResponse, type UserId, type UserProfile, type UserSearchResponse, type VolumeTrendPoint, type VolumeTrendQuery, type VolumeTrendResponse, type VolumeTrendSeries, WEIGHT_UNITS, WORKOUT_SESSION_STATUSES, type WeightUnit, type WorkoutAnalyticsStatus, type WorkoutProgressQuery, type WorkoutProgressResponse, type WorkoutSession, type WorkoutSessionId, type WorkoutSessionListResponse, type WorkoutSessionRecap, type WorkoutSessionSnapshotV1, type WorkoutSessionStatus, type WorkoutSessionSummary, type WorkoutStatsQuery, type WorkoutStatsResponse, routineDayLabel };
1379
+ export { ACHIEVEMENT_CATEGORIES, ACHIEVEMENT_DEFINITIONS, type AchievementCategory, type AchievementCategoryProgress, type AchievementDefinition, type AchievementUnlockedEventPayload, type AchievementsResponse, type Brand, COMEBACK_MIN_INACTIVE_DAYS, COMEBACK_RECOGNITION_LIMIT, COMEBACK_REQUIRED_ACTIVE_DAYS, COMEBACK_SESSION_LOOKBACK, COMEBACK_WINDOW_DAYS, type CalendarDate, type ComebackRecognition, type ComebackRecognitionSummary, type CreateRoutineDayInput, type CreateRoutineExerciseInput, type CreateRoutineRequest, type CreateRoutineVersionRequest, type CreateSessionShareRequest, EXERCISE_EQUIPMENT, EXERCISE_MECHANICS, type EarnedAchievement, type EarnedPersonalRecord, type Exercise, type ExerciseEquipment, type ExerciseId, type ExerciseMechanic, type ExercisePerformanceHistoryQuery, type ExercisePerformanceHistoryResponse, type ExercisePerformancePrescription, type ExercisePerformancePrescriptionSet, type ExercisePerformanceSession, type ExercisePerformanceSet, type ExercisePerformanceSummary, type ExercisePlateau, type ExerciseStrengthSummary, type ExerciseStrengthTrendPoint, type ExerciseStrengthTrendQuery, type ExerciseStrengthTrendResponse, FOLLOW_SUGGESTIONS_DEFAULT_LIMIT, FOLLOW_SUGGESTIONS_MAX_LIMIT, FOLLOW_SUGGESTION_REASONS, type FinishStatus, type FinishWorkoutRequest, type FinishWorkoutResponse, type FollowSuggestion, type FollowSuggestionReason, type FollowSuggestionsResponse, type IsoDateString, type ListSessionsParams, MEASURABLE_GOALS_MAX, MEASURABLE_GOAL_DIRECTIONS, MEASURABLE_GOAL_TYPES, MOVEMENT_PATTERNS, MUSCLE_GROUPS, type MeasurableGoal, type MeasurableGoalDirection, type MeasurableGoalExercise, type MeasurableGoalInput, type MeasurableGoalType, type MoveOccurrenceRequest, type MovementPattern, type MuscleGroup, type MuscleGroupHeatmapQuery, type MuscleGroupHeatmapResponse, type MuscleGroupHeatmapValue, type MuscleGroupHeatmapWeek, type MuscleVolumeTrendSeries, PLATEAU_MIN_DAYS_SINCE_BEST, PLATEAU_MIN_SESSIONS, PLATEAU_MIN_SESSIONS_MAX, PLATEAU_MIN_SESSIONS_MIN, PLATEAU_RECENT_DAYS, PLATEAU_WINDOW_DAYS, PREFERRED_TRAINING_STYLE_VALUES, PROFILE_BIO_MAX_LENGTH, PROFILE_FAVORITE_EXERCISES_MAX, PROFILE_LOCATION_MAX_LENGTH, PROFILE_TRAINING_DISCIPLINES_MAX, PROFILE_TRAINING_GOALS_MAX, PROFILE_VISIBILITY_VALUES, PROGRESSION_SCHEMES, PROGRESS_TIMELINE_EVENT_TYPES, type PaginatedResponse, type PersonalGoalProgress, type PersonalGoalsResponse, type PersonalRecordEntry, type PersonalRecordKind, type PlatePairInventory, type PlateauPreferences, type PlateauSet, type PlateausResponse, type PreferredTrainingStyle, type PreviousPerformanceResponse, type PreviousSessionRecap, type PreviousSetPerformance, type ProfileDiscoverySettings, type ProfileFavoriteExercise, type ProfilePrivacySettings, type ProfileViewerAccess, type ProfileVisibility, type ProgressTimelineEventType, type ProgressTimelineItem, type ProgressTimelinePersonalRecordItem, type ProgressTimelineProgressionItem, type ProgressTimelineQuery, type ProgressTimelineRecordPerformance, type ProgressTimelineRecordReason, type ProgressTimelineResponse, type ProgressTimelineSessionContext, type ProgressionChange, type ProgressionRule, type ProgressionScheme, type ProgressionSetChange, type PublicBodyMetrics, type PublicTrainingSummary, type PublicUserProfile, RELATIONSHIP_LIST_DEFAULT_LIMIT, RELATIONSHIP_LIST_KINDS, RELATIONSHIP_LIST_MAX_LIMIT, RENAISSANCE_RANK_DEFINITIONS, REP_TYPES, RESERVED_USERNAMES, ROUTINE_DAYS_MAX, ROUTINE_DAY_NAME_MAX, ROUTINE_SCHEDULE_MODES, ROUTINE_VERSIONS_MAX, ROUTINE_VERSION_KINDS, ROUTINE_VERSION_NAME_MAX, type RecentActivityEntry, type RelationshipListKind, type RelationshipListQuery, type RelationshipListResponse, type RelationshipMember, type RenaissanceRankDefinition, type RenaissanceRankProgress, type RepType, type ReplaceMeasurableGoalsRequest, type ReplaceTrainingLocationsRequest, type RestoreRoutineVersionResponse, type Routine, type RoutineDay, type RoutineDayId, type RoutineExercise, type RoutineId, type RoutineScheduleMode, type RoutineSet, type RoutineVersion, type RoutineVersionDay, type RoutineVersionExercise, type RoutineVersionKind, type RoutineVersionSetup, type RoutineVersionsResponse, SCHEDULE_MOVE_MAX_DAYS, SCHEDULE_OVERRIDES_MAX_RANGE_DAYS, SCHEDULE_OVERRIDE_KINDS, SCHEDULE_SKIP_PAST_DAYS, SESSION_SHARE_DEFAULT_FIELDS, SESSION_SHARE_FIELDS, SESSION_SHARE_MAX_ACTIVE_LINKS, SEXES, STARRED_EXERCISES_MAX, type ScheduleOverride, type ScheduleOverrideKind, type ScheduleOverridesQuery, type ScheduleOverridesResponse, type SessionComparisonExercise, type SessionComparisonQuery, type SessionComparisonResponse, type SessionComparisonRoutineDay, type SessionComparisonSession, type SessionComparisonSet, type SessionExerciseSubstitution, type SessionRecapRecord, type SessionShare, type SessionShareField, type SessionShareListResponse, type SetAccountTimeZoneRequest, type SetLog, type Sex, type SharedSessionOwner, type SharedSessionRecap, type SkipOccurrenceRequest, type StarredExercise, type StarredExercisesResponse, type StartWorkoutRequest, type StartWorkoutResponse, type StreakMilestoneEventPayload, type SubstituteSessionExerciseRequest, type SubstituteSessionExerciseResponse, type SupabaseAuthResponse, type SupabaseAuthUser, type SupabaseMigrationResponse, TRAINING_DISCIPLINE_VALUES, TRAINING_EVENT_TYPES, TRAINING_EXPERIENCE_LEVEL_VALUES, TRAINING_GOAL_VALUES, type TrainingDiscipline, type TrainingEventType, type TrainingExperienceLevel, type TrainingGoal, type TrainingIdentity, type TrainingLocationPreference, type TrainingLocationPreferenceInput, USERNAME_MAX_LENGTH, USERNAME_MIN_LENGTH, USERNAME_PATTERN_SOURCE, type UpdateProfileDiscoveryRequest, type UpdateProfilePrivacyRequest, type UpdateProfileRequest, type UpdateRoutineRequest, type UpsertSetLogRequest, type UpsertSetLogResponse, type UserId, type UserProfile, type UserSearchResponse, type VolumeTrendPoint, type VolumeTrendQuery, type VolumeTrendResponse, type VolumeTrendSeries, WEIGHT_UNITS, WORKOUT_SESSION_STATUSES, type WeightUnit, type WorkoutAnalyticsStatus, type WorkoutProgressQuery, type WorkoutProgressResponse, type WorkoutSession, type WorkoutSessionId, type WorkoutSessionListResponse, type WorkoutSessionRecap, type WorkoutSessionSnapshotV1, type WorkoutSessionStatus, type WorkoutSessionSummary, type WorkoutStatsQuery, type WorkoutStatsResponse, routineDayLabel };
package/dist/index.js CHANGED
@@ -275,6 +275,11 @@ var RENAISSANCE_RANK_DEFINITIONS = [
275
275
  minimumActiveWeeks: 52
276
276
  }
277
277
  ];
278
+ var COMEBACK_MIN_INACTIVE_DAYS = 14;
279
+ var COMEBACK_REQUIRED_ACTIVE_DAYS = 3;
280
+ var COMEBACK_WINDOW_DAYS = 14;
281
+ var COMEBACK_SESSION_LOOKBACK = 500;
282
+ var COMEBACK_RECOGNITION_LIMIT = 20;
278
283
 
279
284
  // src/routine.ts
280
285
  var ROUTINE_SCHEDULE_MODES = ["WEEKLY", "ROTATION"];
@@ -305,8 +310,9 @@ var ROUTINE_VERSION_NAME_MAX = 60;
305
310
  var ROUTINE_VERSION_KINDS = ["SAVED", "BEFORE_RESTORE"];
306
311
 
307
312
  // src/schedule.ts
308
- var SCHEDULE_OVERRIDE_KINDS = ["MOVE"];
313
+ var SCHEDULE_OVERRIDE_KINDS = ["MOVE", "SKIP"];
309
314
  var SCHEDULE_MOVE_MAX_DAYS = 6;
315
+ var SCHEDULE_SKIP_PAST_DAYS = 6;
310
316
  var SCHEDULE_OVERRIDES_MAX_RANGE_DAYS = 62;
311
317
 
312
318
  // src/workout.ts
@@ -347,6 +353,11 @@ var PLATEAU_MIN_SESSIONS_MAX = 8;
347
353
  export {
348
354
  ACHIEVEMENT_CATEGORIES,
349
355
  ACHIEVEMENT_DEFINITIONS,
356
+ COMEBACK_MIN_INACTIVE_DAYS,
357
+ COMEBACK_RECOGNITION_LIMIT,
358
+ COMEBACK_REQUIRED_ACTIVE_DAYS,
359
+ COMEBACK_SESSION_LOOKBACK,
360
+ COMEBACK_WINDOW_DAYS,
350
361
  EXERCISE_EQUIPMENT,
351
362
  EXERCISE_MECHANICS,
352
363
  FOLLOW_SUGGESTIONS_DEFAULT_LIMIT,
@@ -387,6 +398,7 @@ export {
387
398
  SCHEDULE_MOVE_MAX_DAYS,
388
399
  SCHEDULE_OVERRIDES_MAX_RANGE_DAYS,
389
400
  SCHEDULE_OVERRIDE_KINDS,
401
+ SCHEDULE_SKIP_PAST_DAYS,
390
402
  SESSION_SHARE_DEFAULT_FIELDS,
391
403
  SESSION_SHARE_FIELDS,
392
404
  SESSION_SHARE_MAX_ACTIVE_LINKS,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sunsteel/contracts",
3
- "version": "0.40.0",
3
+ "version": "0.42.0",
4
4
  "repository": {
5
5
  "type": "git",
6
6
  "url": "git+https://github.com/ezee969/sunsteel-contracts.git"