Okay, Shoshanim Chavivotumetukot Sheli, you thought I would not intrude on your days of rest? You think I will give you a respite from the Sam Vaknin horror show? No way! I'm worse than Netflix! I'm more ubiquitous and, in mental terms, more expensive. So, today we are going to discuss various neglected angles in narcissism. Yes, believe it or not, after well over 26 years of work in the field preceding all the self-styled experts by like 15 years, I still have a lot to say about many topics not covered by everyone, myself included. So stay tuned, it's going to be a bumpy ride and you're not going to be the same if you listen to this video to the end. So we start with the issue of learning. Narcissists never learn. They never learn because they know everything already. Of course, this is a grandiose defense known as omniscience. Narcissists never learn because no one knows anything anyhow. That's a form of defiance. Both psychopaths and narcissists are characterized by a profound lack of curiosity about themselves and about others. They are not curious. Narcissists construct penitentiaries of the mind, kind of prisons, they are known as pathological narcissistic space. And then they try to break out of these self-imposed prisons. They try to demolish these fantastic spaces. It doesn't occur to the narcissist to repurpose the prison, to render the prison a tourist attraction or a hotel. Alcatraz, for example, Alcatraz was the worst prison ever and now it's a tourist attraction. There's a similar prison conversion experiment going on in Sweden. Narcissists is incapable of repurposing and reconceiving of his life, his self-imposed fantastic penal colony, because he is more generally incapable of change. Why is that? Why is the narcissist so averse to change? We have to go back a bit, as usual. With the narcissist, you have to go two steps backwards in order to go three steps forward. And even that gets you nowhere. The narcissist outsources important ego functions to his environment. In other words, healthy people regulate their internal environment by definition internally. Regular people, for example, maintain reality testing, which is grounded in themselves, in their sense of self and being. Regular people regulate their sense of self-worth. They have a stable sense of self-esteem, self-confidence, self-worth, related to the world and internal working more. In healthy people, everything takes place inside. But with the narcissist, all these functions are externalized, they outsource from the environment from other people. And consequently, the narcissist confuses and conflates his internal landscape with the external world. He doesn't have a self or a constellated self. He doesn't have an ego. But he does have a kind of internal universe of internal objects, kind of a playground at Disneyland, a theme park of introjects, voices, internal objects, avatars, and so on and so forth, I discussed it in other videos. And he tends to confuse this self-contained universe with reality. One of the narcissist is trying to effect a change in the external world when he tries to change something in his environment. He perceives it as the destruction of his internal world. He perceives it as self-destructiveness. Now, follow this intricate and ingenious argument. How do I know it's an ingenious argument? Because I came up with it, of course. Follow it. The narcissist confuses internal and external, inside and outside, objects out there and objects in here. In this sense, the narcissist, to some extent, is the mirror image of the psychotic. He doesn't have hyperreflection, but he has inverted hyperreflection. The world is contained in himself. So the narcissist totally confuses what's going on in his environment and what's going on inside himself. So when he tries to change the environment, when he tries to transform people around him, circumstances, events, when he tries to extract outcomes from his milieu, from his workplace, from his marriage, from his interpersonal relationships, from his friendships, from church, from any setting when he tries to operate in reality, act upon reality, he perceives it as self-destructiveness. Changing the environment to the narcissist is equal to changing himself because he confuses his internal environment with his external environment. Any change in the external environment is perceived as deleterious, dangerous, and threatening to the internal environment. So everything, every alteration, every modification, every transformation, every effort at consensus building, every compromise, every negotiation, everything that has to do with anything in the outside, is perceived as impacting adversely on the inside as self-destructive. And so narcissists avoid change because they experience it as self-annihilation, petit more, small diff. Narcissists convert everyone they are in constant or intimate touch with into persecutory objects, enemies, and then they construct counterfactual narratives, narratives which are not based on fact, not evidence-based. And these narratives are both paranoid and grandiose. The narcissist is effectively saying, they're out to get me because they made them behave this way. I forced them into malevolence. I had converted them into enemies. This of course sustains his sense of omnipotent control. And so the narcissist's world is hostile and dangerous, and because he confuses the external environment with his internal environment, he perceives himself as hostile and dangerous. He perceives the universe of internal objects, the universe of introjects. In other words, he perceives his own mind as the enemy. And he perceives himself as the prima causa, as the first mover and shaker, the first cause, the person who had made all this happen, the person who had brought upon himself devastation and destruction and annihilation and extermination. He perceives himself, in other words, as his own worst persecutory object, his own worst enemy. They're out to get me because I made them behave this way. I created this enmity. I created this hatred. I created this aversion to me. I misbehaved. I mistreated or I was myself, but they entry me. So the narcissist is in a bind. This on the one hand, he tends to interpret everything around him as a potential menace and people around him as secretary object, as persecutors and prosecutors. And on the other hand, he feels that he had created this environment. He is Godlike. This is his creation. Genesis is omnipotent. So he feels somehow responsible for his own persecution and prosecution. And of course, catastrophizing becomes a rational and often self-fulfilling expectation within such a view of others and the world. And this, of course, is one of the two pillars of the aversion to change. Every change in the external environment is perceived as change in the internal environment. Then every change in the external environment is the destruction or at least the deconstruction of the internal environment. It's threatening. And it's threatening because it through it, it unleashes a host, a hoard of enemies from within a fifth column, a Trojan horse of the secretary objects. Everything is so precariously balanced. Everything is so hostile. Everything is so dangerous. Everyone is so such an enemy that better live things as they are better freeze. It's essentially an internal freeze response analysis is so traumatized, mainly in early childhood that he had developed a freeze response grounded in grandiosity omnipotence and so on, which are compensatory. He froze when faced with the trauma with the early trauma. He chose to freeze. Then he chose to freeze everyone around him through the process of snapshotting, which I will describe a bit later. Then he chose to freeze the world around him and anything, anything and anyone that threatens to unfreeze the situation, to defreeze the situation is threatening the internal precarious balance of the narcissist. So the narcissist is shocked, for example, when his victim gives him a taste of his own medicine. He accuses her of being a narcissist. Of course, the gender pronouns are interchangeable. Many narcissists are women. So the narcissist is shocked. He tends to victimize and abuse, for example, his intimate partner and then suddenly she gives him a taste of his own medicine. He cheats on her. She cheats on him. He abuses her. She abuses him. She mirrors him and he's shocked. He then says she's a narcissist. I don't know what happens to her. And this partly has to do with the persecutory object that I had mentioned before. She is a persecutory object in the narcissist's mind. She is the enemy. And so he's not surprised.  He is just shocked that she had dared to stand up to him. But it also has to do with another process. So there are two pillars to the aversion to change. The first pillar is, everyone is such an enemy, the environment is so dangerous, better not rock the boat, better not change anything, better freeze. The second pillar is snapshotting, the twin processes of snapshotting and core idealization. At the commencement of every interpersonal relationship, the narcissist introjects the insignificant other and converts her into a stable, inert internal object. He snapshots her. This helps him to overcome his abandonment anxiety and establish object constancy, because while he may be abandoned by the real object out there, he is very unlikely to be abandoned by a snapshot in his own mind. So converting an external object to a snapshot makes the narcissist feel safe, makes the narcissist feel stable. So hence, snapshotting, remember, we are talking about the narcissist's propensity and proclivity to avoid change, to thwart change, to undermine and sabotage change, to shun change. And this, there are two reasons for this. The first one is the persecutory object mechanism, where the narcissist prefers to freeze than to experiment with change, because change can unleash storm, a hurricane, a twister of persecutory objects, which will then, as enemies, destroy the narcissist. And the second reason is snapshotting. So once a narcissist had snapshotted, for example, the intimate partner, a source of supply, role model, an important influencer, or peer, once a narcissist snapshotted the person, he proceeds to Photoshop the snapshot. He idealizes, for example, the intimate partner, and by idealizing her, he aggrandizes himself, because now he is the owner of the intimate partner, he is the proprietor of such an ideal position, position. So now, the idealized position renders the narcissist, this idealized property renders the narcissist ideal, his grandiosity is gratified this way, and this is co-idealization. snapshotting, photoshopping, idealization, co-idealization, this is an inexorable process, inevitable, happens all the time. When the other party, the intimate partner, for example, diverges from this inner rendition or this avatar, by becoming, for example, agentic, autonomous, defined, self-efficacious, assertive, and resistant, when this happens, there is a divergence, there is a break, a schism between the real objects, object out there, and the snapshot, snapshot is stagnant, it's inert, it never changes, it's immutable, and so this creates a gap, and the narcissist experiences panic, frustration, and then aggression, he projects his own narcissism onto the culprit, for example the intimate partner, and using a defense mechanism called reaction formation, the narcissist devalues her, and decries her as abusive, is likely to present himself as a victim who is being abused, in his mind he is being abused, because remember every change in the narcissist mind is perceived as persecution via the agency of the persecutory, objects, so when the partner behaves in ways which undermine and challenge the snapshot, this is a change, it's a change in the external environment, it threatens the narcissist, he feels persecuted, he feels prosecuted, he feels that he is under a cloud, he feels bad things are going to happen, catastrophizes, and so the freeze mechanism no longer works, his grandiosity is compromised, and he has no defenses, some people who get in touch with the narcissist who are in an interpersonal relationship with the narcissist, for example the narcissist spouts children, intimate partners, business partners, associates etc etc, some people aware of the narcissist's delusional mindset, aware of his need to compensate with fantasy for deficiencies and failures and defeats in reality, aware that he has a pronounced fantasy defense, aware in other words that he is not fully with us, that he is a bit divorced from reality, so some intimate partners of the narcissist, or business associates, or friends, they tend to lie to the narcissist, they tell him what he wants to hear, they deceive the narcissist, they obfuscate, they stonewall, they refuse to communicate in extreme cases, so the narcissist feels that he cannot gain access to critical bits of information, and what the narcissist does, he tries to deduce, he tries to extrapolate, not always successfully, actually in most cases not successfully, because he has impaired reality testing, and because the narcissist is grandiose, owing to his grandiosity, he perceives his deductions, his hypotheses, his speculations, and his extrapolations as facts, he cannot, he can never be wrong, if he thinks something, it becomes reality, that's magical thinking, and so the narcissist reacts to these internal cognitive processes as if they were, as though they are, facts out there in reality, again there's confusion of internal and external, but this is also a form of change, because it's like the information rearranges itself and produces new, new outcomes, new results, new conclusions, anything that's new by definition is changed, so the narcissist feels very threatened, and this can lead to hair-raising situations and conflicts, narcissists can become defensive, frustrated, and aggressive, the solution is do not lie to the narcissist, do not deceive the narcissist, do not stonewall, do not obfuscate, do not avoid communication with the narcissist if you are forced to be in touch with him, always communicate clearly, fully, and truthfully with the narcissist, you do not want the narcissist to deploy his fantasy delusional imagination and impaired reality testing to fill in the gaps that you had created, now this aversion to change that relies as you remember on the feeling that the world is hostile and any change is threatening on the one hand, that there are many persecutory objects and enemies are waiting such a change in order to sort of jump the narcissist, so it's one pillar, the second pillar, the snapshotting, the freezing of other people as snapshots, idealized snapshots, both these are critical to the functioning of the narcissist, and both of them negate and vitiate change, they are both of them creating the narcissist change aversion, any process internal or external, any actual change in the environment, any need to make deductions and analyze and anything, any motion, any movement, any life, any divergence from the snapshot, creating the narcissist enormous anxiety and he's trying to ameliorate this anxiety in a variety of dysfunctional ways, anything from substance abuse to overt aggression, one of the main ways that narcissists try to reduce and control anxiety is sex, the psychosexuality of narcissists and psychopaths is very often non-native, it's unusual, some people would say deviant, perverted but I don't use these terms, they're not clinical and they're not used anymore even in the literature, it's unusual, the sexuality, psychosexuality of narcissists and psychopaths is unusual, atypical, extreme, rare, people with kinky or paraphernalia psychosexuality often repress or curb their sexual preferences unless and until a loving partner, loving quote unquote partner, real partner, imaginary partner in fantasy legitimizes the psychosexuality with his presence or with his active cooperation and so helps to resolve the dissonances and egotistony involved in these sexual practices, narcissists and psychopaths are no exception, aware that their psychosexuality is problematic at least in social sense, what they try to do, they try to couple it with an intimate partner, now the intimate partner could be as I said a physical real bear intimate partner or an imaginary intimate partner, the narcissists or psychopaths project intimacy and love and romance on an unsuspecting stranger in the environment and render that stranger for a night, for an hour, for a year, for a month, for a week, render that stranger a romantic love partner, it could be a fantasy partner, an imaginary friend in a way, in a paracosm or it could be a real life partner but the role of that partner is to legitimize either as an observer or as an active participant to legitimize the kink and the paraphilia elements in the narcissists and psychopaths psychosexuality, the narcissists and psychopaths need to legitimize their psychosexuality and need to act on it in order to reduce anxiety but it's very difficult to find such partners, such intimate partners, very few people would care to legitimize and participate in such sexual practices so consequently, narcissists and psychopaths go through long stretches of involuntary celibacy or unsatisfactory sex simply because their partners either don't love them to start with or are more likely and more commonly are totally turned off by the narcissists and psychopaths attitude to sex, love and relationships and this self-denial is especially complicated when we have types of narcissists who are also prone to addiction because the narcissist's addictive personality manifests in everything, in substance abuse, in workaholism, in pathological gambling, in shopaholism, I mean addiction, in alcoholism, addiction is a kind of catch-all phrase, it's a way of relating to the world and most narcissists are actually addicts, indeed pathological narcissism is a form of addiction, it's an addiction, it's an addiction to narcissistic supply so the narcissist has a very complicated, unusual, typically frowned upon, socially frowned upon, unacceptable psychosexuality, he tries to find a partner to legitimize this psychosexuality and participate in the sexual practices, it's very rare to find such a partner almost impossible so most narcissists and psychopaths go through periods of celibacy and unsatisfactory sex, now some narcissists are addicted to what they consider to be love but actually is shared fantasy, so many narcissists actually are addicted to shared fantasies, they need a shared fantasy to function, craving for love, craving for this shared fantasy, renders these narcissists tenacious and stockish, they stock, they give up and sort of move on only when they receive incontrovertible proof that they are not loved, in other words that their partner is not embedded in the shared fantasy and that they are not desired sexually etc etc, they even then they are likely to cheat rather than to break up honestly and outright and so the narcissist's propensity, the narcissist's need for a shared fantasy which is the equivalent of love addiction in healthier view, the narcissist's addiction to the shared fantasy is an organizing principle which imbues the world and his world with meaning and direction and hope and emotional energy, this addiction to the shared fantasy causes him to kind of become a stalker or become tenacious in his attempts to revive the shared fantasy up to the point of bargaining and I've dealt with it in other videos, the narcissist would tend to identify sex with love of course within the shared fantasy, remember that sex is one of the three s's because he needs sex, he requires sex in order to reduce anxiety, he would tend to identify what he calls love which is actually addiction and attachment to the shared fantasy, he would tend to identify love with reduction in anxiety, so for the narcissist love addiction to the shared fantasy is an anxiolytic and so he needs it because the alternative is extreme all-consuming anxiety, such dysfunctional strategies and behaviors are common not only to narcissists but to everyone who has outlier psychosexuality coupled with a burning desire to be in a traditional intimate love relationship, alas these two rarely go together, you can either satisfy or gratify your atypical psychosexuality or you can be in a relationship rarely goes together, there are two other solutions of course to this predicament, one is to find a loving part with a psychosexuality similar or complementary to one's own and who is aroused by such sexual preferences to the point that he or she is eager to incorporate these practices into the couples common sex life on a permanent basis, many narcissists are keep hunting for this holy grail, they keep looking for this kind of bug and ultimately they end up teaming up with other narcissists and psychopaths just in order to be able to exercise their paraphernalia or kinky psychosexuality so as to ameliorate anxiety and the second solution is to pursue one's psychosexuality and pretend that one is with a loving intimate partner in a relationship that's a fantasy defense and that's actually one of the main roles of the shared fantasy, one of the main roles of the shared fantasy is to convince the narcissists that he had found the right intimate partner in a loving bond within which he can freely express his unusual psychosexuality and reduce his anxiety so in the long run most narcissists gravitate to this second solution it's the most feasible and the most common. Ideologically in all these cases there is an unresolved conflict between sexual preferences, emotional preferences, craving a loving partner and socialization, the need for legitimacy and acceptance but in the case of the narcissists as usual it's even more complex the sexual preferences are socially unacceptable sometimes even bordering on you know illegitimate or illegal the emotional preferences have nothing to do with real love they have to do with object constancy with abandonment anxiety and with the need to maintain a fantastic space the shared fantasy and the socialization of the narcissists lives a lot to be desired the narcissist seeks legitimacy and acceptance but only on condition that his grandiosity is upheld in the process by society by his environment by his friends colleagues etc if there is any challenge to his grandiosity many I mean most narcissists would become a bit psychopathic defined aggressive impulsive and reckless and so in a narcissistic increasingly more narcissistic society and civilization people hate to go deep because they don't want to face who they really are and they don't want to affect change remember narcissists are change averse society is more narcissistic society as a whole and its members would be change averse so people today inhabit shimmering surfaces punctuated with dismissive grunts defensive empty one-liners superficial hilarity and cliched emojis this is called social networking intimacy relies heavily on privacy and uniqueness on being special to your partner and this is why sexual exclusivity is still the dominant practice but narcissists are incapable of intimacy and so most narcissists gravitate either to fantastic spaces like shared fantasy where ultimately they become sexless or to rapid fire one not one night fantasies which they can sustain and within which they can be sexual both cases they're trying to reduce anxiety and so the narcissist places his body and sex in the public domain via rampant casual sex and public self-phonography the narcissist creates a legacy that renders intimacy between himself and future partners all but impossible if you share your sex with everyone casually you ruin your ability to integrate sex with intimacy you destroy the linkage between sex and intimacy the very capacity to associate them instead you're likely to compensate with fantasies of sex and intimacy which is precisely what narcissists do it's a narcissist fantasy is a narcissistic defense and so this would explain why in an increasingly more narcissistic and psychopathic civilization there's a tsunami pornography and self-phonography a precipitous decline in one-on-one face-to-face dating minus 60 percent collapse in intimate relationship formation minus 40 percent and even a decline in sexual activity minus 20 percent all these since 1998 I refer you to studies by twinge Wade Zimbardo Campbell and others these indicators these indicators of this intimacy these indicators of the decline and collapse of intimacy in sex in relationships in dating pornography is the least intimate conceivable activity self-phonography takes intimacy out of the personal realm so it's like everyone is hell bent on avoiding intimacy if not destroying it out right because they are incapable of intimacy they have had lost the intimacy skills and relationship skills because because they had become more narcissistic and they prefer fantasy to reality intimacy is not possible in fantasy because most fantasies are actually addictive and auto erotic the history of casual sex your history of casual sex leads inexorably to a deficiency in intimacy and in relationship relationship skills but this propensity or proclivity for casual sex in fantastic spaces as substitute for real intimate sex this increasing dominant hegemonic sexual practice has effect on the ability to team up with partners in the future and also has effect on such partners your future partners are affected by your current sexual practices if your partners know that you had shared your body and sex with so many random persons they cannot regard your choice to have sex with them as special after all you did it with everyone even with people you don't you didn't know anything at all about intimacy is not possible when the partners feel that they are just numbers statistics the next conquest in the queue next in line when the world becomes somatic everything loses its meaning a partner with a history of casual sex as a dominant practice also creates pervasive insecurity is not a safe base it is difficult to feel safe and be safe when your partner takes sex so casually and flippantly and as a meaningful motionless activity this commodification of body and sex makes future partners feel that when you offer and grant them access to your body and sex this is meaningless because you had offered exactly the same to dozens of total strangers for many years your partners do not feel special they do not feel that they stand out from others they might as well be among the countless strangers to whom you had granted exactly the same privileges your partners do not feel chosen because you had selected so many before so indiscriminately including anonymous strangers sex with with you cannot be intimate cannot be special only clinically arousing sex with you is phonographic not lovemaking and without lovemaking there's no intimacy and i say sex with you i mean sex with a narcissistic person the thing is that in a narcissistic civilization we would all tend to adopt narcissistic practices narcissistic choices narcissistic traits and narcissistic behaviors even if and when we are not clinically narcissists and this is very confusing because people behave as though they were narcissists as if they are narcissists as if they were narcissistic but they are not one of the most moronic bits of politically correct advice online is your partners sexual social and psychological histories your partners past they're not relevant and you have no right to inquire about them only present choices of your partner decisions she makes and behaviors matter don't be retroactively jealous this is an idiotic advance because by far the best predictor of future behavior is past behavior recidivism defaulting to past misconduct is rife almost inevitable more than 80% of alcoholics restart to drink within a year from rehab almost 70% of criminals repopulate their erstwhile cells go back to prison having cheated once your three times is likely to cheat again promiscuous women sleep around extra diatically outside the couple much more often than the regulated boundary sort of woman so by all means interrogate your new potential intimate partner to the greatest possible extent don't be shy about it it is your only protection against future nasty surprises this narcissistic civilization where all of us are infected by the virus of narcissism it's a contagion we need to defend ourselves against a narcissistic past in our intimate partner's history more generally people tend to link narcissistic behaviors and psychopathic behaviors and traits to empowerment they say i'm empowered i'm emancipated i'm strong i'm resilient they talk about defiance and recklessness as though these were virtuous impulsiveness as spontaneity women have never been less empowered sexually than nowadays and i'm saying women because narcissistic and psychopathic behaviors are exploding mainly among women that is the segment women and people under the age of 25 these are the two population cohorts the two population segments where narcissism and psychopathy are absolutely in a state of supernova so i want to talk about women because women keep saying i'm empowered now i'm strong i'm resilient i do what i want and so on so forth women are defiant they're contumacious they're impulsive they're reckless they're aggressive and they think they're cool they think this this demonstrates the world the new woman it's not cool women have never been less empowered sexually than nowadays as sexual screeds and gender roles crumbled phenomenon known as gender vertigo they have been replaced exclusively by male stereotypes of women as slots yes you heard me correctly the current more is the current ethos is a male stereotype of a woman work by lisa wade for example and kerry cohen among many others supports this counter-intuitive claim that women are less empowered and more subject to male stereotypes that women had adopted male stereotypes the exclusive growth of female objectifying pornography is proof of that because women participate in this pornography they make it many women produce self-porn place it online for the benefit of men they are addicted to male attention the male gaze they seek validation they want to prove to themselves that they are desirable capable of seduction many of them misconstrue or misidentify this with love being liked with being loved and rather than resist this typecasting women have conformed they post online as i've mentioned self-pornography to dozens of leering men they sleep around promiscuously often inebriated they hook up they subject themselves to multifarious degradations by individual men and sometimes by groups of predatory males the male gaze came to define women more than ever women are defining themselves through male stereotypes and this is called the stalled revolution in the literature to resolve the inevitable cognitive dissonance that such object submission creates women had convinced themselves that they're actually choosing this state of things it's their choice they claim to be agentic endowed with selective powers and decision-making powers they claim to actually enjoy what they are made to do in order to conform to male expectations and to garner male attention some women call themselves proud sluts but slut is a male stereotype of a female if you're proud slut you are a doormat because you had conformed a thousand percent to the male gaze to the way chauvinistic male men see you it's a oxymoron and so we've come full circle marcesis abhor and dread change there change averse they misidentify the external environment with their internal environment they're afraid that any change and any transformation in the external environment is the equivalent of self-destruction destruction of the self because the environment is the self they outsource ego functions and their own self to the environment and so because of that this creates anxiety they begin to identify everyone as a per-secretary object and then they try to convert everyone into snapshots that they can control and manipulate and this creates a lot of anxiety because external objects other people always diverge from this natural to reduce this anxiety narcissists and psychopaths engage in kinky and paraphernalia psychosexuality they try to co-opt partners they try to find intimate partners to go along with this kind of psychosexuality and usually they fail when they fail they react dysfunctionally as our civilization culture societies become more and more narcissistic and more and more psychopathic we are beginning to see these behaviors permeate and pervade become ubiquitous everywhere especially among women and women had convinced themselves that this is their own doing because narcissists always lie to themselves always deceive themselves into believing that they are in control they are responsible they've made everything happen they're the prime movers and shakers women are no exception but actually what is happening is women conform more and more to male stereotypes which are essentially chauvinistic narcissistic and even psychopathic and so women become more and more psychopathic in order to garner male attention to secure the male gaze there is a tsunami of narcissism and psychopathy because there's a vicious circle expectations generate behaviors and behaviors generate expectations everyone feels anxious about this total total or pervasive loss of control


Hey you made it. Hey, hello. Yeah, so we're getting some I assume you're getting weather because of the same storm we are right though that hurricane zeter or something like that, right? Yeah, it was pretty bad this morning Was it? Yeah, it's it's been a little windy up here In Raleigh, but nothing too bad at the power flickered very very quickly once but nothing too bad Yeah, that's good. We had like 60 miles per hour winds here this morning Yeah, and my dog is she's so scared of the any sort of storm so she decided to like jump on me and wake me up I'm pretty much done for today Yeah, we're supposed to my wife was telling me that She saw a news report that said yeah We're potentially supposed to get 60 mile an hour winds up here as well But I don't think we got anything quite yet. And my only worry is that I Have two Actually, it's including this I have three phone calls where I kind of need to talk a little and so if I lose power That's gonna make it harder and one of them is with a customer. So that's that's not gonna be good So let's see how it goes. Hey Christian How's it going angry stomach? That's not good Going better today, hopefully. Oh, yeah. Yeah, that's good So I can never tell how sensitive my microphone is can you hear a song in the background? No, actually Oh good They got work going on in the background of the house Yeah, the thing about it is it still distracts you as the speaker and it's like if that's it's not bothering the audience It's just oh true. Yes, but as long as you guys don't hear it I can you know, I'm okay with myself suffering, but not you guys. So, right? Yeah As far as I'm concerned you are clear. Okay good. Hey Tommy Yo It's weird. Oh Usually I'm more people showing up by now Do do do hey ginger Hey, Doug. Oh Wow, there's a picture with you now. Hold on a minute. I can't zoom it. I Forgot I put a picture on there That was for some other call. I didn't want to be on video for All right here Hello, how's it going? Hey, Brian Hello How's it going? So Christian, you're sure you can't hear the saws, right? Cuz I they have two of them going down in the background. Yeah Okay, okay, perfect. Thank you. It's just amazing. You can't hear that Lou, are you there? Good morning. Yeah. Good morning. And there's someone else went flying by oh Lance. Hi. Yes. I'm here. Hello Manuel Hi Hey, and I think I was marking there All right, so oh heads up There's a storm Sort of on the East Coast someplace So far my power has been good, but if I for some reason just vanish It's not because you guys pissed me off or anything. It's just I lost power So someone else would need to kind of take over at that point. Would that otherwise be a common occurrence? What what me losing power or getting pissed off? That's pissing off and you leaving Well, I haven't done it yet.   Hello Hey Clemens I have I'm so narrowly missing the Out on being able to present something to you all guys all you guys today Could get the homework done You had homework I had self-imposed homework with the replication model for the schema registry, but I am I've just got distracted and I'm missing an hour of work on it. So I'm late All right. All right one last attendee and then we'll get started. Scott are you there Howdy, howdy. All right, let's go get started. I think I got everybody all right, um Community time anything from the community people want to bring up All right, moving forward So I can't remember if I mentioned this last week or not, but I did manage to get I think some fairly good times for coupon office hours Again, if you yeah, I'm not remember. I did mention it. Um If you'd like to volunteer, just let me know and I'll add your name to the list as we get closer The nagging will increase. So please think about that Uh stk call schedule for this week. Um as of right now, there is nothing on the agenda If we don't have anything by the end of this call, we will cancel um interop so Um, I did do some minor updates to the interop doc itself. Please take a look if you get a chance nothing major Uh, I think the biggest thing there is I realized that we probably should have a common service that multiple people can implement So that we can do some testing because if you're just a random service Uh, um, it's gonna make it harder to to do any kind of testing if you don't know what the heck you're actually subscribing to Um, so I just did a quick pink little pink service. Please take a look if you get a chance I was wondering though Since we're supposed to be doing something real next week in terms of interop Whether we should have a time for us to get together to talk like maybe tomorrow or something or maybe monday To sort of get everybody together who's planning actually coding something. What do people think? Yeah, it would be great Okay, do people want to meet tomorrow or is friday a bad day for folks and we should push it out till monday It is Not good. Okay. Um, what about monday? Can we try to pick a time right now to try to meet? So quickly everybody grab your calendars Would this time on monday work for people or not? I'll actually keep in mind. There's the time where it's a switch over So we're going to go back to being six hours difference at least from east coast to central europe On my side, that would be nine to ten uh, that's easy. It works Okay So noon eastern people work for people or not? Okay, scott you work. Thank you anybody else? Let me turn it around anybody object to not um noon eastern monday Taking into account the time shift Cool Okay, let's let's try that and see how that works Let's set up a some sort of async communication there too. Just make sure that if you can't we you can still participate Yeah, and we have to have the um The interop slack channel if you're not part of that, um, let me know and I'll I'll add you Okay, cool. So same zoom That's normal. All right, cool anything else relative to kukon or Discovery interrupt that we need to talk about All right in that case tim or anything you want to mention relative to the workflow Uh, yeah, just quickly we moved our website to netlify So now we don't have the silly redirects to the github pages anymore um We moved our team meetings now to weekly meetings. So it will be Every monday now instead of every other uh weeks. We should make it clear And just doing overall improvements our issue section has uh become quite large This is a good problem to have so yeah, that's it for me. All right any questions? All right moving on then Okay, let's jump into pr's Let's see. Who's the first one? Come on Anish are you on I don't see a niche Um, Eric, do you mind if I pick on you a little because I know you commented on this one. Maybe you could Summarize That's right, you know, that'll teach you. Um, maybe you can come in and what he's done here and what your concerns are Eric, uh, yeah, sorry. Yeah, yeah, uh, you problem problems Late night um Yeah, so he switched from uh, really kind of focusing on vendor implementations of security protocols and uh went ahead and It was more general. Um It mostly uh, there's a word smithing sort of a complaint that uh what uh It He expresses that the the concerns of security aren't necessarily a part of the core interest of the spec And I don't think that's quite capturing Or what I would where I guess the position of the group is on it And that would be more like these things are of core importance and we need to support them being possible. There's a Need for us to do that in a way that doesn't king make There's a lot of difference in opinions on how to solve these security problems or whether some people want to solve uh particular security problems And there's a lot of different solutions. So uh, and and not only that as these solutions evolve over time and so we want to allow for the ecosystem to Continue to react to changes as they uh shift preferences. Um, and I didn't feel like it really captured that. So it was The rough bit of my comment Okay, but you said it was mainly more word smithing than anything else, right? Yeah, okay Okay, I don't see uh, and he's still in the call Aside from actually let me go ahead and show you So here are Eric's comments. You guys can read that if you want I'm wondering from anybody else on the call um Are there general concerns or people okay with the direction that Anish was going here? Modulo any word smithing tweaks? I think that captures what we were The why we scoped out the security the security aspects Because we didn't want to sink the ship by By pulling in security right, um, I don't think that I don't think that precludes that we might have a Um an extension Uh that will define it. So I'm still having the I'm still having the vague notion Um without having thought about the deeply more deeply that we can go and and do a mapping of smine to cloud events Um where we would effectively use smine to encode the body of a message and then would have Um exactly like an email have additional attributes which would then Have the the required hints that we have Around algorithms, etc Um, but that would be an extension that doesn't require any changes to the core spec. So Yeah, so I think this really reflects what we what we want to do and that we didn't want to have the W star w security nightmare kind of dragged into the house right Okay, anybody else want to chime in? okay, in that case, I'm going to assume that Um And each will respond to you eric at some point in time You guys can go back and forth on the word smithing, but it sounds like general direction is okay So we just need to wait for this issue or this um set of questions or these set of questions to be resolved Is that fair? Okay, and these are He probably hasn't seen these yet because it was just 22 hours ago So with that, we'll keep moving forward and hopefully that'll be resolved for next week All right, Manuel this one's easy Just a typo change here, right? Yeah, in the upcall I figured that that was this typo. Yep, and it's clear It's just a typo should be data schema any objection to approving this one I apologize. I would have normally just accepted this one But since I didn't notice it till last night, I decided to wait for the call So thank you for noticing that what is today 10 29 Right, no objection, correct Perfect, okay, I'll close that one out later All right, this one Um, like Manuel, I was going through some of the interrupt stuff And I came across the you this into the discovery respectively behind the discovery I was looking at the url field and It says it's an absolute uri to reference the service. However as I was reading that Because it had been what since I actually played with this stuff I I couldn't remember for sure if it was the url to the service definition in the discovery endpoint or the url to the service itself And this sentence that I've highlighted here was a little bit ambiguous related to that So I just made it clear that um reference to the service within the discovery endpoint I think everything else is basically the same So hopefully this doesn't change the definition that people had in mind It's just I think makes it a little clearer what it's actually pointing to It's not the service itself, but the discovery endpoints definition of the service Any questions or comments on that? Any objection to approving? Perfect. Thank you All right next and Clemens, I'm glad you're on the call because I think this is mainly in the discoveries and the Actually, I think I do hit the subscription spec. So this one again was because of the interop stuff I was doing So first of all here in the discovery spec in the subscription config section It's a it's a map of key value pairs where I believe the value is One of the types conforming to the the crowd event type system Okay So rather than putting value here. I decided to change it to to the word type just to make it clear It's just not some random value. Okay Um, and then just a simple typo here. So This isn't your part yet Clemens, but I'd prefer everybody else. Are you okay with changing the word value to type? Just make it a little bit clear Any concerns with that? Okay, now Clemens again to your stuff. Um, okay first of all I was assuming that id needs to be unique within the scope of the subscription manager I'll um, then back up a little this is the id on the subscription object itself Yeah, so I was assuming that the id needs to be unique within the scope of the subscription manager and it's immutable Is that your assumption as well? Yes Okay, does anybody else disagree with that? Okay, moving on then next You had this as filter enough filters. I assume that was just a typo I make a lot of typos hang on. Um This is uh, no, it's oh wait, it's a filter I was assuming each subscription could have more than one filter No, that was intentional to be one filter and not to make them more more complicated because what more filters kind of starts breaking into jail on how many and then How computationally expensive that gets and so That we we try to keep the filter simple um and uh So that was the the goal was to not to not to make that more complicated Okay, um You literally have like if you have one subscription If if you have if you have a subscription the subscription has one filter If you want to filter on on something on something yet different um Because subscriptions is something that you can Better put a quota on than having, you know, the number of filters Okay, and in that case down below you had the word filters Right And so one of those is to his typo then right? Yes, so one of those things is wrong So I the intent the certainly the intent that I had Oh, I don't know what discrepancy comes from Um, we were working on this With a few folks and I didn't I think I didn't do the the language piece The filter language piece. I forgot who did this Volunteers, I think it was right Yeah, yeah, that's true Yeah, so the intent the intent was to have one filter Okay, does anybody who was working with with Clemens on that section disagree with that assertion Yes, I believe all these we need to change Is that correct? If we do with this one, yeah, we have to go fix those Okay So any any disagreement then with keeping it is just one. So I'll get rid of this change here Uh, I do agree with the logic Okay, cool. Um, okay. We'll circle back around to the other filter stuff Next was I didn't see a spot to put Okay, let's sort of back up So up here we have a subscription config with the new with listed name value pairs Okay, I did not see a config section in the subscription Uh resource now there were two ways to go here One was these just appear as top-level entities But I got I was worried that that would conflict with the extension stuff So I thought okay, maybe there's just an oversight And you guys forgot to put a config section to put the key value pairs from the subscription option or from the subscription config thing in the discovery endpoint Um, hang on We I had thought of that Okay Um There is a protocol settings. Did you see the protocol settings? I did but I thought those were specific to the protocol and not necessarily about the subscription itself That's why I thought it did deserve its own section. So what are you configuring them? Well, so for example, one of the things in the interrupt doc that I have Is I defined a ping source And one of the config data one of the information inside the picking source is how often to send a ping Um, what's the interval right? So that has nothing to do with transport level thing That's how often to send the ping five seconds 10 seconds that kind of stuff That's the kind of config data. I was thinking of um Is that a subscription? It can be you if you want you could think of it as um Well, let me let me stop there. Yes, it is a subscription the sense that I want to get events every x seconds So I'm subscribing to a ping service and one of the configuration parameters is how often to send a ping But but isn't it isn't the ping service? So if we do pop sub Then the ping service pings uh every x seconds and then And then you're are you filtering on this? Because you can as a subscriber you have no authority to to tell the the the publisher what to do It depends on what you're setting up, isn't it? So for example, if I'm subscribed Okay, let me give a different example. Maybe one that's easier to follow. Let's say I'm subscribing to a cloud object storage Yeah, I need to spend I just specify what bucket to watch Yes, that would be a config data Uh, that is that is the subscription scope That is what you subscribe to that that is that is our That is what we what we think of as as a source So I I think So let me ask this So I think what you're basically saying is you would think that would be part of the url that you send the subscribe to Yeah Is isn't that an implementation choice? um Well, we need to the fact we need to figure out how Let me let me go to So let me give me okay. Let me give you another example What and maybe this is part of the filtering thing. I don't know but what if you want to get just creates as opposed to deletes For the cloud for the cloud object storage Right, I think you could specify that as a filter. You could also specify that as configuration option That's a filter on the type Could be yes So let me let me actually ask you a different question then Was it your assumption that all of the All of these subscription config things appear as transport level things um All of those so the the subscription there's I'm I don't think we've we've done Um a good enough job here to be maker make it concrete with the What the scope how we how we define what the scope is for? The the subscription manager really um, but the subscription the the the subscription operation should specify the scope at which you are subscribing And I'm assuming it does in some way Hang on How are you defining scope in that sentence? scope means What is the what is so the event producer? or a little bit washy washy here three two four one is of the original document is um The create operation should be supported by compliant event producers It creates a new subscription. So the assumption here the the implied assumption is that you effectively the event producer has a Exposes that interface or someone acting on behalf of the event producer and that kind of implies and that needs to be clear that That you have a subscription you have a subscription endpoint Where the endpoint already reflects? the scope The scope meaning what are events raised for so Meaning you would walk up to an endpoint that already reflects your storage container And then you know it has that encoded in the your eye that you're talking to And then on that your eye on the container itself you asked to be notified That's the that's the inherent assumption that that exists there That it's not that it's not explicit in that spec But that's kind of what's in that that was at least that was in my head when I wrote it But apparently it didn't write that down So to to dumb it down for me it sounds like you're saying the scope is basically the url Yeah And so and that's also so that's also how so the subscription you're exactly so that's what the subscription url is effectively there is a And this is the interaction with the discuss with the discovery with the discovery spectrum means it's still need to go and resolve Um, so this is a good discussion to have Effectively the question is what is discoverable in as a as an entity inside of a system So are we are we publishing in discovery all the containers of that sort of of of the storage system? We should Because it's the if the containers are the ones of which are right which are raising the events Then then those are the ones that shall be that shall be published And they should have but they should have subscription URLs if we say we take the entire So containers or buckets or whatever they are right? Or we can say We're going to allow subscriptions and we're going to publish as a service the storage account Or you know, whatever other entity we have Then that thing will be will be published and that has a subscription URL So I think ultimately The things that we put into the discovery catalog Are defining what the scopes are on which you can go and and subscribe Um, and then um, and you can go and filter those down. That's why we have all the metadata there Right, and then once you have found the exact object that you're interested in in subscribing into You know knowing all of the events that it has and all those things and that's kind of what the discover api needs to give you Then you just go to that subscription URL and say and that's why you issue your issue your your your post request To go and create that subscription Yeah, I think I get that and and agree. I'm still trying to figure out though what we do with this stuff Um There that what's required there is that effectively all the The protocol the protocol definitions that we have in that are in this subscription Um When you subscribe so when you subscribe Um, there's so you have a list of protocols here. This is in discovery You have a list of protocols here which are supported by that by the By the um publisher or sorry by the whatever the middlewares So by the publisher in the simplest case But by the middleware in the delegated case Or you can go and choose from so you have protocol. Let's say this says, um, hdp and mqp the The subscriber No now knows that hdp And if we want to list hdps hps Or if we want to say it was oh hdps only whichever prefer Um, this is subscriber now picks one of those protocols but the subscriber if we're assuming a push model Will so let's do that first the subscriber will Then it it knows what its parameters are Because it exposes a webhook and that webhook has a certain set of parameters That need to be configured on the on the subscription endpoint To for the subscription to be established. So it knows its own uri It knows the the the authentication key that needs to be set and whatever So the all those parameters is something that the discovery service can't know And they can't be configured because it's really about the thing about the subscriber that wants to go and subscribe um for For pull subscriptions So when you want to make this this effectively ad hoc available So let's say this were the subscription URL would be pointing you to an mqtt broker Because that's possible um, then um We need to assume That based on the uri The client has already permissions Because of course we can't tell the clients um You know credentials or or permission data In here unless you want to go and embed that in in the uri Using some kind of token, but but if you if you say, you know, here's a here's a service And the service allows you to to obtain these these following events And they're being exposed for mqtt then your subscription URL will be an mqtt topic And that implies already That um, you're going to use the mqtt protocol directly and not the subscription api to go and and obtain those events So the subscription URL effectively also expresses that Hey, I'm not sure that Okay, so let me do that again. I no no no, I think I understand what you said there I'm just trying to figure out how it relates to my question, which is Yeah, I'm I'm saying what are the what are these things? Yeah, so I'm saying I'm trying to I'm trying to say in a very long-winded way I don't know what you I don't know what you need that for Okay, okay, that that I understand. Okay, you want to kill that however It seems to me. Yeah, and it seems to me that There will be some event producers that may Want additional configuration, right? I mentioned one for the pink servers in terms of interval and you question where that's a real event source But then I'm and I'm trying to steal ideas from the k-native world. So for example another one, I think From the k-native world is you can subscribe to github and one of the parameters you could pass in is a Is a key in essence that's then echoed back on each on each notification So you could verify that yes, this actually is coming from github as opposed to some rogue entity Now that's not necessarily a transport level thing even though Sure, it appears an htp header. I don't I don't view it as an as a transport level thing because it's not meant to influence the transport It's just an extra header that happens. I'm sorry It's just extra metadata that happens to be sent back as an htp header But they very well could have chosen to stick it inside the body Right if they wanted to okay, so that's but that's that's that's something that that would be on the subscriptions api That the subscriber would supply on the subscriptions api on the subscription api when it Uh So is do you want to declare those things there? That's what I thought this was for basically. Yes It's it's additional tweaks or or configuration knobs about my subscription that i'm setting up because I that I interpreted subscription config as configuration about the subscription Okay, so how do you So let's let's okay, so so let's work back from the subscription api Let's say the subscription api allows you to set headers That then can be played back to you, which I believe we already have in the Let me just and I'm just I'm sitting between a thousand specs that I'm currently writing So I need to go remind myself So yeah, so in in in three two two one in htp. We have headers And in three two two two in ktt. We have user properties And in in qp. We have you can set Um link properties Um and in Kafka we You can extract the partitions through I think we didn't set the We you could have also we could have also added we probably should Add the uh the application properties there. So there there are ways to go and set these values In these various transports. So if you want to go and set a set So yeah, so if you want to set a header Um that you want to have played back to you then you can do this with that with the htp settings True and I do remember this section right here that talks about that However, so what is so what is the so? So given given that construct How does that correlate to the um uh to the configuration that you have So to me I I view this stuff in here the htp settings headers in particular as different from The subscription config because this is saying I as a user. I'm sorry. I as a receiver of the event Want to manipulate the htp request coming in right? I want to add this specific header and that and And that's a very Sort of lowest level thing. Okay. I view These I view these where is it? I apologize I Good god, where is it? Sorry I view this subscription config is something different This isn't going to the low level of saying hey, I understand the transport because I'm a complete geek and I need to add this htp header This is saying GitHub has required that I pass in A key an api key of some kind or a token. I guess that's what I call now What github chooses to do with that token is completely up to it Okay, in this particular case. Yes, it's going to echo it back to me as an htp header But that's sort of an implementation choice Right. It may choose to do something else with this bit of information. So for example, I may be passing in um Never mind. I don't want to go there. I'll confuse it I view this is saying I want to configure My my event producer wants me to pass in some additional configuration information. I need a place to pass that in Because it's not necessarily a transport level thing And that's what I thought this was for okay, but but how does that how does how does that materialize in the uh In the flow back to the uh to the subscriber It may or may not right in this particular case I agree with you that it does kind of materialize itself back as htp header But I assert that there are other configuration options that don't that don't necessarily Manifest themselves As as like a separate property in the event that gets sent to you It's just it tweaks the way the producer is going to talk to you. So for example, the pink source is an example Right. It's only going to talk to me every five seconds versus 10 seconds so is that so so I I think what I'm struggling with is is the the This here is being provided to you by the producer That information is provided to you by the producer Which is then consumed and so the consumer the potential consumer goes and looks at these at this at the subscription config What does that mean to them and and how do they how what do you expect? How do you expect that that consumer now expresses These conscription subscription config values in the subscription gesture So my assumption was that a person who wants to subscribe will look at this field and say oh There's a key called interval and it's of type integer Now what that actually means. I don't think we can express here They had to go look at the documentation to say oh interval means how often to send the ping right And that but they can at least programmatically now once they decide they actually want to use it They can now fill it in with the number they want and that and this tells them exactly where it goes In the in the subscribe request And then in the subscribe request they would they would go and then pass in That extra config bit Yes, I was asserting or I was assuming what you guys had written was there would be something like a config bucket With the name of with a set of name value pairs where the key would be the config name And the value would be The value that you wanted that you want that you're trying to set to so in my case, it would be interval colon five For for a ping every five seconds Now if there if there was some other way I'm supposed to be able to express this five second thing I'm okay to that with doing that. I just it just seemed like for what I saw here in the specs That was the natural way you guys meant to go Um Okay, now I understand what you want Yeah, but but if this isn't the right way to go You know, there there are two things that I'd like to hear back then one is what is the right way to do it If not adding a new config section, but then the other thing is okay, then What is this thing actually for? So I have I have a use case. I have a use case in my head. Um That comes from um That a scenario that I have a scenario for your functionality I'm not convinced of your of your scenario, but I have one Okay, um, should we should we take the cue first before because you're not doing a lot of talking Or do you want to finish with that first? Yeah, let me let me just give you that briefly. Okay, cool. The um So in opc way and for everybody who's listening industrial standard standards for industrial stuff talking they have a notion of um subscribing to very fast streams of data Where you want to do a bit of aggregation, um before you want this or you want to only have Um, or you want to go and configure whether you want to have all events or whether you want to have key frames that Partial events or key frames So you want to go and modify the subscriber the the subscription somewhat relative to the event stream that's coming on so it's not full on aggregation, but it's Kind of some some modification of the events that you're getting So either you're getting sparse ones or you're getting key frames and you have a key frame key frame interval I can see I can see something like that been expressed here Um, so that seems to be So from that perspective, it's it seems to be a mechanism that works we I just find the I just found the the the You know the modificate the modification of the producer. I just found that a little weird as an example, but um At least it helped me remember the the key frame scenario If I understand you're sure what you just described there I think your key frame are being able to specify the the size of the frame Is is similar in my mind to the the ping interval. I was talking about right? It's so so so their scenario their scenario is that they um have a lot the lots of events and Sometimes the data for an event would be 300 different fields And of course, it's terrible to go and translate them all if they're not all change change that much so, um, they would only transfer the delta With each event whenever there's a change and then every 10 seconds they would go and force One full event to be sent so that if you if the subscriber comes late into the stream that eventually they're going to get all the data It's like it's like it's so it's like an impact in impact where you are getting just arbitrary blocks of Stuff that you can't deal with until you get a key frame that allows it to go sync up to the entire stream and know what's going on right Okay, let's go and go to the queue. Scott you're up first. I think Yeah, so I have some context on what you're talking about dug But I think the disconnect might be that the subscription api is intended to be subscribing to event producers that are already producing events And in in like the case of k-native you would there already exists several ping sources at several set intervals And what you're doing is selecting the correct source with the the right shape of payload And you're configuring the either the trigger or the subscription object Not the source All right, you don't get to change the producer you'd get to change the subscription And in that case subscription config where you say like I would like these extra headers that would be like The equivalent of like our ce overrides If you know if it was supported in subscriptions and triggers right right because you want to you want to find out which of the Like why are you getting these events and maybe there's some decoration that can happen for that particular request to subscribe to already existing event sources Not produce an event source because of a subscription which is kind of backwards So Scott help me Net net net net this out for me. Are you suggesting that subscription config is the equivalent of the ce override? It is the equivalent of that if it was supported in our subscriptions But we don't have the equivalent of this it would I think in the the equivalent in kna it would be a subscription that is linked to a function that decorates And then passes to the subscriber that you've specified So so with the current model that we have Documented where where do you think someone would put either the github api key or the The cron schedule for the ping source you you do not In both cases yes Uh, if if you're talking about knative So that's interesting because because I could see an argument that says The the pink source is just weird and that doesn't fall into this model I don't I don't agree with it, but I can understand that argument To say I can't pass in the api key for github that seems like we're broken Well, but because you're talking to a delegate and the delegate needs to be created. I think If we if we've removed knative from this picture and we were just talking to Github Then I think you would use the subscription config to pass in all the api keys and stuff It I mean like so this is where like knative becomes a little fuzzy because Ping source is a creation of a thing A github source is really a subscription to the upstream github api Right, so let's ignore the ping source for a minute and focus on github Because I feel like you said two things there And the github is good In the github case, I would expect that to be translated so So there's some service that's exposing the discovery api on the knative cluster that translates into Maybe the the simple case would be a github source A new channel for you And a subscription You're using knative terms. I'd rather leave knative out of it then Right, if I was talking directly to github and I wanted just to subscribe And github requires that I pass in an api key I think you said you agree that it would be passed in under this subscription config block Yes, but it's not always one to one on creating event sources What you're really doing is delegating up to some upper stream service and doing Trying to implement the subscription api for them Okay Sounds like an implantation detail If if the net of it is you agree that in the github case the the the token appears as a subscription config Right, then we just need to figure out where the subscription config field appears in the actual subscription object It gets more complicated because the discovery api could expose subscribing to a github Webhook, but it could also expose the ones that are created already for you that are available because we we proxy all of the existing webhooks at the moment So if you look at that you you would see several instances of Github sources that have been configured and then maybe this generic one that helps you Make all the the mechanics of trying to get those events to you You've asked me, right? I don't know In the one case if the source already exists you don't need to provide the key If you're a trusted no No, leave leave came out of out of this because I feel like you're you're mixing up Setting up subscription meaning talking to the event producer itself You're mixing that up with the idea of a k-native specific thing that says oh, you're already getting events into the system You just want to get them routed to another service And I think this is exactly why I've always pushed back on k-native is It doesn't transparently look like github. It's always a k-native thing. And so in that case The discovery api could expose a straight github Subscription api, which would take a token and then there's these k-native github things that don't take a token because they're already created And that's fine. I the the work we're talking about here I think is the former which is we are just talking about how to subscribe to github directly not to some Some github. I'm sorry some some k-native implementation choice that may or may not expose different a you know set up configuration parameters I think we I think we're focusing just on how do you talk to how do you subscribe to github period? Okay. Yeah, and then in that case, I think The subscription config would include things like What tokens are required? Right And so then I would go back to clemen say okay if if we agree that that is a valid scenario Right where the the person doing the subscribe to github wants to pass in or needs to pass in a token And that appears as a subscription config thingy from the discovery endpoint Where does that appear in the subscribe itself? And clemen while you think about that remit your hands up yeah, just When I hear you talking about the what the subscription config is and Like basically that's going to define the object that you send when you try to create the subscription for what I understand Isn't like right now it seems a bit limited like Don't don't we should just say the subscription config is just like your g-sense tina That define what you can pass as a config. So if you want to pass like complex objects you can And then basically it's up to the subscription endpoint to define what you need to pass and then it's you know like Super flexible. So when we implement we we may be refine it, but To keep it open for now because I have the feeling that We create limitation in the spec it You're you're a little hard to hear, but I think I think you're I think you're saying the same thing I am I think in the sense that this is just a set of values that the subscription Managers expecting from the subscriber And it's it's almost just a random bag of stuff sorry, yeah Again my volume. I really need to fix that that's my mic Yeah, the I was just saying that basically we should in if we want to keep it open We should just put a g-sense schema as subscription config that describe how Like what type of object you need to pass to when you subscribe And then the config needs to match the subscription config schema But then we keep it open and we don't Because right now it's kind of limited because it's a map for what I understand Go ahead Clemens. Are you gonna say something in there? Yeah So I understand I I'm trying to I'm worried about Over complexity making it overly complex at that point so So putting an extra schema there Or creating creating complex complex objects in that place Seems to be A little much for my taste But for me like It's really dependent on the people who do the implementation. So I would agree with you that the best The best is to keep it simple but Yeah, the So how much I think the question here is really how much of Flexibility and you know genericness do we want at this point at this place? And how much do we want to how much do we want to really want to go and specify quickly? So there's one thing there's so here's here's one piece that is that that might be contentious in terms of Of whether you want to go and bolt this down as a as a first-class thing but which would probably be helpful and Would probably be something that most people will use and that is Where would we put a refresh token? Or where would we declare that we want to have a refresh? So a free fresh token and an OAuth authorization sds Because ultimately we will have to have one and we will have to have that in this game And That's a parameter that we have to go and and declare We will have to go and and have a way to pass a refresh token in the respective URL of the OAuth Sds which can go and and trade that refresh token for an access token. We have to go and pass that somewhere but then the question is Do we Do we want to go and pass this in in these subscription country parameters? Which where they would go right now because they are not protocol dependent And they can be they can be used with with multiple protocols and they would be mapping to different constructs in the protocols Or do we say no, no, no, we're going to go and make that the first-class thing because my inclination is You would have to go and say you would have to go and say in the in the discovery spec here You would have to go and say no, this is an OAuth thing and and by the way, this is an OAuth thing where you have to go and You have an SDS endpoint where you have to go and trade with your refresh token And that should probably be in there and then there needs to be some URL that you have to go to to go and obtain the refresh token that you can then go and configure with your with your with your subscription So that's so that's one of one of the mechanisms that the mechanism I can and can now think about think about that Would probably go into the subscription config if we didn't care And if we wanted to make that everybody's individual problem But then it is a mechanism that is probably so common that we want to go in first-class it And then and then the question is in a how much how much is left to go into that subscription config bucket But I think it became really Even if I do agree that it might be like the common case for me as As a spec we need to lay it open And it's easier to say like for now and maybe like a new version will basically start adding those kind of constraints but Yeah, I would I would just see it as like a Easier to make it open and then maybe close some stuff down later And the nice thing with the JSON schema is then if you want to do to build a UI on top of it Basically when you do the discovery you can generate more easily as we say the form based on The json schema because it's a standard While right now in the type we have to define all the types and So, yeah, well, but that's what It feels to me. Maybe we need to separate out the discussion here. So remi I feel like you're bringing up the point of what we have here is too simplistic Maybe a simple type isn't sufficient and we need to allow for something more expressive And I think that's a valid discussion to have but I feel I still think the high order bit here is something that Clemens was pushing back on which is do we need this thing at all? And I I'm not sure where Clemens your head is at because at one point you said we don't need it But now based upon everything else you've said, I'm starting to think that maybe you're convinced that we actually do maybe want it You're just not quite 100% there yet. I mean, I I think this is I think this is something where you would really You would really modify the behavior of the subscription per se Well, you want to go and outfit that with particular behavior And it's something that is specific to Not the producer but really the subscription endpoints as a as a configuration item that you can go and provide Well, I view it as it could be either one and that's implementation detail Right because the configuration knobs here that I think that you could look at them as strictly as modifying the configuration manager I'm sorry subscription manager or you could look at them as modifying the producer itself But from the end user's perspective, I don't think it matters to them All they know is I'm giving this flag and I and I can set it and magic happens behind the scenes Right What if we take a page from cloud events And make this a url for a schema registry Instead of trying to put put kind of like the half settings here Just like the schema for the data payload in cloud events. We say the subscription has a schema It's over here if you would like to look at it I'm just helping you find that host and it's Open api endpoint or whatever it is And then you and then you Okay, so that payload Or so that schema object that you define there then Is that going to get posted with This the subscription request It's well actually I have a hierarchy. Is it the entire subscription request or just a subset of it? I think it's a helper pointer to the let's say the Subscription api has an open api document This would be the way to expose for this subscriber It says if you would like to understand how to hit this rest endpoint or whatever it is Here's my open api document that you can go look at so you can actually make it programmatic It has it has one Assuming it has one Yeah, I mean the subscription endpoint. We have a description api. It has an open api definition in our repo And but I'm saying that we could use a url here Or we change what the definition of subscription config means and one of those one of the known keys is Open api or json json schema or something and then it points to a url that you can go next look up That is served by the description api There is a subscription api so this way you know What you have to put inside correct that's So so I have for I have for the subscription object that you go and create when you create a subscription I have An id I have a protocol a protocol settings have a sync and have filters So the sync is the url that you go to the protocol settings configures any more detail What the protocol choice is I have the idea and have the filter so bait so I think what what Can you scroll down dog in what you added there? Yeah Try to sync and that's the job. That's the config Added here, right? Yeah, this is new. I think everything else is Except for the singular here Most yeah, well I put dialect inside there. But yeah, most of this is is per the spec this stuff right here is new And we're running a little low on time just so yeah, you can wrap this up Well, not finish it, but at least have last comment. I should say I think I'm Yeah, I think what you're doing there is is so with this scenario with the scenario that I um With this configure configure the the subscriber scenario with your key and key key frames, etc I think that's a valid one and I think the solution that you have here is also not terrible I'll take not terrible Well, tell you what obviously we don't want to rush into a decision Everybody think about this. Maybe we'll talk a little bit more about this on monday. If not, obviously next thursday But we are out of time. I don't people need to leave So anyway, think about this PR is out there. I'm going to make some changes based on what we've said already So keep an eye out for another version. But um, I think that was probably the biggest change was the config thing I think everything else is a minor typo type stuff. Anyway, think about this. Okay All right, and that goes to everybody. I'm not just picking on Clemens there Doug, I would I would pull that change just fix the typo stuff make another pr Yeah, I'll definitely do that. That's a good idea Scott. Okay Um, okay, let's see. Jim. I saw you in chat. So you're there. Josh. Are you there? Josh What about Sanjay? Yep, I'm here. Okay, Anish. Are you there? Yes Yep, and josh, you come off mute you're there. Yes, I'm here Radu, uh, I don't see them online anymore Ujal, I apologize. I'm probably butchering your name. Are you there? A Ujal Oh, and slinky got you. Thank you. Anybody else I missed for a roll call? All right, cool. All right. Thank you everybody. Good lively discussion And we'll talk again at least to some of you on Monday and everybody else next Thursday. Oh Um, this is a check cloud events stk Nothing on the agenda. So anybody want to bring anything up or should we cancel the call? I think we can cancel I have some modification that will be pending, but I prefer to finish our discovery stuff Based on that, I probably have like big pair PR for NGK Okay, cool. In that case, in that case, anybody speak up, we will cancel the stk call All right Cool. On top of the hour. Thank you everybody for joining. Have a good rest of your day. Bye. Bye. Bye.