-
Notifications
You must be signed in to change notification settings - Fork 61
Create well-defined constraints for config NLP/update readme config #892
Comments
I think this makes sense. It just needs to be a boolean basically. Ideally the POAP should specify the GitHub organization name, repository name, issue number, and contribution role (i.e. issuer, assignee, commenter) |
Not sure what will be the final decision, but it seems like a new bot config param like
Those values (organization name, repository name, etc...) can be derived from github event context so it doesn't make sense to move those values to the bot's config unless partner would want to overwrite those values. |
Regarding the POAP image, at some point in the future we can use https://github.com/transitive-bullshit/puppeteer-render-text |
I appreciate you taking the time with this for me cheers! ^ For the sake of development I'm going to assume that the partner has a solid understanding of the bot config, it's parameters and the implications of setting any one value (they likely will as they'll have had to set things up, docs, readmes etc). This is a safe assumption. Assuming anything else about the user I think is unsafe. I struggle with the following:
So taking for example your comment about using A workaround for this could be to say that the use of So I can't decide whether the template approach would be best. It would help determinism with non-key specific commands (I presume that we won't be restricting command input but for commands like this which are non-deterministic will a best-practices or do's and don'ts be written once we have live results? You mentioned results from incentive scoring being suggested that's why I ask) but would require that I inject a lot of bias into things which may not be inline with your experience and/or what the user thinks/wants. A chat where I'm trying to understand whether me injecting my own personal bias into the mix would, while distinctly different, impact the intention of the original assessment as I assume in the 'blackbox' it's likely that it will be applying its own sort of 'weight' to tags as a form of quantifying a comment's worth.
So obviously covering every tag is out of the question. I've tried to cover a few here but imposter syndrome kicking in so I'm rallying the troops 🤣 If any needed added please do but more importantly the contextual reason behind why that tag should/shouldn't have a higher weight.
P.S: In writing these I realised that I never use html tags only markdown, are comments with markdown as opposed to tags included? When editing comments it remains markdown form but when we parse the html does gh convert those md objects into their respective html tag? P.P.S: For my purposes: <-- is actually |
|
100% agree with you there, I was coming from the perspective of not having your contextual understanding of why typically blockquotes are bad, li are good etc. I'll assume that when being invoked they are being specific to what properties/entities and what value they should be instead of the broad strokes prompts I have been thinking of. I've been thinking of the command as a helper to the user in how-to/best-practice in setup sort of thing but I realise now I've been wrong in thinking that. It's just a QOL utility for updating the config on the fly, being direct and knowing what it is you want to change is how it'll be used not abstract statements. Now that I fully understand the intention behind it I know what needs to be done 3, 4, 6. Again, my mindset has been wrong I see that now.
I'll assume that the use of this command will be variations of this style where the user input is always direct, specifying exactly what should be changed. I did begin testing with input like this but thought that broad strokes was the intention behind the command.
|
Relates to #889
The
/config
command will benefit greatly from having a list of do's and don'ts in regards to the various bot config settings. The current trouble is that the only parameters it knows is what it can infer from the key and what type the value of the property should be but not the implications of changing any one value.This will also be beneficial for hunters/partners to better understand.
The current readme configuration section is slightly out of shape and doesn't fit the requirements I'm stating here.
Higher order items (imo):
@rndquu what's the situation with NFT permits, I assume they'll have their own config section or are we piggybacking the current options like permitPrice = amount == 1 for 1 POAP?
Example
/ask
,/config
,/review
,incentives
,issue relevance
etc but should be set only in a private org config repo or the current repo if private.Time: <1 Hour
&Priority: 1 (Normal)
or it will break pricing functionality.assistivePricing
== true & setting arbitrary multipliers care should be taken, pricing is automatic and based on label time & priority and will update issues across the board once set.validHTMLElements[]
}taskFollowUpDuration
>taskDisqualifyDuration
then the functionality breaks.These are just a few of the top of my head but I need more input.
I pulled molecula451s readme and tried to keep it mostly the same in regards to updating the actual readme, the list of constraints can be added there too or used only for the
/config
command whatever.keys
contains optional keys for different services:evmPrivateEncrypted
is an optional encrypted private key for EVM-compatible networks used for payouts.openAi
without an OpenAi key all AI features are disabled:/ask
,/config
,/review
,incentives
,issue relevance
etc but should be set only in a private org config repo or the current repo if private.features
are settings related to the bot's features:assistivePricing
can betrue
orfalse
, to create a new pricing label if it doesn't exist.defaultLabels
is an array of default labels applied to issues. Empty by default.newContributorGreeting
settings for greeting new contributors, including:enabled
can betrue
orfalse
.header
is the greeting message header.displayHelpMenu
can betrue
orfalse
to display a help menu.footer
is the greeting message footer.publicAccessControl
settings for public access, including:setLabel
can betrue
orfalse
for setting labels.fundExternalClosedIssue
can betrue
orfalse
for funding externally closed issues.timers
are settings for various time-related aspects of tasks:reviewDelayTolerance
is the tolerance for delay in reviews targeting reviewers.taskStaleTimeoutDuration
is the duration after which a task is considered stale.taskFollowUpDuration
is the duration for the bot to follow-up on tasks with assignees.taskDisqualifyDuration
is the duration after which an assignee can be disqualified.payments
settings related to payments:maxPermitPrice
is the maximum price for automatic payouts. EG: 50 == $50evmNetworkId
is the ID of the EVM-compatible network for payouts.basePriceMultiplier
is the base multiplier for calculating task prices.issueCreatorMultiplier
is the multiplier for calculating rewards for the issue creator.incentives
defines incentive rewards:comment
for comment rewards, including:elements
with values for HTML elements likep
,img
,a
.totals
defining rewards for characters, words, sentences, paragraphs, and comments.labels
are settings for task labels:time
is an array of time labels for tasks. EG:Time: <1 Hour
orTime: <1 Week
etc.priority
is an array of priority labels for tasks. EG:Priority: 1 (Normal)
orPriority: 5 (Emergency)
etc.miscellaneous
settings include:maxConcurrentTasks
is the maximum number of tasks assignable at once. This excludes tasks with delayed or approved pull request reviews.promotionComment
is a message appended to payment-related comments.registerWalletWithVerification
can betrue
orfalse
for wallet verification requirement.openAiTokenLimit
is the token limit for OpenAI API usage.disabledCommands
is an array of commands that can should be disabled. Empty means all commands are active.The text was updated successfully, but these errors were encountered: