completion-kit 0.5.41 → 0.5.43
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.
- checksums.yaml +4 -4
- data/app/assets/javascripts/completion_kit/application.js +17 -0
- data/app/assets/stylesheets/completion_kit/application.css +557 -23
- data/app/controllers/completion_kit/metrics_controller.rb +62 -24
- data/app/jobs/completion_kit/judge_review_job.rb +11 -0
- data/app/models/completion_kit/judge_version.rb +32 -1
- data/app/models/completion_kit/starter_metric_dismissal.rb +5 -0
- data/app/services/completion_kit/judge_variant_generator.rb +8 -6
- data/app/services/completion_kit/metric_calibration_stats.rb +16 -4
- data/app/services/completion_kit/starter_metrics.rb +94 -0
- data/app/views/completion_kit/api_reference/_body.html.erb +1 -1
- data/app/views/completion_kit/calibrations/_buttons.html.erb +43 -6
- data/app/views/completion_kit/calibrations/_trust_panel.html.erb +27 -28
- data/app/views/completion_kit/metrics/_form.html.erb +90 -4
- data/app/views/completion_kit/metrics/_rubric_diff.html.erb +25 -0
- data/app/views/completion_kit/metrics/_rubric_hint.html.erb +4 -0
- data/app/views/completion_kit/metrics/_starter_card.html.erb +15 -0
- data/app/views/completion_kit/metrics/edit.html.erb +5 -1
- data/app/views/completion_kit/metrics/index.html.erb +32 -6
- data/app/views/completion_kit/metrics/show.html.erb +132 -126
- data/app/views/completion_kit/metrics/starter_preview.html.erb +45 -0
- data/app/views/completion_kit/responses/show.html.erb +1 -1
- data/app/views/completion_kit/runs/_status_panel.html.erb +2 -2
- data/config/routes.rb +7 -1
- data/db/migrate/20260524000001_create_completion_kit_starter_metric_dismissals.rb +12 -0
- data/db/migrate/20260525000001_add_version_number_and_published_at_to_judge_versions.rb +24 -0
- data/lib/completion_kit/version.rb +1 -1
- metadata +9 -1
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
<section class="ck-page-header">
|
|
2
|
+
<div>
|
|
3
|
+
<p class="ck-kicker">Starter metric</p>
|
|
4
|
+
<h1 class="ck-title"><%= @starter.name %></h1>
|
|
5
|
+
</div>
|
|
6
|
+
<div class="ck-actions">
|
|
7
|
+
<%= link_to "← Back to metrics", metrics_path, class: ck_button_classes(:light, variant: :outline) %>
|
|
8
|
+
</div>
|
|
9
|
+
</section>
|
|
10
|
+
|
|
11
|
+
<section class="ck-card ck-card--spaced">
|
|
12
|
+
<p class="ck-kicker">Why use this</p>
|
|
13
|
+
<p class="ck-copy"><strong><%= @starter.description %></strong></p>
|
|
14
|
+
<p class="ck-copy"><%= @starter.catches %></p>
|
|
15
|
+
</section>
|
|
16
|
+
|
|
17
|
+
<section class="ck-card ck-card--spaced">
|
|
18
|
+
<p class="ck-kicker">Judge instruction</p>
|
|
19
|
+
<p class="ck-copy"><%= @starter.instruction %></p>
|
|
20
|
+
</section>
|
|
21
|
+
|
|
22
|
+
<section class="ck-card ck-card--spaced">
|
|
23
|
+
<p class="ck-kicker">Rubric<%= render "completion_kit/metrics/rubric_hint" %></p>
|
|
24
|
+
<div class="ck-rubric-display">
|
|
25
|
+
<% @starter.rubric_bands.sort_by { |b| -b["stars"] }.each do |band| %>
|
|
26
|
+
<div class="ck-rubric-row ck-rubric-row--display">
|
|
27
|
+
<div class="ck-rubric-row__stars">
|
|
28
|
+
<% 5.times do |i| %>
|
|
29
|
+
<svg viewBox="0 0 24 24" width="16" height="16" stroke-width="1.75" class="ck-star <%= i < band["stars"] ? "ck-star--filled" : "ck-star--empty" %>"><polygon points="12 2 15.09 8.26 22 9.27 17 14.14 18.18 21.02 12 17.77 5.82 21.02 7 14.14 2 9.27 8.91 8.26 12 2"/></svg>
|
|
30
|
+
<% end %>
|
|
31
|
+
</div>
|
|
32
|
+
<div class="ck-rubric-row__fields">
|
|
33
|
+
<p class="ck-copy"><%= band["description"] %></p>
|
|
34
|
+
</div>
|
|
35
|
+
</div>
|
|
36
|
+
<% end %>
|
|
37
|
+
</div>
|
|
38
|
+
</section>
|
|
39
|
+
|
|
40
|
+
<div class="ck-starter-actions">
|
|
41
|
+
<%= link_to "Cancel", metrics_path, class: ck_button_classes(:light, variant: :outline) %>
|
|
42
|
+
<%= button_to "Add #{@starter.name} to my metrics", adopt_starter_metrics_path(key: @starter.key),
|
|
43
|
+
method: :post, form_class: "inline-block",
|
|
44
|
+
class: ck_button_classes(:dark) %>
|
|
45
|
+
</div>
|
|
@@ -98,7 +98,7 @@
|
|
|
98
98
|
|
|
99
99
|
<div class="ck-review-list">
|
|
100
100
|
<% @reviews.each do |review| %>
|
|
101
|
-
<div class="ck-review-card">
|
|
101
|
+
<div class="ck-review-card" id="<%= review.metric&.name&.parameterize || "review-#{review.id}" %>">
|
|
102
102
|
<div class="ck-review-card__header">
|
|
103
103
|
<span class="ck-review-card__metric"><% if review.metric %><%= link_to review.metric_name, metric_path(review.metric), class: "ck-link" %><% else %><%= review.metric_name %><% end %></span>
|
|
104
104
|
<div class="ck-inline">
|
|
@@ -46,7 +46,7 @@
|
|
|
46
46
|
<% else %>
|
|
47
47
|
<span class="ck-metric-pip ck-metric-pip--pending">
|
|
48
48
|
<span class="ck-metric-pip__bar"></span>
|
|
49
|
-
<span class="ck-metric-pip__label"><%= metric.name %> <
|
|
49
|
+
<span class="ck-metric-pip__label"><%= metric.name %> <span class="ck-metric-pip__sub">pending</span></span>
|
|
50
50
|
</span>
|
|
51
51
|
<% end %>
|
|
52
52
|
<% end %>
|
|
@@ -72,7 +72,7 @@
|
|
|
72
72
|
|
|
73
73
|
<% if failed_count > 0 %>
|
|
74
74
|
<%= button_to retry_failures_run_path(run), method: :post, class: "ck-run-status__retry", form_class: "ck-run-status__action" do %>
|
|
75
|
-
Retry <%= failed_count %> failed <%= "
|
|
75
|
+
Retry <%= failed_count %> failed <%= "case".pluralize(failed_count) %>
|
|
76
76
|
<% end %>
|
|
77
77
|
<% end %>
|
|
78
78
|
</section>
|
data/config/routes.rb
CHANGED
|
@@ -13,8 +13,14 @@ CompletionKit::Engine.routes.draw do
|
|
|
13
13
|
|
|
14
14
|
resources :datasets
|
|
15
15
|
resources :metrics do
|
|
16
|
+
collection do
|
|
17
|
+
get "starters/:key", to: "metrics#starter_preview", as: :starter_preview
|
|
18
|
+
post "starters/:key", to: "metrics#adopt_starter", as: :adopt_starter
|
|
19
|
+
post "starters/:key/dismiss", to: "metrics#dismiss_starter", as: :dismiss_starter
|
|
20
|
+
end
|
|
16
21
|
member do
|
|
17
|
-
post
|
|
22
|
+
post :add_few_shot
|
|
23
|
+
delete :remove_few_shot
|
|
18
24
|
post :publish_draft
|
|
19
25
|
post :suggest_variants
|
|
20
26
|
delete :dismiss_suggestion
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
class CreateCompletionKitStarterMetricDismissals < ActiveRecord::Migration[8.1]
|
|
2
|
+
def change
|
|
3
|
+
create_table :completion_kit_starter_metric_dismissals do |t|
|
|
4
|
+
t.string :starter_key, null: false
|
|
5
|
+
t.timestamps
|
|
6
|
+
end
|
|
7
|
+
|
|
8
|
+
add_index :completion_kit_starter_metric_dismissals, :starter_key,
|
|
9
|
+
unique: true,
|
|
10
|
+
name: "index_ck_starter_dismissals_on_key"
|
|
11
|
+
end
|
|
12
|
+
end
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
class AddVersionNumberAndPublishedAtToJudgeVersions < ActiveRecord::Migration[8.1]
|
|
2
|
+
def change
|
|
3
|
+
add_column :completion_kit_judge_versions, :version_number, :integer
|
|
4
|
+
add_column :completion_kit_judge_versions, :published_at, :datetime
|
|
5
|
+
|
|
6
|
+
reversible do |dir|
|
|
7
|
+
dir.up do
|
|
8
|
+
jv = Class.new(ActiveRecord::Base) { self.table_name = "completion_kit_judge_versions" }
|
|
9
|
+
jv.distinct.pluck(:metric_id).each do |metric_id|
|
|
10
|
+
jv.where(metric_id: metric_id).order(:created_at, :id).each_with_index do |row, i|
|
|
11
|
+
updates = { version_number: i + 1 }
|
|
12
|
+
updates[:published_at] = row.created_at if row[:state] == "published"
|
|
13
|
+
jv.where(id: row.id).update_all(updates)
|
|
14
|
+
end
|
|
15
|
+
end
|
|
16
|
+
end
|
|
17
|
+
end
|
|
18
|
+
|
|
19
|
+
change_column_null :completion_kit_judge_versions, :version_number, false
|
|
20
|
+
add_index :completion_kit_judge_versions,
|
|
21
|
+
[:metric_id, :version_number],
|
|
22
|
+
name: "index_ck_judge_versions_on_metric_version"
|
|
23
|
+
end
|
|
24
|
+
end
|
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: completion-kit
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.5.
|
|
4
|
+
version: 0.5.43
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Damien Bastin
|
|
@@ -284,6 +284,7 @@ files:
|
|
|
284
284
|
- app/models/completion_kit/review.rb
|
|
285
285
|
- app/models/completion_kit/run.rb
|
|
286
286
|
- app/models/completion_kit/run_metric.rb
|
|
287
|
+
- app/models/completion_kit/starter_metric_dismissal.rb
|
|
287
288
|
- app/models/completion_kit/suggestion.rb
|
|
288
289
|
- app/models/completion_kit/tag.rb
|
|
289
290
|
- app/models/completion_kit/tagging.rb
|
|
@@ -318,6 +319,7 @@ files:
|
|
|
318
319
|
- app/services/completion_kit/open_router_client.rb
|
|
319
320
|
- app/services/completion_kit/prompt_improvement_service.rb
|
|
320
321
|
- app/services/completion_kit/provider_endpoint.rb
|
|
322
|
+
- app/services/completion_kit/starter_metrics.rb
|
|
321
323
|
- app/services/completion_kit/worker_health.rb
|
|
322
324
|
- app/validators/completion_kit/tenant_scoped_uniqueness_validator.rb
|
|
323
325
|
- app/views/completion_kit/api_reference/_authentication.html.erb
|
|
@@ -345,10 +347,14 @@ files:
|
|
|
345
347
|
- app/views/completion_kit/metric_groups/new.html.erb
|
|
346
348
|
- app/views/completion_kit/metric_groups/show.html.erb
|
|
347
349
|
- app/views/completion_kit/metrics/_form.html.erb
|
|
350
|
+
- app/views/completion_kit/metrics/_rubric_diff.html.erb
|
|
351
|
+
- app/views/completion_kit/metrics/_rubric_hint.html.erb
|
|
352
|
+
- app/views/completion_kit/metrics/_starter_card.html.erb
|
|
348
353
|
- app/views/completion_kit/metrics/edit.html.erb
|
|
349
354
|
- app/views/completion_kit/metrics/index.html.erb
|
|
350
355
|
- app/views/completion_kit/metrics/new.html.erb
|
|
351
356
|
- app/views/completion_kit/metrics/show.html.erb
|
|
357
|
+
- app/views/completion_kit/metrics/starter_preview.html.erb
|
|
352
358
|
- app/views/completion_kit/onboarding/_concept.html.erb
|
|
353
359
|
- app/views/completion_kit/onboarding/show.html.erb
|
|
354
360
|
- app/views/completion_kit/prompts/_form.html.erb
|
|
@@ -414,6 +420,8 @@ files:
|
|
|
414
420
|
- db/migrate/20260522000002_create_completion_kit_calibrations.rb
|
|
415
421
|
- db/migrate/20260523000001_add_few_shot_examples_to_completion_kit_metrics.rb
|
|
416
422
|
- db/migrate/20260523000002_add_state_to_completion_kit_judge_versions.rb
|
|
423
|
+
- db/migrate/20260524000001_create_completion_kit_starter_metric_dismissals.rb
|
|
424
|
+
- db/migrate/20260525000001_add_version_number_and_published_at_to_judge_versions.rb
|
|
417
425
|
- lib/completion-kit.rb
|
|
418
426
|
- lib/completion_kit.rb
|
|
419
427
|
- lib/completion_kit/concurrency_check.rb
|