Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
30 commits
Select commit Hold shift + click to select a range
6441bf6
Support Linear agent sessions
michaelmwu Aug 28, 2026
0cb0fc3
Route Linear agent sessions through runtime
michaelmwu Aug 28, 2026
d895824
Fix Linear session lifecycle and history queries
michaelmwu Aug 29, 2026
390dd5f
Add Linear team and reply routing
michaelmwu Aug 29, 2026
7f5250c
Keep Linear agent mode optional
michaelmwu Aug 29, 2026
37ecf5a
Make Linear Agent Session scopes opt-in
michaelmwu Aug 29, 2026
85a7adb
Clarify Linear Agent Session reauthorization
michaelmwu Aug 31, 2026
b0b19d8
Hydrate compact Linear team events
michaelmwu Aug 31, 2026
df978fa
Compile migrated trigger runtime configurations
michaelmwu Sep 2, 2026
3bfd191
Hydrate compact project-scoped Linear events
michaelmwu Sep 2, 2026
55b9ccb
Linear sessions: finish the turn on reply, close explicitly, ask ques…
as-cto Sep 2, 2026
fa6e106
Preserve Linear filters in trigger documents
michaelmwu Sep 2, 2026
66cdf46
Handle long Linear threads and busy-session stops
michaelmwu Sep 2, 2026
f4507df
Fix Linear session stop and idle completion races
michaelmwu Sep 2, 2026
66fbfa9
Allow Linear stops after scope downgrade
michaelmwu Sep 2, 2026
9c21a15
Serialize Linear trigger suppression
michaelmwu Sep 2, 2026
49f5b90
Harden Linear session cancellation
michaelmwu Sep 2, 2026
0d1e243
Route Linear stops to active session work
michaelmwu Sep 2, 2026
07675b8
fix(linear): comment history query declares $issueId as ID
as-cto Sep 2, 2026
2bb6bca
fix(linear): exclude agent-session threads from comment triggers and …
as-cto Sep 2, 2026
433f7f2
Test prompted Linear comment suppression
michaelmwu Sep 2, 2026
76edb2f
Harden Linear session thread and stop handling
michaelmwu Sep 5, 2026
5d1db79
Close Linear session stop races
michaelmwu Sep 5, 2026
c0c3629
Keep partial Linear session routes cancellable
michaelmwu Sep 5, 2026
6549f50
Expose Linear reply options in dynamic runtime
michaelmwu Sep 5, 2026
0668fb1
Finish Linear session recovery cleanup
michaelmwu Sep 5, 2026
26fafa8
Make Linear scope downgrade explicit
michaelmwu Sep 5, 2026
bd91124
Integrate Linear triggers with session continuity
michaelmwu Sep 12, 2026
94eed95
Preserve Linear session stops after disconnect
michaelmwu Sep 23, 2026
e584ef1
Fail the active workflow step on stop
michaelmwu Sep 23, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
25 changes: 25 additions & 0 deletions drizzle/0049_big_black_bolt.sql
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
CREATE TABLE "linear_trigger_controls" (
"organization_id" text NOT NULL,
"project_id" uuid NOT NULL,
"kind" text NOT NULL,
"external_id" text NOT NULL,
"suppression_reason" text,
"suppression_occurred_at" timestamp with time zone,
"source_provider_event_receipt_id" uuid,
"created_at" timestamp with time zone DEFAULT now() NOT NULL,
"updated_at" timestamp with time zone DEFAULT now() NOT NULL,
CONSTRAINT "linear_trigger_controls_project_id_kind_external_id_pk" PRIMARY KEY("project_id","kind","external_id"),
CONSTRAINT "linear_trigger_controls_kind_check" CHECK ("linear_trigger_controls"."kind" in ('comment', 'agent_session')),
CONSTRAINT "linear_trigger_controls_suppression_check" CHECK (("linear_trigger_controls"."suppression_reason" is null and "linear_trigger_controls"."suppression_occurred_at" is null and "linear_trigger_controls"."source_provider_event_receipt_id" is null)
or ("linear_trigger_controls"."kind" = 'comment' and "linear_trigger_controls"."suppression_reason" = 'superseded_by_agent_session' and "linear_trigger_controls"."suppression_occurred_at" is not null and "linear_trigger_controls"."source_provider_event_receipt_id" is not null)
or ("linear_trigger_controls"."kind" = 'agent_session' and "linear_trigger_controls"."suppression_reason" = 'stopped_by_user' and "linear_trigger_controls"."suppression_occurred_at" is not null and "linear_trigger_controls"."source_provider_event_receipt_id" is not null))
);
--> statement-breakpoint
ALTER TABLE "provider_event_receipts" ADD COLUMN "linear_stop_confirmation_status" text;--> statement-breakpoint
ALTER TABLE "provider_event_receipts" ADD COLUMN "linear_stop_confirmation_claim_id" uuid;--> statement-breakpoint
ALTER TABLE "provider_event_receipts" ADD COLUMN "linear_stop_confirmation_lease_expires_at" timestamp with time zone;--> statement-breakpoint
ALTER TABLE "linear_trigger_controls" ADD CONSTRAINT "linear_trigger_controls_project_organization_fk" FOREIGN KEY ("project_id","organization_id") REFERENCES "public"."projects"("id","organization_id") ON DELETE cascade ON UPDATE no action;--> statement-breakpoint
CREATE INDEX "linear_trigger_controls_receipt_idx" ON "linear_trigger_controls" USING btree ("source_provider_event_receipt_id");--> statement-breakpoint
ALTER TABLE "provider_event_receipts" ADD CONSTRAINT "provider_event_receipts_linear_stop_confirmation_check" CHECK (("provider_event_receipts"."linear_stop_confirmation_status" is null and "provider_event_receipts"."linear_stop_confirmation_claim_id" is null and "provider_event_receipts"."linear_stop_confirmation_lease_expires_at" is null)
or ("provider_event_receipts"."linear_stop_confirmation_status" = 'pending' and "provider_event_receipts"."linear_stop_confirmation_claim_id" is not null and "provider_event_receipts"."linear_stop_confirmation_lease_expires_at" is not null)
or ("provider_event_receipts"."linear_stop_confirmation_status" = 'confirmed' and "provider_event_receipts"."linear_stop_confirmation_claim_id" is null and "provider_event_receipts"."linear_stop_confirmation_lease_expires_at" is null));
Loading
Loading