collavre 0.3.2 → 0.5.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.
- checksums.yaml +4 -4
- data/app/assets/stylesheets/collavre/actiontext.css +73 -71
- data/app/assets/stylesheets/collavre/activity_logs.css +18 -45
- data/app/assets/stylesheets/collavre/comments_popup.css +197 -35
- data/app/assets/stylesheets/collavre/creatives.css +101 -51
- data/app/assets/stylesheets/collavre/dark_mode.css +221 -88
- data/app/assets/stylesheets/collavre/design_tokens.css +334 -0
- data/app/assets/stylesheets/collavre/mention_menu.css +13 -9
- data/app/assets/stylesheets/collavre/popup.css +57 -27
- data/app/assets/stylesheets/collavre/slide_view.css +6 -6
- data/app/assets/stylesheets/collavre/user_menu.css +4 -5
- data/app/components/collavre/plans_timeline_component.html.erb +2 -2
- data/app/controllers/collavre/admin/orchestration_controller.rb +9 -2
- data/app/controllers/collavre/admin/settings_controller.rb +199 -0
- data/app/controllers/collavre/comments/reactions_controller.rb +1 -9
- data/app/controllers/collavre/comments_controller.rb +39 -162
- data/app/controllers/collavre/creatives_controller.rb +18 -58
- data/app/controllers/collavre/users_controller.rb +31 -3
- data/app/helpers/collavre/application_helper.rb +97 -0
- data/app/helpers/collavre/creatives_helper.rb +10 -202
- data/app/javascript/collavre.js +0 -1
- data/app/javascript/components/creative_tree_row.js +3 -2
- data/app/javascript/controllers/comment_controller.js +309 -4
- data/app/javascript/controllers/comments/form_controller.js +52 -0
- data/app/javascript/controllers/comments/presence_controller.js +13 -0
- data/app/javascript/controllers/creatives/tree_controller.js +2 -1
- data/app/javascript/controllers/link_creative_controller.js +29 -3
- data/app/javascript/lib/__tests__/html_code_block_wrapper.test.js +201 -0
- data/app/javascript/lib/html_code_block_wrapper.js +168 -0
- data/app/javascript/lib/utils/markdown.js +2 -1
- data/app/javascript/modules/creative_row_editor.js +5 -1
- data/app/javascript/utils/emoji_parser.js +21 -0
- data/app/jobs/collavre/ai_agent_job.rb +6 -2
- data/app/jobs/collavre/cron_action_job.rb +18 -6
- data/app/jobs/collavre/cron_scheduler_job.rb +112 -0
- data/app/models/collavre/comment/approvable.rb +50 -0
- data/app/models/collavre/comment/broadcastable.rb +119 -0
- data/app/models/collavre/comment/notifiable.rb +111 -0
- data/app/models/collavre/comment.rb +13 -258
- data/app/models/collavre/comment_reaction.rb +15 -0
- data/app/models/collavre/creative/describable.rb +86 -0
- data/app/models/collavre/creative/linkable.rb +77 -0
- data/app/models/collavre/creative/permissible.rb +103 -0
- data/app/models/collavre/creative.rb +3 -289
- data/app/models/collavre/orchestrator_policy.rb +1 -1
- data/app/models/collavre/system_setting.rb +27 -1
- data/app/models/collavre/user.rb +42 -0
- data/app/models/collavre/user_theme.rb +10 -0
- data/app/services/collavre/ai_agent/approval_handler.rb +110 -0
- data/app/services/collavre/ai_agent/message_builder.rb +129 -0
- data/app/services/collavre/ai_agent/review_handler.rb +70 -0
- data/app/services/collavre/ai_agent_service.rb +93 -150
- data/app/services/collavre/ai_client.rb +23 -4
- data/app/services/collavre/auto_theme_generator.rb +168 -50
- data/app/services/collavre/command_menu_service.rb +70 -0
- data/app/services/collavre/comment_move_service.rb +94 -0
- data/app/services/collavre/comments/action_executor.rb +10 -0
- data/app/services/collavre/comments/mcp_command.rb +1 -2
- data/app/services/collavre/creatives/create_service.rb +86 -0
- data/app/services/collavre/creatives/destroy_service.rb +41 -0
- data/app/services/collavre/creatives/index_query.rb +3 -0
- data/app/services/collavre/markdown_converter.rb +240 -0
- data/app/services/collavre/mention_parser.rb +63 -0
- data/app/services/collavre/orchestration/agent_context_builder.rb +24 -8
- data/app/services/collavre/orchestration/agent_orchestrator.rb +59 -10
- data/app/services/collavre/orchestration/loop_breaker.rb +12 -7
- data/app/services/collavre/orchestration/policy_resolver.rb +16 -2
- data/app/services/collavre/orchestration/scheduler.rb +4 -3
- data/app/services/collavre/orchestration/stuck_detector.rb +1 -1
- data/app/services/collavre/system_events/context_builder.rb +1 -6
- data/app/services/collavre/tools/creative_batch_service.rb +107 -0
- data/app/services/collavre/tools/creative_update_service.rb +17 -12
- data/app/services/collavre/tools/cron_create_service.rb +17 -5
- data/app/views/admin/shared/_tabs.html.erb +2 -1
- data/app/views/collavre/admin/orchestration/show.html.erb +11 -0
- data/app/views/collavre/admin/settings/_system_tab.html.erb +138 -0
- data/app/views/collavre/admin/settings/_uiux_tab.html.erb +44 -0
- data/app/views/collavre/admin/settings/index.html.erb +11 -0
- data/app/views/collavre/admin/settings/uiux.html.erb +11 -0
- data/app/views/collavre/comments/_comment.html.erb +15 -5
- data/app/views/collavre/comments/_comments_popup.html.erb +9 -2
- data/app/views/collavre/creatives/_mobile_actions_menu.html.erb +0 -3
- data/app/views/collavre/creatives/_share_button.html.erb +0 -52
- data/app/views/collavre/creatives/_share_modal.html.erb +52 -0
- data/app/views/collavre/creatives/index.html.erb +5 -8
- data/app/views/collavre/shared/navigation/_panels.html.erb +2 -2
- data/app/views/collavre/user_themes/index.html.erb +7 -9
- data/app/views/collavre/users/_contact_management.html.erb +2 -1
- data/app/views/collavre/users/edit_ai.html.erb +7 -0
- data/app/views/collavre/users/index.html.erb +16 -1
- data/app/views/collavre/users/new_ai.html.erb +18 -8
- data/app/views/collavre/users/passkeys.html.erb +1 -1
- data/app/views/collavre/users/show.html.erb +1 -1
- data/app/views/layouts/collavre/slide.html.erb +8 -1
- data/config/locales/admin.en.yml +88 -0
- data/config/locales/admin.ko.yml +88 -0
- data/config/locales/ai_agent.en.yml +5 -1
- data/config/locales/ai_agent.ko.yml +5 -1
- data/config/locales/comments.en.yml +5 -1
- data/config/locales/comments.ko.yml +5 -1
- data/config/locales/orchestration.en.yml +8 -0
- data/config/locales/orchestration.ko.yml +8 -0
- data/config/locales/users.en.yml +12 -0
- data/config/locales/users.ko.yml +12 -0
- data/config/routes.rb +7 -1
- data/db/migrate/20260212011655_add_quoted_comment_to_comments.rb +7 -0
- data/db/migrate/20260213044247_add_agent_conf_to_users.rb +5 -0
- data/lib/collavre/engine.rb +25 -0
- data/lib/collavre/version.rb +1 -1
- metadata +32 -1
|
@@ -23,7 +23,6 @@ ko:
|
|
|
23
23
|
not_owner: 댓글 소유자만 수정할 수 있습니다.
|
|
24
24
|
no_permission: 댓글을 추가할 권한이 없습니다.
|
|
25
25
|
convert_not_allowed: 댓글 소유자 또는 크리에이티브 관리자만 이 메시지를 전환할 수 있습니다.
|
|
26
|
-
gemini: Gemini
|
|
27
26
|
convert_button: 전환
|
|
28
27
|
convert_to_creative: 하위 크리에이티브로 전환
|
|
29
28
|
convert_confirm: 현재 크리에이티브 하위에 해당 댓글의 내용이 추가됩니다. 진행하시겠습니까?
|
|
@@ -44,6 +43,7 @@ ko:
|
|
|
44
43
|
approve_invalid_attributes: 댓글 작업 속성은 객체 형식이어야 합니다.
|
|
45
44
|
approve_no_attributes: 댓글 작업에는 최소 한 개의 허용 속성이 포함되어야 합니다.
|
|
46
45
|
approve_invalid_creative: 댓글 작업이 잘못된 크리에이티브를 대상으로 하고 있습니다.
|
|
46
|
+
approve_no_write_permission: 이 크리에이티브에 대한 쓰기 권한이 없습니다.
|
|
47
47
|
approve_invalid_progress: 댓글 작업 진행률은 숫자여야 합니다.
|
|
48
48
|
approve_invalid_description: 댓글 작업 설명은 텍스트여야 합니다.
|
|
49
49
|
approved_label: 승인됨
|
|
@@ -62,6 +62,8 @@ ko:
|
|
|
62
62
|
voice_stop: 중지
|
|
63
63
|
speech_unavailable: 이 브라우저는 음성 인식을 지원하지 않습니다.
|
|
64
64
|
move_button: 이동
|
|
65
|
+
review_button: 리뷰
|
|
66
|
+
replace_button: 바꾸기
|
|
65
67
|
move_no_selection: 이동할 메시지를 선택해주세요.
|
|
66
68
|
move_error: 메시지를 이동할 수 없습니다.
|
|
67
69
|
add_participant: 사용자 추가
|
|
@@ -84,6 +86,8 @@ ko:
|
|
|
84
86
|
event_created: '이벤트가 생성되었습니다: [구글 캘린더 이벤트](%{url})'
|
|
85
87
|
event_created_local: '이벤트가 생성되었습니다 (로컬 전용 - 구글 캘린더 연동 시 동기화됩니다)'
|
|
86
88
|
event_created_sync_failed: '이벤트가 생성되었습니다 (구글 캘린더 동기화 실패 - 구글 계정을 다시 연동해주세요)'
|
|
89
|
+
mcp_command:
|
|
90
|
+
error_running: "/%{tool_name} 실행 오류: %{error}"
|
|
87
91
|
topic_command:
|
|
88
92
|
missing_name: '토픽 이름을 따옴표로 지정하세요: /topic "토픽 이름"'
|
|
89
93
|
created: '토픽 "%{name}"이(가) 생성되었습니다.'
|
|
@@ -1,4 +1,12 @@
|
|
|
1
1
|
en:
|
|
2
|
+
collavre:
|
|
3
|
+
orchestration:
|
|
4
|
+
waiting_notice: "⏳ Waiting (%{reason})"
|
|
5
|
+
waiting_reasons:
|
|
6
|
+
topic_concurrency: "another task is running in this topic"
|
|
7
|
+
busy: "agent concurrency limit reached"
|
|
8
|
+
rate_limited: "rate limit reached"
|
|
9
|
+
unknown: "waiting for resources"
|
|
2
10
|
admin:
|
|
3
11
|
orchestration:
|
|
4
12
|
title: "AI Agent Orchestration"
|
|
@@ -1,4 +1,12 @@
|
|
|
1
1
|
ko:
|
|
2
|
+
collavre:
|
|
3
|
+
orchestration:
|
|
4
|
+
waiting_notice: "⏳ 대기중 (%{reason})"
|
|
5
|
+
waiting_reasons:
|
|
6
|
+
topic_concurrency: "이 토픽에서 다른 작업이 실행 중"
|
|
7
|
+
busy: "에이전트 동시 실행 한도 도달"
|
|
8
|
+
rate_limited: "요청 속도 제한 도달"
|
|
9
|
+
unknown: "리소스 대기 중"
|
|
2
10
|
admin:
|
|
3
11
|
orchestration:
|
|
4
12
|
title: "AI 에이전트 오케스트레이션"
|
data/config/locales/users.en.yml
CHANGED
|
@@ -35,6 +35,8 @@ en:
|
|
|
35
35
|
tools_note: You can check and test available tools after creating the agent.
|
|
36
36
|
create_ai:
|
|
37
37
|
success: AI User created successfully.
|
|
38
|
+
copy_ai:
|
|
39
|
+
link: Copy
|
|
38
40
|
edit_ai:
|
|
39
41
|
title: Edit AI Agent
|
|
40
42
|
link: Edit
|
|
@@ -42,6 +44,8 @@ en:
|
|
|
42
44
|
tools_title: Available Tools
|
|
43
45
|
tools_description: These tools are available for the agent to use.
|
|
44
46
|
no_tools_found: No tools found.
|
|
47
|
+
agent_conf_label: "Agent Configuration (YAML)"
|
|
48
|
+
agent_conf_help: "YAML configuration for agent behavior. chat_history: max previous messages (default 50), chat_history_size: max total characters (default 100000), context.creative_children_level: depth of children to include in creative context (default nil → follows user setting, 0=no children, 1=direct children, 2=grandchildren)."
|
|
45
49
|
chat_title: Chat with Agent
|
|
46
50
|
chat_placeholder: Type a message to test the agent...
|
|
47
51
|
update_ai:
|
|
@@ -126,6 +130,14 @@ en:
|
|
|
126
130
|
granted: System admin access granted.
|
|
127
131
|
revoked: System admin access removed.
|
|
128
132
|
failed: Could not update the user's system admin status.
|
|
133
|
+
unlock:
|
|
134
|
+
button: Unlock
|
|
135
|
+
success: "%{name} has been unlocked."
|
|
136
|
+
lock:
|
|
137
|
+
button: Lock
|
|
138
|
+
confirm: "Lock this user's account? They will not be able to log in."
|
|
139
|
+
success: "%{name} has been locked."
|
|
140
|
+
cannot_lock_self: "You cannot lock your own account."
|
|
129
141
|
destroy:
|
|
130
142
|
success: The user and all associated data have been deleted.
|
|
131
143
|
failure: Could not delete the user.
|
data/config/locales/users.ko.yml
CHANGED
|
@@ -33,6 +33,8 @@ ko:
|
|
|
33
33
|
tools_note: 에이전트 생성 후 사용 가능한 도구를 확인하고 테스트할 수 있습니다.
|
|
34
34
|
create_ai:
|
|
35
35
|
success: AI 에이전트가 생성되었습니다.
|
|
36
|
+
copy_ai:
|
|
37
|
+
link: 복사
|
|
36
38
|
edit_ai:
|
|
37
39
|
title: AI 에이전트 수정
|
|
38
40
|
link: 수정
|
|
@@ -40,6 +42,8 @@ ko:
|
|
|
40
42
|
tools_title: 사용 가능한 도구
|
|
41
43
|
tools_description: 에이전트가 사용할 수 있는 도구 목록입니다.
|
|
42
44
|
no_tools_found: 사용 가능한 도구가 없습니다.
|
|
45
|
+
agent_conf_label: "에이전트 설정 (YAML)"
|
|
46
|
+
agent_conf_help: "에이전트 동작을 위한 YAML 설정. chat_history: 최대 이전 메시지 수 (기본 50), chat_history_size: 최대 총 문자 수 (기본 100000), context.creative_children_level: 크리에이티브 컨텍스트에 포함할 자식 깊이 (기본 nil → 사용자 설정 따름, 0=자식 없음, 1=직접 자식, 2=손자까지)."
|
|
43
47
|
chat_title: 에이전트와 대화하기
|
|
44
48
|
chat_placeholder: 에이전트를 테스트하려면 메시지를 입력하세요...
|
|
45
49
|
update_ai:
|
|
@@ -121,6 +125,14 @@ ko:
|
|
|
121
125
|
granted: 시스템 관리자 권한이 부여되었습니다.
|
|
122
126
|
revoked: 시스템 관리자 권한이 해제되었습니다.
|
|
123
127
|
failed: 사용자의 시스템 관리자 상태를 변경하지 못했습니다.
|
|
128
|
+
unlock:
|
|
129
|
+
button: 잠금 해제
|
|
130
|
+
success: "%{name}의 잠금이 해제되었습니다."
|
|
131
|
+
lock:
|
|
132
|
+
button: 잠금
|
|
133
|
+
confirm: "이 사용자의 계정을 잠글까요? 로그인할 수 없게 됩니다."
|
|
134
|
+
success: "%{name}의 계정이 잠겼습니다."
|
|
135
|
+
cannot_lock_self: "자신의 계정은 잠글 수 없습니다."
|
|
124
136
|
destroy:
|
|
125
137
|
success: 사용자와 모든 관련 데이터가 삭제되었습니다.
|
|
126
138
|
failure: 사용자를 삭제하지 못했습니다.
|
data/config/routes.rb
CHANGED
|
@@ -15,6 +15,8 @@ Collavre::Engine.routes.draw do
|
|
|
15
15
|
patch :update_ai
|
|
16
16
|
patch :grant_system_admin
|
|
17
17
|
patch :revoke_system_admin
|
|
18
|
+
patch :unlock
|
|
19
|
+
patch :lock
|
|
18
20
|
get :edit_password
|
|
19
21
|
patch :update_password
|
|
20
22
|
get :passkeys
|
|
@@ -94,8 +96,12 @@ Collavre::Engine.routes.draw do
|
|
|
94
96
|
post "/creative_expanded_states/toggle", to: "creative_expanded_states#toggle"
|
|
95
97
|
post "/comment_read_pointers/update", to: "comment_read_pointers#update"
|
|
96
98
|
|
|
97
|
-
# Admin orchestration
|
|
99
|
+
# Admin settings & orchestration
|
|
98
100
|
scope "/admin", as: :admin do
|
|
101
|
+
get "/", to: "admin/settings#index", as: :settings
|
|
102
|
+
patch "/", to: "admin/settings#update"
|
|
103
|
+
get "/uiux", to: "admin/settings#uiux", as: :uiux
|
|
104
|
+
patch "/uiux", to: "admin/settings#update_uiux"
|
|
99
105
|
resource :orchestration, only: [ :show, :update ], controller: "admin/orchestration"
|
|
100
106
|
end
|
|
101
107
|
end
|
data/lib/collavre/engine.rb
CHANGED
|
@@ -68,6 +68,31 @@ module Collavre
|
|
|
68
68
|
end
|
|
69
69
|
end
|
|
70
70
|
|
|
71
|
+
# Boot the self-scheduling CronSchedulerJob for dynamic recurring tasks.
|
|
72
|
+
# Uses DB-based guard (SolidQueue::Job table) to prevent duplicate chains.
|
|
73
|
+
# Boot the self-scheduling CronSchedulerJob for dynamic recurring tasks.
|
|
74
|
+
# Uses DB-based guard (SolidQueue::Job table) to prevent duplicate chains.
|
|
75
|
+
# Runs in any non-test process that has DB access — the DB guard ensures
|
|
76
|
+
# only one scheduler chain is active regardless of how many processes boot.
|
|
77
|
+
initializer "collavre.cron_scheduler" do
|
|
78
|
+
config.after_initialize do
|
|
79
|
+
next if Rails.env.test?
|
|
80
|
+
|
|
81
|
+
# DB-based check: skip if a CronSchedulerJob is already pending
|
|
82
|
+
pending = SolidQueue::Job.where(class_name: "Collavre::CronSchedulerJob", finished_at: nil)
|
|
83
|
+
failed_ids = SolidQueue::FailedExecution.pluck(:job_id)
|
|
84
|
+
pending = pending.where.not(id: failed_ids) if failed_ids.any?
|
|
85
|
+
unless pending.exists?
|
|
86
|
+
Rails.logger.info("[CronScheduler] Booting self-scheduling cron scheduler")
|
|
87
|
+
Collavre::CronSchedulerJob.perform_later
|
|
88
|
+
else
|
|
89
|
+
Rails.logger.info("[CronScheduler] Already running, skipping boot")
|
|
90
|
+
end
|
|
91
|
+
rescue StandardError => e
|
|
92
|
+
Rails.logger.error("[CronScheduler] Failed to boot: #{e.message}")
|
|
93
|
+
end
|
|
94
|
+
end
|
|
95
|
+
|
|
71
96
|
# Reset navigation registry before any registrations (runs first)
|
|
72
97
|
initializer "collavre.navigation_reset" do
|
|
73
98
|
ActiveSupport::Reloader.to_prepare(prepend: true) do
|
data/lib/collavre/version.rb
CHANGED
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: collavre
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.
|
|
4
|
+
version: 0.5.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Collavre
|
|
@@ -164,6 +164,7 @@ files:
|
|
|
164
164
|
- app/assets/stylesheets/collavre/comments_popup.css
|
|
165
165
|
- app/assets/stylesheets/collavre/creatives.css
|
|
166
166
|
- app/assets/stylesheets/collavre/dark_mode.css
|
|
167
|
+
- app/assets/stylesheets/collavre/design_tokens.css
|
|
167
168
|
- app/assets/stylesheets/collavre/mention_menu.css
|
|
168
169
|
- app/assets/stylesheets/collavre/popup.css
|
|
169
170
|
- app/assets/stylesheets/collavre/print.css
|
|
@@ -187,6 +188,7 @@ files:
|
|
|
187
188
|
- app/components/collavre/progress_filter_component.rb
|
|
188
189
|
- app/components/collavre/user_mention_menu_component.rb
|
|
189
190
|
- app/controllers/collavre/admin/orchestration_controller.rb
|
|
191
|
+
- app/controllers/collavre/admin/settings_controller.rb
|
|
190
192
|
- app/controllers/collavre/application_controller.rb
|
|
191
193
|
- app/controllers/collavre/attachments_controller.rb
|
|
192
194
|
- app/controllers/collavre/calendar_events_controller.rb
|
|
@@ -256,6 +258,7 @@ files:
|
|
|
256
258
|
- app/javascript/creatives/drag_drop/operations.js
|
|
257
259
|
- app/javascript/creatives/drag_drop/state.js
|
|
258
260
|
- app/javascript/creatives/tree_renderer.js
|
|
261
|
+
- app/javascript/lib/__tests__/html_code_block_wrapper.test.js
|
|
259
262
|
- app/javascript/lib/api/__tests__/queue_manager.test.js
|
|
260
263
|
- app/javascript/lib/api/creatives.js
|
|
261
264
|
- app/javascript/lib/api/csrf_fetch.js
|
|
@@ -263,6 +266,7 @@ files:
|
|
|
263
266
|
- app/javascript/lib/api/queue_manager.js
|
|
264
267
|
- app/javascript/lib/apply_lexical_styles.js
|
|
265
268
|
- app/javascript/lib/common_popup.js
|
|
269
|
+
- app/javascript/lib/html_code_block_wrapper.js
|
|
266
270
|
- app/javascript/lib/lexical/__tests__/action_text_attachment_node.test.jsx
|
|
267
271
|
- app/javascript/lib/lexical/__tests__/attachment_payload.test.js
|
|
268
272
|
- app/javascript/lib/lexical/action_text_attachment_node.js
|
|
@@ -294,8 +298,10 @@ files:
|
|
|
294
298
|
- app/javascript/slide_view.js
|
|
295
299
|
- app/javascript/utils/caret_position.js
|
|
296
300
|
- app/javascript/utils/clipboard.js
|
|
301
|
+
- app/javascript/utils/emoji_parser.js
|
|
297
302
|
- app/jobs/collavre/ai_agent_job.rb
|
|
298
303
|
- app/jobs/collavre/cron_action_job.rb
|
|
304
|
+
- app/jobs/collavre/cron_scheduler_job.rb
|
|
299
305
|
- app/jobs/collavre/inbox_summary_job.rb
|
|
300
306
|
- app/jobs/collavre/permission_cache_cleanup_job.rb
|
|
301
307
|
- app/jobs/collavre/permission_cache_job.rb
|
|
@@ -311,11 +317,17 @@ files:
|
|
|
311
317
|
- app/models/collavre/application_record.rb
|
|
312
318
|
- app/models/collavre/calendar_event.rb
|
|
313
319
|
- app/models/collavre/comment.rb
|
|
320
|
+
- app/models/collavre/comment/approvable.rb
|
|
321
|
+
- app/models/collavre/comment/broadcastable.rb
|
|
322
|
+
- app/models/collavre/comment/notifiable.rb
|
|
314
323
|
- app/models/collavre/comment_presence_store.rb
|
|
315
324
|
- app/models/collavre/comment_reaction.rb
|
|
316
325
|
- app/models/collavre/comment_read_pointer.rb
|
|
317
326
|
- app/models/collavre/contact.rb
|
|
318
327
|
- app/models/collavre/creative.rb
|
|
328
|
+
- app/models/collavre/creative/describable.rb
|
|
329
|
+
- app/models/collavre/creative/linkable.rb
|
|
330
|
+
- app/models/collavre/creative/permissible.rb
|
|
319
331
|
- app/models/collavre/creative_expanded_state.rb
|
|
320
332
|
- app/models/collavre/creative_share.rb
|
|
321
333
|
- app/models/collavre/creative_shares_cache.rb
|
|
@@ -338,11 +350,16 @@ files:
|
|
|
338
350
|
- app/models/collavre/user_theme.rb
|
|
339
351
|
- app/models/collavre/variation.rb
|
|
340
352
|
- app/models/collavre/webauthn_credential.rb
|
|
353
|
+
- app/services/collavre/ai_agent/approval_handler.rb
|
|
354
|
+
- app/services/collavre/ai_agent/message_builder.rb
|
|
355
|
+
- app/services/collavre/ai_agent/review_handler.rb
|
|
341
356
|
- app/services/collavre/ai_agent_service.rb
|
|
342
357
|
- app/services/collavre/ai_client.rb
|
|
343
358
|
- app/services/collavre/ai_system_prompt_renderer.rb
|
|
344
359
|
- app/services/collavre/auto_theme_generator.rb
|
|
360
|
+
- app/services/collavre/command_menu_service.rb
|
|
345
361
|
- app/services/collavre/comment_link_formatter.rb
|
|
362
|
+
- app/services/collavre/comment_move_service.rb
|
|
346
363
|
- app/services/collavre/comments/action_executor.rb
|
|
347
364
|
- app/services/collavre/comments/action_validator.rb
|
|
348
365
|
- app/services/collavre/comments/calendar_command.rb
|
|
@@ -350,6 +367,8 @@ files:
|
|
|
350
367
|
- app/services/collavre/comments/mcp_command.rb
|
|
351
368
|
- app/services/collavre/comments/mcp_command_builder.rb
|
|
352
369
|
- app/services/collavre/comments/topic_command.rb
|
|
370
|
+
- app/services/collavre/creatives/create_service.rb
|
|
371
|
+
- app/services/collavre/creatives/destroy_service.rb
|
|
353
372
|
- app/services/collavre/creatives/filter_pipeline.rb
|
|
354
373
|
- app/services/collavre/creatives/filters/assignee_filter.rb
|
|
355
374
|
- app/services/collavre/creatives/filters/base_filter.rb
|
|
@@ -371,8 +390,10 @@ files:
|
|
|
371
390
|
- app/services/collavre/gemini_parent_recommender.rb
|
|
372
391
|
- app/services/collavre/google_calendar_service.rb
|
|
373
392
|
- app/services/collavre/link_preview_fetcher.rb
|
|
393
|
+
- app/services/collavre/markdown_converter.rb
|
|
374
394
|
- app/services/collavre/markdown_importer.rb
|
|
375
395
|
- app/services/collavre/mcp_service.rb
|
|
396
|
+
- app/services/collavre/mention_parser.rb
|
|
376
397
|
- app/services/collavre/orchestration/agent_context_builder.rb
|
|
377
398
|
- app/services/collavre/orchestration/agent_orchestrator.rb
|
|
378
399
|
- app/services/collavre/orchestration/arbiter.rb
|
|
@@ -387,6 +408,7 @@ files:
|
|
|
387
408
|
- app/services/collavre/ruby_llm_interaction_logger.rb
|
|
388
409
|
- app/services/collavre/system_events/context_builder.rb
|
|
389
410
|
- app/services/collavre/system_events/dispatcher.rb
|
|
411
|
+
- app/services/collavre/tools/creative_batch_service.rb
|
|
390
412
|
- app/services/collavre/tools/creative_create_service.rb
|
|
391
413
|
- app/services/collavre/tools/creative_retrieval_service.rb
|
|
392
414
|
- app/services/collavre/tools/creative_update_service.rb
|
|
@@ -396,6 +418,10 @@ files:
|
|
|
396
418
|
- app/services/collavre/tools/cron_update_service.rb
|
|
397
419
|
- app/views/admin/shared/_tabs.html.erb
|
|
398
420
|
- app/views/collavre/admin/orchestration/show.html.erb
|
|
421
|
+
- app/views/collavre/admin/settings/_system_tab.html.erb
|
|
422
|
+
- app/views/collavre/admin/settings/_uiux_tab.html.erb
|
|
423
|
+
- app/views/collavre/admin/settings/index.html.erb
|
|
424
|
+
- app/views/collavre/admin/settings/uiux.html.erb
|
|
399
425
|
- app/views/collavre/comments/_activity_log_details.html.erb
|
|
400
426
|
- app/views/collavre/comments/_comment.html.erb
|
|
401
427
|
- app/views/collavre/comments/_comments_popup.html.erb
|
|
@@ -413,6 +439,7 @@ files:
|
|
|
413
439
|
- app/views/collavre/creatives/_mobile_actions_menu.html.erb
|
|
414
440
|
- app/views/collavre/creatives/_set_plan_modal.html.erb
|
|
415
441
|
- app/views/collavre/creatives/_share_button.html.erb
|
|
442
|
+
- app/views/collavre/creatives/_share_modal.html.erb
|
|
416
443
|
- app/views/collavre/creatives/edit.html.erb
|
|
417
444
|
- app/views/collavre/creatives/index.html.erb
|
|
418
445
|
- app/views/collavre/creatives/new.html.erb
|
|
@@ -460,6 +487,8 @@ files:
|
|
|
460
487
|
- app/views/collavre/users/show.html.erb
|
|
461
488
|
- app/views/inbox/badge_component/_count.html.erb
|
|
462
489
|
- app/views/layouts/collavre/slide.html.erb
|
|
490
|
+
- config/locales/admin.en.yml
|
|
491
|
+
- config/locales/admin.ko.yml
|
|
463
492
|
- config/locales/ai_agent.en.yml
|
|
464
493
|
- config/locales/ai_agent.ko.yml
|
|
465
494
|
- config/locales/comments.en.yml
|
|
@@ -577,6 +606,8 @@ files:
|
|
|
577
606
|
- db/migrate/20260206005035_create_orchestrator_policies.rb
|
|
578
607
|
- db/migrate/20260206094509_add_retry_count_to_tasks.rb
|
|
579
608
|
- db/migrate/20260206100000_add_topic_id_to_tasks.rb
|
|
609
|
+
- db/migrate/20260212011655_add_quoted_comment_to_comments.rb
|
|
610
|
+
- db/migrate/20260213044247_add_agent_conf_to_users.rb
|
|
580
611
|
- lib/collavre.rb
|
|
581
612
|
- lib/collavre/configuration.rb
|
|
582
613
|
- lib/collavre/engine.rb
|