@ghostpaw/questlog 0.1.0 → 0.3.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/README.md +7 -0
- package/dist/index.cjs +185 -419
- package/dist/index.d.cts +15 -3
- package/dist/index.d.ts +15 -3
- package/dist/index.js +185 -419
- package/package.json +7 -1
package/dist/index.js
CHANGED
|
@@ -3751,70 +3751,42 @@ var manageRepeatableTool = defineQuestlogTool({
|
|
|
3751
3751
|
now: "Evaluation or spawn timestamp for previewing or materializing due anchors."
|
|
3752
3752
|
},
|
|
3753
3753
|
outputDescription: "Returns the changed repeatable quest, due anchor preview items, or spawned quest details for the selected recurrence action. Empty previews and empty spawns return structured success or no-op results, and repeatable hiding is now intentionally routed through `retire_work`.",
|
|
3754
|
-
inputSchema:
|
|
3755
|
-
|
|
3756
|
-
|
|
3757
|
-
|
|
3758
|
-
|
|
3759
|
-
|
|
3760
|
-
|
|
3761
|
-
|
|
3762
|
-
|
|
3763
|
-
),
|
|
3764
|
-
objectSchema(
|
|
3765
|
-
{
|
|
3766
|
-
action: enumSchema("Action to perform.", ["create"]),
|
|
3767
|
-
repeatableQuest: objectSchema(
|
|
3768
|
-
{
|
|
3769
|
-
title: stringSchema("Title for the new repeatable quest."),
|
|
3770
|
-
objective: stringSchema("Objective for the new repeatable quest."),
|
|
3771
|
-
rrule: stringSchema("RRULE describing recurrence."),
|
|
3772
|
-
anchorAt: integerSchema("Recurrence anchor timestamp.")
|
|
3773
|
-
},
|
|
3774
|
-
["title", "objective", "rrule", "anchorAt"]
|
|
3775
|
-
)
|
|
3776
|
-
},
|
|
3777
|
-
["action", "repeatableQuest"]
|
|
3778
|
-
),
|
|
3779
|
-
objectSchema(
|
|
3780
|
-
{
|
|
3781
|
-
action: enumSchema("Action to perform.", ["preview_due"]),
|
|
3782
|
-
now: integerSchema("Evaluation timestamp for due anchors.")
|
|
3783
|
-
},
|
|
3784
|
-
["action"]
|
|
3785
|
-
),
|
|
3786
|
-
objectSchema(
|
|
3754
|
+
inputSchema: objectSchema(
|
|
3755
|
+
{
|
|
3756
|
+
action: enumSchema("Action to perform.", [
|
|
3757
|
+
"archive",
|
|
3758
|
+
"create",
|
|
3759
|
+
"preview_due",
|
|
3760
|
+
"spawn_due",
|
|
3761
|
+
"update"
|
|
3762
|
+
]),
|
|
3763
|
+
repeatableQuestId: integerSchema("Repeatable quest to archive or update."),
|
|
3764
|
+
repeatableQuest: objectSchema(
|
|
3787
3765
|
{
|
|
3788
|
-
|
|
3789
|
-
|
|
3766
|
+
title: stringSchema("Title for the new repeatable quest."),
|
|
3767
|
+
objective: stringSchema("Objective for the new repeatable quest."),
|
|
3768
|
+
rrule: stringSchema("RRULE describing recurrence."),
|
|
3769
|
+
anchorAt: integerSchema("Recurrence anchor timestamp.")
|
|
3790
3770
|
},
|
|
3791
|
-
["
|
|
3771
|
+
["title", "objective", "rrule", "anchorAt"]
|
|
3792
3772
|
),
|
|
3793
|
-
|
|
3794
|
-
|
|
3795
|
-
|
|
3796
|
-
|
|
3797
|
-
|
|
3798
|
-
|
|
3799
|
-
|
|
3800
|
-
|
|
3801
|
-
|
|
3802
|
-
|
|
3803
|
-
|
|
3804
|
-
|
|
3805
|
-
|
|
3806
|
-
|
|
3807
|
-
|
|
3808
|
-
|
|
3809
|
-
|
|
3810
|
-
archivedAt: integerSchema("Optional archive timestamp."),
|
|
3811
|
-
now: integerSchema("Optional update timestamp.")
|
|
3812
|
-
},
|
|
3813
|
-
["action", "repeatableQuestId"]
|
|
3814
|
-
)
|
|
3815
|
-
],
|
|
3816
|
-
description: "Manage repeatable quest definitions and due materialization."
|
|
3817
|
-
},
|
|
3773
|
+
title: stringSchema("Optional new title for the update action."),
|
|
3774
|
+
objective: stringSchema("Optional new objective for the update action."),
|
|
3775
|
+
questlineId: integerSchema("Optional new questline id."),
|
|
3776
|
+
rrule: stringSchema("Optional new RRULE."),
|
|
3777
|
+
anchorAt: integerSchema("Optional new recurrence anchor timestamp."),
|
|
3778
|
+
notBeforeOffsetSeconds: integerSchema("Optional new not-before offset in seconds."),
|
|
3779
|
+
dueOffsetSeconds: integerSchema("Optional new due offset in seconds."),
|
|
3780
|
+
scheduledStartOffsetSeconds: integerSchema("Optional new scheduled-start offset in seconds."),
|
|
3781
|
+
scheduledEndOffsetSeconds: integerSchema("Optional new scheduled-end offset in seconds."),
|
|
3782
|
+
allDay: booleanSchema("Whether future schedules are all-day."),
|
|
3783
|
+
estimateSeconds: integerSchema("Optional new effort estimate."),
|
|
3784
|
+
archivedAt: integerSchema("Optional archive timestamp."),
|
|
3785
|
+
now: integerSchema("Evaluation or update timestamp.")
|
|
3786
|
+
},
|
|
3787
|
+
["action"],
|
|
3788
|
+
"Manage repeatable quest definitions and due materialization."
|
|
3789
|
+
),
|
|
3818
3790
|
handler: manageRepeatableToolHandler
|
|
3819
3791
|
});
|
|
3820
3792
|
|
|
@@ -4018,59 +3990,29 @@ var organizeWorkTool = defineQuestlogTool({
|
|
|
4018
3990
|
now: "Optional timestamp for unlock changes."
|
|
4019
3991
|
},
|
|
4020
3992
|
outputDescription: "Returns the updated questline detail or target quest detail after grouping or dependency changes. Repeated equivalent changes return structured no-op results.",
|
|
4021
|
-
inputSchema:
|
|
4022
|
-
|
|
4023
|
-
|
|
4024
|
-
|
|
4025
|
-
|
|
4026
|
-
|
|
4027
|
-
|
|
4028
|
-
|
|
4029
|
-
|
|
4030
|
-
|
|
4031
|
-
),
|
|
4032
|
-
|
|
4033
|
-
|
|
4034
|
-
|
|
4035
|
-
|
|
4036
|
-
|
|
4037
|
-
|
|
4038
|
-
|
|
4039
|
-
)
|
|
4040
|
-
|
|
4041
|
-
|
|
4042
|
-
|
|
4043
|
-
|
|
4044
|
-
now: integerSchema("Optional timestamp for the unlock change."),
|
|
4045
|
-
toQuestId: integerSchema("Quest whose blockers should change.")
|
|
4046
|
-
},
|
|
4047
|
-
["action", "fromQuestId", "toQuestId"]
|
|
4048
|
-
),
|
|
4049
|
-
objectSchema(
|
|
4050
|
-
{
|
|
4051
|
-
action: enumSchema("Action to perform.", ["replace_unlocks"]),
|
|
4052
|
-
fromQuestIds: arraySchema(integerSchema("Quest id."), "Full prerequisite quest id set."),
|
|
4053
|
-
now: integerSchema("Optional timestamp for the unlock change."),
|
|
4054
|
-
toQuestId: integerSchema("Quest whose blockers should change.")
|
|
4055
|
-
},
|
|
4056
|
-
["action", "fromQuestIds", "toQuestId"]
|
|
4057
|
-
),
|
|
4058
|
-
objectSchema(
|
|
4059
|
-
{
|
|
4060
|
-
action: enumSchema("Action to perform.", ["set_questline_fields"]),
|
|
4061
|
-
questlineId: integerSchema("Questline to update."),
|
|
4062
|
-
title: stringSchema("Optional new questline title."),
|
|
4063
|
-
description: stringSchema("Optional new questline description."),
|
|
4064
|
-
startsAt: integerSchema("Optional questline start timestamp."),
|
|
4065
|
-
dueAt: integerSchema("Optional questline due timestamp."),
|
|
4066
|
-
archivedAt: integerSchema("Optional archive timestamp."),
|
|
4067
|
-
now: integerSchema("Optional update timestamp.")
|
|
4068
|
-
},
|
|
4069
|
-
["action", "questlineId"]
|
|
4070
|
-
)
|
|
4071
|
-
],
|
|
4072
|
-
description: "Organize questline fields and unlock dependencies."
|
|
4073
|
-
},
|
|
3993
|
+
inputSchema: objectSchema(
|
|
3994
|
+
{
|
|
3995
|
+
action: enumSchema("Action to perform.", [
|
|
3996
|
+
"add_unlock",
|
|
3997
|
+
"archive_questline",
|
|
3998
|
+
"remove_unlock",
|
|
3999
|
+
"replace_unlocks",
|
|
4000
|
+
"set_questline_fields"
|
|
4001
|
+
]),
|
|
4002
|
+
questlineId: integerSchema("Questline to update or archive."),
|
|
4003
|
+
title: stringSchema("Optional new questline title."),
|
|
4004
|
+
description: stringSchema("Optional new questline description."),
|
|
4005
|
+
startsAt: integerSchema("Optional questline start timestamp."),
|
|
4006
|
+
dueAt: integerSchema("Optional questline due timestamp."),
|
|
4007
|
+
archivedAt: integerSchema("Optional archive timestamp."),
|
|
4008
|
+
toQuestId: integerSchema("Quest whose blockers should change."),
|
|
4009
|
+
fromQuestId: integerSchema("Prerequisite quest id."),
|
|
4010
|
+
fromQuestIds: arraySchema(integerSchema("Quest id."), "Full prerequisite quest id set."),
|
|
4011
|
+
now: integerSchema("Optional timestamp.")
|
|
4012
|
+
},
|
|
4013
|
+
["action"],
|
|
4014
|
+
"Organize questline fields and unlock dependencies."
|
|
4015
|
+
),
|
|
4074
4016
|
handler: organizeWorkToolHandler
|
|
4075
4017
|
});
|
|
4076
4018
|
|
|
@@ -4160,34 +4102,22 @@ var planQuestTool = defineQuestlogTool({
|
|
|
4160
4102
|
now: "Optional timestamp for updating the quest."
|
|
4161
4103
|
},
|
|
4162
4104
|
outputDescription: "Returns the updated quest detail after objective or planning changes. If the requested planning state is already present, the tool returns a structured no-op result.",
|
|
4163
|
-
inputSchema:
|
|
4164
|
-
|
|
4165
|
-
|
|
4166
|
-
|
|
4167
|
-
|
|
4168
|
-
|
|
4169
|
-
|
|
4170
|
-
|
|
4171
|
-
|
|
4172
|
-
|
|
4173
|
-
),
|
|
4174
|
-
|
|
4175
|
-
|
|
4176
|
-
|
|
4177
|
-
|
|
4178
|
-
|
|
4179
|
-
dueAt: integerSchema("Optional latest acceptable completion timestamp."),
|
|
4180
|
-
scheduledStartAt: integerSchema("Optional planned schedule window start."),
|
|
4181
|
-
scheduledEndAt: integerSchema("Optional planned schedule window end."),
|
|
4182
|
-
allDay: booleanSchema("Whether the planned schedule window is all-day."),
|
|
4183
|
-
estimateSeconds: integerSchema("Optional active-effort estimate in seconds."),
|
|
4184
|
-
now: integerSchema("Optional update timestamp.")
|
|
4185
|
-
},
|
|
4186
|
-
["action", "questId"]
|
|
4187
|
-
)
|
|
4188
|
-
],
|
|
4189
|
-
description: "Refine a quest objective or planning state."
|
|
4190
|
-
},
|
|
4105
|
+
inputSchema: objectSchema(
|
|
4106
|
+
{
|
|
4107
|
+
action: enumSchema("Action to perform.", ["revise_objective", "set_time"]),
|
|
4108
|
+
questId: integerSchema("The quest to refine."),
|
|
4109
|
+
objective: stringSchema("The new quest objective text. Required for revise_objective."),
|
|
4110
|
+
notBeforeAt: integerSchema("Optional earliest actionable timestamp."),
|
|
4111
|
+
dueAt: integerSchema("Optional latest acceptable completion timestamp."),
|
|
4112
|
+
scheduledStartAt: integerSchema("Optional planned schedule window start."),
|
|
4113
|
+
scheduledEndAt: integerSchema("Optional planned schedule window end."),
|
|
4114
|
+
allDay: booleanSchema("Whether the planned schedule window is all-day."),
|
|
4115
|
+
estimateSeconds: integerSchema("Optional active-effort estimate in seconds."),
|
|
4116
|
+
now: integerSchema("Optional update timestamp.")
|
|
4117
|
+
},
|
|
4118
|
+
["action", "questId"],
|
|
4119
|
+
"Refine a quest objective or planning state."
|
|
4120
|
+
),
|
|
4191
4121
|
handler: planQuestToolHandler
|
|
4192
4122
|
});
|
|
4193
4123
|
|
|
@@ -4743,104 +4673,46 @@ var rewardWorkTool = defineQuestlogTool({
|
|
|
4743
4673
|
now: "Optional timestamp for removing a reward or replacing repeatable reward templates."
|
|
4744
4674
|
},
|
|
4745
4675
|
outputDescription: "Returns the updated or claimed reward when one concrete reward changes, or a structured success result for repeatable future template replacement. Already-claimed rewards return a structured no-op for claim and an error for invalid update or remove attempts.",
|
|
4746
|
-
inputSchema:
|
|
4747
|
-
|
|
4748
|
-
|
|
4749
|
-
|
|
4750
|
-
|
|
4751
|
-
|
|
4752
|
-
|
|
4753
|
-
|
|
4754
|
-
|
|
4755
|
-
|
|
4756
|
-
["kind", "name"]
|
|
4757
|
-
),
|
|
4758
|
-
target: objectSchema(
|
|
4759
|
-
{
|
|
4760
|
-
id: integerSchema("Quest id."),
|
|
4761
|
-
kind: enumSchema("Target kind.", ["quest"])
|
|
4762
|
-
},
|
|
4763
|
-
["id", "kind"]
|
|
4764
|
-
)
|
|
4765
|
-
},
|
|
4766
|
-
["action", "reward", "target"]
|
|
4767
|
-
),
|
|
4768
|
-
objectSchema(
|
|
4676
|
+
inputSchema: objectSchema(
|
|
4677
|
+
{
|
|
4678
|
+
action: enumSchema("Action to perform.", [
|
|
4679
|
+
"add",
|
|
4680
|
+
"claim",
|
|
4681
|
+
"remove",
|
|
4682
|
+
"replace_repeatable_template",
|
|
4683
|
+
"update"
|
|
4684
|
+
]),
|
|
4685
|
+
target: objectSchema(
|
|
4769
4686
|
{
|
|
4770
|
-
|
|
4771
|
-
|
|
4772
|
-
target: objectSchema(
|
|
4773
|
-
{
|
|
4774
|
-
id: integerSchema("Reward id."),
|
|
4775
|
-
kind: enumSchema("Target kind.", ["reward"])
|
|
4776
|
-
},
|
|
4777
|
-
["id", "kind"]
|
|
4778
|
-
)
|
|
4687
|
+
id: integerSchema("Target entity id."),
|
|
4688
|
+
kind: enumSchema("Target kind.", ["quest", "reward", "repeatable_quest"])
|
|
4779
4689
|
},
|
|
4780
|
-
["
|
|
4690
|
+
["id", "kind"]
|
|
4781
4691
|
),
|
|
4782
|
-
objectSchema(
|
|
4692
|
+
reward: objectSchema(
|
|
4783
4693
|
{
|
|
4784
|
-
|
|
4785
|
-
|
|
4786
|
-
|
|
4787
|
-
{
|
|
4788
|
-
id: integerSchema("Reward id."),
|
|
4789
|
-
kind: enumSchema("Target kind.", ["reward"])
|
|
4790
|
-
},
|
|
4791
|
-
["id", "kind"]
|
|
4792
|
-
)
|
|
4694
|
+
kind: stringSchema("Reward kind."),
|
|
4695
|
+
name: stringSchema("Reward name."),
|
|
4696
|
+
now: integerSchema("Optional update timestamp for the update action.")
|
|
4793
4697
|
},
|
|
4794
|
-
[
|
|
4698
|
+
[]
|
|
4795
4699
|
),
|
|
4796
|
-
|
|
4797
|
-
|
|
4798
|
-
|
|
4799
|
-
|
|
4800
|
-
|
|
4801
|
-
|
|
4802
|
-
|
|
4803
|
-
|
|
4804
|
-
|
|
4805
|
-
},
|
|
4806
|
-
["kind", "name"]
|
|
4807
|
-
),
|
|
4808
|
-
"Full future reward template set."
|
|
4809
|
-
),
|
|
4810
|
-
target: objectSchema(
|
|
4811
|
-
{
|
|
4812
|
-
id: integerSchema("Repeatable quest id."),
|
|
4813
|
-
kind: enumSchema("Target kind.", ["repeatable_quest"])
|
|
4814
|
-
},
|
|
4815
|
-
["id", "kind"]
|
|
4816
|
-
)
|
|
4817
|
-
},
|
|
4818
|
-
["action", "target", "rewards"]
|
|
4700
|
+
rewards: arraySchema(
|
|
4701
|
+
objectSchema(
|
|
4702
|
+
{
|
|
4703
|
+
kind: stringSchema("Reward kind."),
|
|
4704
|
+
name: stringSchema("Reward name.")
|
|
4705
|
+
},
|
|
4706
|
+
["kind", "name"]
|
|
4707
|
+
),
|
|
4708
|
+
"Full future reward template set. Required for replace_repeatable_template."
|
|
4819
4709
|
),
|
|
4820
|
-
|
|
4821
|
-
|
|
4822
|
-
|
|
4823
|
-
|
|
4824
|
-
|
|
4825
|
-
|
|
4826
|
-
name: stringSchema("Optional reward name."),
|
|
4827
|
-
now: integerSchema("Optional update timestamp.")
|
|
4828
|
-
},
|
|
4829
|
-
[]
|
|
4830
|
-
),
|
|
4831
|
-
target: objectSchema(
|
|
4832
|
-
{
|
|
4833
|
-
id: integerSchema("Reward id."),
|
|
4834
|
-
kind: enumSchema("Target kind.", ["reward"])
|
|
4835
|
-
},
|
|
4836
|
-
["id", "kind"]
|
|
4837
|
-
)
|
|
4838
|
-
},
|
|
4839
|
-
["action", "target", "reward"]
|
|
4840
|
-
)
|
|
4841
|
-
],
|
|
4842
|
-
description: "Manage quest rewards and repeatable reward templates."
|
|
4843
|
-
},
|
|
4710
|
+
claimedAt: integerSchema("Optional claim timestamp."),
|
|
4711
|
+
now: integerSchema("Optional timestamp for removal or template replacement.")
|
|
4712
|
+
},
|
|
4713
|
+
["action", "target"],
|
|
4714
|
+
"Manage quest rewards and repeatable reward templates."
|
|
4715
|
+
),
|
|
4844
4716
|
handler: rewardWorkToolHandler
|
|
4845
4717
|
});
|
|
4846
4718
|
|
|
@@ -4996,65 +4868,39 @@ var runQuestTool = defineQuestlogTool({
|
|
|
4996
4868
|
followups: "Follow-up quest creation inputs used only for the abandon-and-spawn-followups action."
|
|
4997
4869
|
},
|
|
4998
4870
|
outputDescription: "Returns the updated quest detail after the selected lifecycle action, plus purpose-shaped primary, updated, and created refs when follow-up work is spawned. Safe repeated starts return structured no-op results.",
|
|
4999
|
-
inputSchema:
|
|
5000
|
-
|
|
5001
|
-
|
|
5002
|
-
|
|
5003
|
-
|
|
5004
|
-
|
|
5005
|
-
|
|
5006
|
-
|
|
5007
|
-
|
|
5008
|
-
|
|
5009
|
-
),
|
|
5010
|
-
|
|
5011
|
-
|
|
5012
|
-
action: enumSchema("Action to perform.", ["abandon_and_spawn_followups"]),
|
|
5013
|
-
followups: arraySchema(
|
|
5014
|
-
objectSchema(
|
|
5015
|
-
{
|
|
5016
|
-
title: stringSchema("Title for a follow-up quest."),
|
|
5017
|
-
objective: stringSchema("Objective for a follow-up quest.")
|
|
5018
|
-
},
|
|
5019
|
-
["title", "objective"]
|
|
5020
|
-
),
|
|
5021
|
-
"Follow-up quests to create atomically."
|
|
5022
|
-
),
|
|
5023
|
-
outcome: stringSchema("Terminal outcome text."),
|
|
5024
|
-
questId: integerSchema("Quest to abandon."),
|
|
5025
|
-
resolvedAt: integerSchema("Optional resolved timestamp.")
|
|
5026
|
-
},
|
|
5027
|
-
["action", "questId", "outcome", "followups"]
|
|
5028
|
-
),
|
|
5029
|
-
objectSchema(
|
|
5030
|
-
{
|
|
5031
|
-
action: enumSchema("Action to perform.", ["finish"]),
|
|
5032
|
-
outcome: stringSchema("Terminal outcome text."),
|
|
5033
|
-
questId: integerSchema("Quest to finish."),
|
|
5034
|
-
resolvedAt: integerSchema("Optional resolved timestamp.")
|
|
5035
|
-
},
|
|
5036
|
-
["action", "questId", "outcome"]
|
|
4871
|
+
inputSchema: objectSchema(
|
|
4872
|
+
{
|
|
4873
|
+
action: enumSchema("Action to perform.", [
|
|
4874
|
+
"start",
|
|
4875
|
+
"log_effort",
|
|
4876
|
+
"finish",
|
|
4877
|
+
"abandon",
|
|
4878
|
+
"abandon_and_spawn_followups"
|
|
4879
|
+
]),
|
|
4880
|
+
questId: integerSchema("Quest whose execution state should change."),
|
|
4881
|
+
startedAt: integerSchema("Optional start timestamp for the start action."),
|
|
4882
|
+
effortSeconds: integerSchema(
|
|
4883
|
+
"Positive active-effort increment in seconds. Required for log_effort."
|
|
5037
4884
|
),
|
|
5038
|
-
|
|
5039
|
-
|
|
5040
|
-
|
|
5041
|
-
effortSeconds: integerSchema("Positive active-effort increment in seconds."),
|
|
5042
|
-
now: integerSchema("Optional effort-log timestamp."),
|
|
5043
|
-
questId: integerSchema("Quest to update.")
|
|
5044
|
-
},
|
|
5045
|
-
["action", "questId", "effortSeconds"]
|
|
4885
|
+
now: integerSchema("Optional effort-log timestamp."),
|
|
4886
|
+
outcome: stringSchema(
|
|
4887
|
+
"Terminal outcome text. Required for finish, abandon, and abandon_and_spawn_followups."
|
|
5046
4888
|
),
|
|
5047
|
-
|
|
5048
|
-
|
|
5049
|
-
|
|
5050
|
-
|
|
5051
|
-
|
|
5052
|
-
|
|
5053
|
-
|
|
4889
|
+
resolvedAt: integerSchema("Optional resolved timestamp for finish or abandon actions."),
|
|
4890
|
+
followups: arraySchema(
|
|
4891
|
+
objectSchema(
|
|
4892
|
+
{
|
|
4893
|
+
title: stringSchema("Title for a follow-up quest."),
|
|
4894
|
+
objective: stringSchema("Objective for a follow-up quest.")
|
|
4895
|
+
},
|
|
4896
|
+
["title", "objective"]
|
|
4897
|
+
),
|
|
4898
|
+
"Follow-up quests to create atomically. Required for abandon_and_spawn_followups."
|
|
5054
4899
|
)
|
|
5055
|
-
|
|
5056
|
-
|
|
5057
|
-
|
|
4900
|
+
},
|
|
4901
|
+
["action", "questId"],
|
|
4902
|
+
"Run quest lifecycle actions."
|
|
4903
|
+
),
|
|
5058
4904
|
handler: runQuestToolHandler
|
|
5059
4905
|
});
|
|
5060
4906
|
|
|
@@ -5406,93 +5252,50 @@ var shapeWorkTool = defineQuestlogTool({
|
|
|
5406
5252
|
now: "Optional timestamp for reopen or questline membership changes."
|
|
5407
5253
|
},
|
|
5408
5254
|
outputDescription: "Returns the changed or created rumor, quest, questline, or created quest set for the selected shape-work action, plus purpose-shaped primary and created or updated refs. Repeated safe actions return structured no-op results, and rumor settlement can ask for missing structure instead of failing.",
|
|
5409
|
-
inputSchema:
|
|
5410
|
-
|
|
5411
|
-
|
|
5412
|
-
|
|
5413
|
-
|
|
5414
|
-
|
|
5415
|
-
|
|
5416
|
-
|
|
5417
|
-
|
|
5418
|
-
|
|
5419
|
-
),
|
|
5420
|
-
|
|
5421
|
-
|
|
5422
|
-
|
|
5423
|
-
quest: objectSchema(
|
|
5424
|
-
{
|
|
5425
|
-
title: stringSchema("Title for the new quest."),
|
|
5426
|
-
objective: stringSchema("Objective for the new quest.")
|
|
5427
|
-
},
|
|
5428
|
-
["title", "objective"]
|
|
5429
|
-
)
|
|
5430
|
-
},
|
|
5431
|
-
["action", "quest"]
|
|
5432
|
-
),
|
|
5433
|
-
objectSchema(
|
|
5434
|
-
{
|
|
5435
|
-
action: enumSchema("Action to perform.", ["create_questline"]),
|
|
5436
|
-
questline: objectSchema(
|
|
5437
|
-
{
|
|
5438
|
-
title: stringSchema("Title for the new questline.")
|
|
5439
|
-
},
|
|
5440
|
-
["title"]
|
|
5441
|
-
)
|
|
5442
|
-
},
|
|
5443
|
-
["action", "questline"]
|
|
5444
|
-
),
|
|
5445
|
-
objectSchema(
|
|
5255
|
+
inputSchema: objectSchema(
|
|
5256
|
+
{
|
|
5257
|
+
action: enumSchema("Action to perform.", [
|
|
5258
|
+
"attach_quest_to_questline",
|
|
5259
|
+
"create_quest",
|
|
5260
|
+
"create_questline",
|
|
5261
|
+
"detach_quest_from_questline",
|
|
5262
|
+
"dismiss_rumor",
|
|
5263
|
+
"reopen_rumor",
|
|
5264
|
+
"settle_rumor"
|
|
5265
|
+
]),
|
|
5266
|
+
questId: integerSchema("Quest to attach or detach."),
|
|
5267
|
+
questlineId: integerSchema("Questline that should receive the quest."),
|
|
5268
|
+
quest: objectSchema(
|
|
5446
5269
|
{
|
|
5447
|
-
|
|
5448
|
-
|
|
5449
|
-
questId: integerSchema("Quest to detach.")
|
|
5270
|
+
title: stringSchema("Title for the new quest."),
|
|
5271
|
+
objective: stringSchema("Objective for the new quest.")
|
|
5450
5272
|
},
|
|
5451
|
-
["
|
|
5273
|
+
["title", "objective"]
|
|
5452
5274
|
),
|
|
5453
|
-
objectSchema(
|
|
5275
|
+
questline: objectSchema(
|
|
5454
5276
|
{
|
|
5455
|
-
|
|
5456
|
-
dismissedAt: integerSchema("Optional dismissal timestamp."),
|
|
5457
|
-
rumorId: integerSchema("Rumor to dismiss.")
|
|
5277
|
+
title: stringSchema("Questline title.")
|
|
5458
5278
|
},
|
|
5459
|
-
[
|
|
5279
|
+
[]
|
|
5460
5280
|
),
|
|
5461
|
-
|
|
5462
|
-
|
|
5463
|
-
|
|
5464
|
-
|
|
5465
|
-
|
|
5466
|
-
|
|
5467
|
-
|
|
5281
|
+
rumorId: integerSchema("Rumor to settle, dismiss, or reopen."),
|
|
5282
|
+
dismissedAt: integerSchema("Optional dismissal timestamp."),
|
|
5283
|
+
settledAt: integerSchema("Optional settlement timestamp."),
|
|
5284
|
+
quests: arraySchema(
|
|
5285
|
+
objectSchema(
|
|
5286
|
+
{
|
|
5287
|
+
title: stringSchema("Title for a created quest."),
|
|
5288
|
+
objective: stringSchema("Objective for a created quest.")
|
|
5289
|
+
},
|
|
5290
|
+
["title", "objective"]
|
|
5291
|
+
),
|
|
5292
|
+
"Quests to create during rumor settlement."
|
|
5468
5293
|
),
|
|
5469
|
-
|
|
5470
|
-
|
|
5471
|
-
|
|
5472
|
-
|
|
5473
|
-
|
|
5474
|
-
questline: objectSchema(
|
|
5475
|
-
{
|
|
5476
|
-
title: stringSchema("Optional questline title to create during settlement.")
|
|
5477
|
-
},
|
|
5478
|
-
[]
|
|
5479
|
-
),
|
|
5480
|
-
quests: arraySchema(
|
|
5481
|
-
objectSchema(
|
|
5482
|
-
{
|
|
5483
|
-
title: stringSchema("Title for a created quest."),
|
|
5484
|
-
objective: stringSchema("Objective for a created quest.")
|
|
5485
|
-
},
|
|
5486
|
-
["title", "objective"]
|
|
5487
|
-
),
|
|
5488
|
-
"Optional quests to create during settlement."
|
|
5489
|
-
)
|
|
5490
|
-
},
|
|
5491
|
-
["action", "rumorId"]
|
|
5492
|
-
)
|
|
5493
|
-
],
|
|
5494
|
-
description: "Shape the work graph by settling rumors, creating work, or moving quests into questlines."
|
|
5495
|
-
},
|
|
5294
|
+
now: integerSchema("Optional timestamp for membership or reopen changes.")
|
|
5295
|
+
},
|
|
5296
|
+
["action"],
|
|
5297
|
+
"Shape the work graph by settling rumors, creating work, or moving quests into questlines."
|
|
5298
|
+
),
|
|
5496
5299
|
handler: shapeWorkToolHandler
|
|
5497
5300
|
});
|
|
5498
5301
|
|
|
@@ -5692,59 +5495,22 @@ var tagWorkTool = defineQuestlogTool({
|
|
|
5692
5495
|
now: "Optional timestamp for the tag mutation."
|
|
5693
5496
|
},
|
|
5694
5497
|
outputDescription: "Returns the normalized final tag set for the target after the selected tag action. Repeated equivalent changes return structured no-op results.",
|
|
5695
|
-
inputSchema:
|
|
5696
|
-
|
|
5697
|
-
|
|
5698
|
-
|
|
5699
|
-
action: enumSchema("Action to perform.", ["add"]),
|
|
5700
|
-
now: integerSchema("Optional timestamp for the tag mutation."),
|
|
5701
|
-
tagNames: arraySchema(stringSchema("Tag name."), "Tags to add."),
|
|
5702
|
-
target: objectSchema(
|
|
5703
|
-
{
|
|
5704
|
-
id: integerSchema("Quest id."),
|
|
5705
|
-
kind: enumSchema("Target kind.", ["quest"])
|
|
5706
|
-
},
|
|
5707
|
-
["id", "kind"]
|
|
5708
|
-
)
|
|
5709
|
-
},
|
|
5710
|
-
["action", "target", "tagNames"]
|
|
5711
|
-
),
|
|
5712
|
-
objectSchema(
|
|
5498
|
+
inputSchema: objectSchema(
|
|
5499
|
+
{
|
|
5500
|
+
action: enumSchema("Action to perform.", ["add", "remove", "replace"]),
|
|
5501
|
+
target: objectSchema(
|
|
5713
5502
|
{
|
|
5714
|
-
|
|
5715
|
-
|
|
5716
|
-
tagNames: arraySchema(stringSchema("Tag name."), "Tags to remove."),
|
|
5717
|
-
target: objectSchema(
|
|
5718
|
-
{
|
|
5719
|
-
id: integerSchema("Quest id."),
|
|
5720
|
-
kind: enumSchema("Target kind.", ["quest"])
|
|
5721
|
-
},
|
|
5722
|
-
["id", "kind"]
|
|
5723
|
-
)
|
|
5503
|
+
id: integerSchema("Target entity id."),
|
|
5504
|
+
kind: enumSchema("Target kind.", ["quest", "repeatable_quest"])
|
|
5724
5505
|
},
|
|
5725
|
-
["
|
|
5506
|
+
["id", "kind"]
|
|
5726
5507
|
),
|
|
5727
|
-
|
|
5728
|
-
|
|
5729
|
-
|
|
5730
|
-
|
|
5731
|
-
|
|
5732
|
-
|
|
5733
|
-
"Tags to make the full replacement set."
|
|
5734
|
-
),
|
|
5735
|
-
target: objectSchema(
|
|
5736
|
-
{
|
|
5737
|
-
id: integerSchema("Target id."),
|
|
5738
|
-
kind: enumSchema("Target kind.", ["quest", "repeatable_quest"])
|
|
5739
|
-
},
|
|
5740
|
-
["id", "kind"]
|
|
5741
|
-
)
|
|
5742
|
-
},
|
|
5743
|
-
["action", "target", "tagNames"]
|
|
5744
|
-
)
|
|
5745
|
-
],
|
|
5746
|
-
description: "Mutate tags on quests or repeatable quests."
|
|
5747
|
-
},
|
|
5508
|
+
tagNames: arraySchema(stringSchema("Tag name."), "Tag names to add, remove, or replace."),
|
|
5509
|
+
now: integerSchema("Optional timestamp for the tag mutation.")
|
|
5510
|
+
},
|
|
5511
|
+
["action", "target", "tagNames"],
|
|
5512
|
+
"Mutate tags on quests or repeatable quests."
|
|
5513
|
+
),
|
|
5748
5514
|
handler: tagWorkToolHandler
|
|
5749
5515
|
});
|
|
5750
5516
|
|