Skip to content

Commit 2df81ff

Browse files
Cover zero-width-joiner baseURL whitespace validation
Co-authored-by: Eric Allam <eric@trigger.dev>
1 parent 8d074d7 commit 2df81ff

File tree

3 files changed

+24
-0
lines changed

3 files changed

+24
-0
lines changed

docs/tasks/streams.mdx

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -682,6 +682,7 @@ Examples:
682682
-`https://api.trigger.dev/\rinternal`
683683
-`https://api.trigger.dev/\u200Binternal`
684684
-`https://api.trigger.dev/\u200Cinternal`
685+
-`https://api.trigger.dev/\u200Dinternal`
685686
-`https://api.trigger.dev/\u202Finternal`
686687
-`https://api.trigger.dev/\u2028internal`
687688
-`https://api.trigger.dev/\u2029internal`

packages/ai/README.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -189,6 +189,7 @@ Examples:
189189
-`https://api.trigger.dev/\rinternal` (internal carriage-return characters)
190190
-`https://api.trigger.dev/\u200Binternal` (internal zero-width-space characters)
191191
-`https://api.trigger.dev/\u200Cinternal` (internal zero-width-non-joiner characters)
192+
-`https://api.trigger.dev/\u200Dinternal` (internal zero-width-joiner characters)
192193
-`https://api.trigger.dev/\u202Finternal` (internal narrow no-break space characters)
193194
-`https://api.trigger.dev/\u2028internal` (internal line-separator characters)
194195
-`https://api.trigger.dev/\u2029internal` (internal paragraph-separator characters)

packages/ai/src/chatTransport.test.ts

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -852,6 +852,17 @@ describe("TriggerChatTransport", function () {
852852
}).toThrowError("baseURL must not contain internal whitespace characters");
853853
});
854854

855+
it("throws when baseURL contains internal zero-width-joiner characters", function () {
856+
expect(function () {
857+
new TriggerChatTransport({
858+
task: "chat-task",
859+
accessToken: "pk_trigger",
860+
baseURL: "https://api.trigger.dev/\u200Dinternal",
861+
stream: "chat-stream",
862+
});
863+
}).toThrowError("baseURL must not contain internal whitespace characters");
864+
});
865+
855866
it("throws when baseURL contains internal word-joiner characters", function () {
856867
expect(function () {
857868
new TriggerChatTransport({
@@ -3613,6 +3624,17 @@ describe("TriggerChatTransport", function () {
36133624
}).toThrowError("baseURL must not contain internal whitespace characters");
36143625
});
36153626

3627+
it("throws from factory when baseURL contains internal zero-width-joiner characters", function () {
3628+
expect(function () {
3629+
createTriggerChatTransport({
3630+
task: "chat-task",
3631+
accessToken: "pk_trigger",
3632+
baseURL: "https://api.trigger.dev/\u200Dinternal",
3633+
stream: "chat-stream",
3634+
});
3635+
}).toThrowError("baseURL must not contain internal whitespace characters");
3636+
});
3637+
36163638
it("throws from factory when baseURL contains internal word-joiner characters", function () {
36173639
expect(function () {
36183640
createTriggerChatTransport({

0 commit comments

Comments
 (0)